(CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(no)} spids:[89])] spids: [89] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:WORKDIR) op:Equal rhs:{(work)} spids:[92])] spids: [92] ) (FuncDef name: usage body: (BraceGroup children: [ (C {(echo)} {(DQ ('Usage: conflicts.sh [-s script] [-w workdir]'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [100] ) spids: [96 99] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:COMMAND) op:Equal rhs:{(etcupdate)} spids:[120])] spids: [120] ) (While cond: [(Sentence child:(C {(getopts)} {(DQ ('s:w:'))} {(option)}) terminator:<Op_Semi ';'>)] body: (DoGroup children: [ (Case to_match: {($ VSub_Name '$option')} arms: [ (case_arm pat_list: [{(s)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:COMMAND) op: Equal rhs: {(DQ ('sh ') ($ VSub_Name '$OPTARG'))} spids: [148] ) ] spids: [148] ) ] spids: [144 145 155 16777215] ) (case_arm pat_list: [{(w)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:WORKDIR) op: Equal rhs: {($ VSub_Name '$OPTARG')} spids: [162] ) ] spids: [162] ) ] spids: [158 159 166 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [(C {(echo)}) (C {(usage)})] spids: [169 170 179 16777215] ) ] spids: [137 141 182] ) ] spids: [134 184] ) ) (C {(shift)} { (ArithSubPart anode: (ArithBinary op_id: Arith_Minus left: (ArithVarRef name:OPTIND) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [188 195] ) } ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [(C {(usage)})] spids: [16777215 210] ) ] spids: [16777215 215] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:CONFLICTS) op: Equal rhs: {($ VSub_Name '$WORKDIR') (/conflicts)} spids: [218] ) ] spids: [218] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:OLD) op: Equal rhs: {($ VSub_Name '$WORKDIR') (/old)} spids: [222] ) ] spids: [222] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:NEW) op: Equal rhs: {($ VSub_Name '$WORKDIR') (/current)} spids: [226] ) ] spids: [226] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:TEST) op: Equal rhs: {($ VSub_Name '$WORKDIR') (/test)} spids: [230] ) ] spids: [230] ) (FuncDef name: build_login_conflict body: (BraceGroup children: [ (C {(rm)} {(-rf)} {($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')} {($ VSub_Name '$CONFLICTS')} ) (C {(mkdir)} {(-p)} {($ VSub_Name '$OLD') (/etc)} {($ VSub_Name '$NEW') (/etc)} {($ VSub_Name '$TEST') (/etc)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$OLD') (/etc/login.conf)} spids: [287] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('default:') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') ('\t:passwd_format=md5:\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [292] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$NEW') (/etc/login.conf)} spids: [303] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('default:') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') ('\t:passwd_format=md5:') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') ('\t:copyright=/etc/COPYRIGHT\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [308] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$TEST') (/etc/login.conf)} spids: [322] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('default:') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') ('\t:passwd_format=md5:') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') (' :welcome=/etc/motd:\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [327] ) ] ) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(-r)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[352])] ) ] spids: [248] ) spids: [244 247] ) (FuncDef name: build_aliases_conflict body: (BraceGroup children: [ (C {(rm)} {(-rf)} {($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')} {($ VSub_Name '$CONFLICTS')} ) (C {(mkdir)} {(-p)} {($ VSub_Name '$OLD') (/etc/mail)} {($ VSub_Name '$NEW') (/etc/mail)} {($ VSub_Name '$TEST') (/etc/mail)} ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$OLD') (/etc/mail/aliases)} spids: [406] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('# root: me@my.domain\n') ('\n') ('# Basic system aliases -- these MUST be present\n') ('MAILER-DAEMON: postmaster\n') ('postmaster: root\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [411] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$NEW') (/etc/mail/aliases)} spids: [423] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('# root: me@my.domain\n') ('\n') ('# Basic system aliases -- these MUST be present\n') ('MAILER-DAEMON: postmaster\n') ('postmaster: root\n') ('\n') ('# General redirections for pseudo accounts\n') ('_dhcp: root\n') ('_pflogd: root\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [428] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$TEST') (/etc/mail/aliases)} spids: [444] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('root: someone@example.com\n') ('\n') ('# Basic system aliases -- these MUST be present\n') ('MAILER-DAEMON: postmaster\n') ('postmaster: foo\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [449] ) ] ) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(-r)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[472])] ) ] spids: [368] ) spids: [364 367] ) (FuncDef name: missing body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-e)} {($ VSub_Name '$TEST') (/) ($ VSub_Number '$1')} {(-o)} {(-L)} {($ VSub_Name '$TEST') (/) ($ VSub_Number '$1')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('File ') ($ VSub_Number '$1') (' should be missing'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [521] ) ] spids: [521] ) ] spids: [16777215 509] ) ] spids: [16777215 525] ) ] spids: [485] ) spids: [481 484] ) (FuncDef name: present body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(Lit_Other '[')} {(-e)} {($ VSub_Name '$TEST') (/) ($ VSub_Number '$1')} {(-o)} {(-L)} {($ VSub_Name '$TEST') (/) ($ VSub_Number '$1')} {(Lit_Other ']')} ) ] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('File ') ($ VSub_Number '$1') (' should be present'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [575] ) ] spids: [575] ) ] spids: [16777215 563] ) ] spids: [16777215 579] ) ] spids: [537] ) spids: [533 536] ) (FuncDef name: file body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:contents) op:Equal spids:[602]) (assign_pair lhs:(LhsName name:sum) op:Equal spids:[604]) ] spids: [600] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(Lit_Other '[')} {(-f)} {($ VSub_Name '$TEST') (/) ($ VSub_Number '$1')} {(Lit_Other ']')} ) ] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('File ') ($ VSub_Number '$1') (' should be a regular file'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [635] ) ] spids: [635] ) ] spids: [16777215 623] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-eq)} {(2)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:contents) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(cat)} {($ VSub_Name '$TEST') (/) ($ VSub_Number '$1')}) ] ) left_token: <Left_Backtick '`'> spids: [656 662] ) } spids: [655] ) ] spids: [655] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$contents'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Number '$2'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('File ') ($ VSub_Number '$1') (' has wrong contents'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [695] ) ] spids: [695] ) ] spids: [16777215 683] ) ] spids: [16777215 699] ) ] spids: [639 652] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-eq)} {(3)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sum) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(md5)} {(-q)} {($ VSub_Name '$TEST') (/) ($ VSub_Number '$1')}) ] ) left_token: <Left_Backtick '`'> spids: [719 727] ) } spids: [718] ) ] spids: [718] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$sum'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Number '$3'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('File ') ($ VSub_Number '$1') (' has wrong contents'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [760] ) ] spids: [760] ) ] spids: [16777215 748] ) ] spids: [16777215 764] ) ] spids: [702 715] ) ] spids: [16777215 767] ) ] spids: [597] ) spids: [593 596] ) (FuncDef name: conflict body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:sum) op:Equal spids:[787])] spids: [785] ) (If arms: [ (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(Lit_Other '[')} {(-f)} {($ VSub_Name '$CONFLICTS') (/) ($ VSub_Number '$1')} {(Lit_Other ']')} ) ] negated: T ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('File ') ($ VSub_Number '$1') (' missing conflict'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [818] ) ] spids: [818] ) ] spids: [16777215 806] ) (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-gt)} {(1)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sum) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(md5)} {(-q)} {($ VSub_Name '$CONFLICTS') (/) ($ VSub_Number '$1')} ) ] ) left_token: <Left_Backtick '`'> spids: [839 847] ) } spids: [838] ) ] spids: [838] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$sum'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Number '$2'))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('Conflict ') ($ VSub_Number '$1') (' has wrong contents'))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [880] ) ] spids: [880] ) ] spids: [16777215 868] ) ] spids: [16777215 884] ) ] spids: [822 835] ) ] spids: [16777215 887] ) ] spids: [782] ) spids: [778 781] ) (FuncDef name: resolved body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-f)} {($ VSub_Name '$CONFLICTS') (/) ($ VSub_Number '$1')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('Conflict ') ($ VSub_Number '$1') (' should be resolved'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [927] ) ] spids: [927] ) ] spids: [16777215 915] ) ] spids: [16777215 931] ) ] spids: [899] ) spids: [895 898] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (CommandSubPart command_list: (CommandList children:[(C {(id)} {(-u)})]) left_token: <Left_Backtick '`'> spids: [940 944] ) } {(-ne)} {(0)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('must be root'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] spids: [16777215 953] ) ] spids: [16777215 967] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-r)} {(/etc/etcupdate.conf)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [(C {(echo)} {(DQ ('WARNING: /etc/etcupdate.conf settings may break some tests.'))})] spids: [16777215 981] ) ] spids: [16777215 990] ) (C {(build_login_conflict)}) (C {(echo)} {(DQ ("Checking 'p':"))}) (Pipeline children: [ (C {(echo)} {(SQ <p>)}) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1029])] ) ] negated: F ) (C {(file)} {(/etc/login.conf)} {(DQ )} {(95de92ea3f1bb1bf4f612a8b5908cddd)}) (C {(missing)} {(/etc/login.conf.db)}) (C {(conflict)} {(/etc/login.conf)}) (C {(echo)} {(DQ ("Checking 'mf':"))}) (Pipeline children: [ (C {(echo)} {(SQ <mf>)}) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1080])] ) ] negated: F ) (C {(file)} {(/etc/login.conf)} {(DQ )} {(95de92ea3f1bb1bf4f612a8b5908cddd)}) (C {(missing)} {(/etc/login.conf.db)}) (C {(resolved)} {(/etc/login.conf)}) (C {(build_login_conflict)}) (C {(echo)} {(DQ ("Checking 'tf':"))}) (Pipeline children: [ (C {(echo)} {(SQ <tf>)}) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1134])] ) ] negated: F ) (C {(file)} {(/etc/login.conf)} {(DQ )} {(7774a0f9a3a372c7c109c32fd31c4b6b)}) (C {(file)} {(/etc/login.conf.db)}) (C {(resolved)} {(/etc/login.conf)}) (C {(build_login_conflict)}) (C {(echo)} {(DQ ("Checking 'r':"))}) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$CONFLICTS') (/etc/login.conf)} spids: [1176] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('default:') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') ('\t:passwd_format=md5:') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') ('\t:copyright=/etc/COPYRIGHT') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) ('\n') (' :welcome=/etc/motd:\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [1181] ) ] ) (Pipeline children: [ (C {(echo)} {(SQ <r>)}) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[1216])] ) ] negated: F ) (C {(file)} {(/etc/login.conf)} {(DQ )} {(966e25984b9b63da8eaac8479dcb0d4d)}) (C {(file)} {(/etc/login.conf.db)}) (C {(resolved)} {(/etc/login.conf)}) (C {(build_aliases_conflict)}) (C {(echo)} {(DQ ("Checking newalias warning for 'p'")) (Lit_Other ':')}) (Pipeline children: [ (C {(echo)} {(SQ <p>)}) (C {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ) (C {(grep)} {(-q)} {(newalias)}) ] negated: F ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-eq)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('+ Extra warning'))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(yes)} spids:[1302])] spids: [1302] ) ] spids: [16777215 1292] ) ] spids: [16777215 1305] ) (C {(echo)} {(DQ ("Checking newalias warning for 'mf'")) (Lit_Other ':')}) (Pipeline children: [ (C {(echo)} {(SQ <mf>)}) (C {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ) (C {(grep)} {(-q)} {(newalias)}) ] negated: F ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-eq)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('+ Extra warning'))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(yes)} spids:[1365])] spids: [1365] ) ] spids: [16777215 1355] ) ] spids: [16777215 1368] ) (C {(build_aliases_conflict)}) (C {(echo)} {(DQ ("Checking newalias warning for 'tf'")) (Lit_Other ':')}) (Pipeline children: [ (C {(echo)} {(SQ <tf>)}) (C {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ) (C {(grep)} {(-q)} {(newalias)}) ] negated: F ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('- Missing warning'))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(yes)} spids:[1434])] spids: [1434] ) ] spids: [16777215 1424] ) ] spids: [16777215 1437] ) (C {(build_aliases_conflict)}) (C {(cp)} {($ VSub_Name '$TEST') (/etc/mail/aliases)} {($ VSub_Name '$CONFLICTS') (/etc/mail/aliases)} ) (Pipeline children: [ (C {(echo)} {(SQ <r>)}) (C {($ VSub_Name '$COMMAND')} {(resolve)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ) (C {(grep)} {(-q)} {(newalias)}) ] negated: F ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')}) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('- Missing warning'))}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(yes)} spids:[1501])] spids: [1501] ) ] spids: [16777215 1491] ) ] spids: [16777215 1504] ) (C {(Lit_Other '[')} {(DQ (${ VSub_Name FAILED))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')}) ] )