(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: fbsdid.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: store_id body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:file) op:Equal spids:[250])] spids: [248] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:file) op: Equal rhs: {($ VSub_Number '$1')} spids: [254] ) ] spids: [254] ) (C {(shift)}) (SimpleCommand words: [{(echo)} {(-n)} {(SQ <'# $FreeBSD'>)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$file')} spids: [270] ) ] ) (SimpleCommand words: [{(echo)} {(-n)} {(DQ ($ VSub_At '$@'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$file')} spids: [283] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <'$'>)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$file')} spids: [294] ) ] ) ] spids: [245] ) spids: [241 244] ) (FuncDef name: build_trees body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:i) op:Equal spids:[316])] spids: [314] ) (C {(rm)} {(-rf)} {($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')} {($ VSub_Name '$CONFLICTS')} ) (C {(mkdir)} {(-p)} {($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')}) (C {(store_id)} {($ VSub_Name '$OLD') (/remove)}) (C {(store_id)} {($ VSub_Name '$TEST') (/remove)} {(DQ (': head/remove 12345 jhb '))}) (C {(store_id)} {($ VSub_Name '$OLD') (/old)} {(DQ (': src/old,v 1.1 jhb Exp '))}) (C {(store_id)} {($ VSub_Name '$NEW') (/old)} {(DQ (': head/old 12345 jhb '))}) (C {(store_id)} {($ VSub_Name '$TEST') (/old)} {(DQ (': head/old 12000 jhb '))}) (ForEach iter_name: i iter_words: [{($ VSub_Name '$OLD')} {($ VSub_Name '$TEST')}] do_arg_iter: F body: (DoGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$i') (/old)} spids: [424] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('an old file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [429] ) ] ) ] spids: [419 436] ) spids: [413 417] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$NEW') (/old)} spids: [441] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('a new file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [446] ) ] ) (C {(store_id)} {($ VSub_Name '$OLD') (/already)} {(DQ (': src/already,v 1.1 jhb Exp '))}) (C {(store_id)} {($ VSub_Name '$NEW') (/already)} {(DQ (': head/already 12345 jhb '))}) (C {(store_id)} {($ VSub_Name '$TEST') (/already)} {(DQ (': src/already,v 1.2 jhb Exp '))}) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$OLD') (/already)} spids: [494] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('another old file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [499] ) ] ) (ForEach iter_name: i iter_words: [{($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')}] do_arg_iter: F body: (DoGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$i') (/already)} spids: [522] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('another new file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [527] ) ] ) ] spids: [517 534] ) spids: [511 515] ) (C {(store_id)} {($ VSub_Name '$NEW') (/add)} {(DQ (': head/add 12345 jhb '))}) (C {(store_id)} {($ VSub_Name '$TEST') (/add)} {(DQ )}) (C {(store_id)} {($ VSub_Name '$OLD') (/conflict)} {(DQ (': head/conflict 12000 jhb '))}) (C {(store_id)} {($ VSub_Name '$NEW') (/conflict)} {(DQ (': head/conflict 12345 jhb '))}) (C {(store_id)} {($ VSub_Name '$TEST') (/conflict)} {(DQ )}) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$OLD') (/conflict)} spids: [609] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('this is the old file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [614] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$NEW') (/conflict)} spids: [623] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('this is the new file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [628] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$TEST') (/conflict)} spids: [637] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('this is the local file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [642] ) ] ) (ForEach iter_name: i iter_words: [{($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')}] do_arg_iter: F body: (DoGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$i') (/local)} spids: [684] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('# Some leading text\n') ('#\n'))} do_expansion: True here_end: EOF was_filled: T spids: [689] ) ] ) ] spids: [679 696] ) spids: [671 677] ) (C {(store_id)} {($ VSub_Name '$OLD') (/local)} {(DQ (': head/local 12000 jhb '))}) (C {(store_id)} {($ VSub_Name '$NEW') (/local)} {(DQ (': head/local 12345 jhb '))}) (C {(store_id)} {($ VSub_Name '$TEST') (/local)} {(DQ (': src/local,v 1.5 jhb Exp '))}) (ForEach iter_name: i iter_words: [{($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')}] do_arg_iter: F body: (DoGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$i') (/local)} spids: [749] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('this is a file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [754] ) ] ) ] spids: [744 761] ) spids: [736 742] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$TEST') (/local)} spids: [767] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('these are some local mods to the file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [772] ) ] ) (C {(store_id)} {($ VSub_Name '$OLD') (/local-already)} {(DQ (': head/local 12000 jhb '))}) (ForEach iter_name: i iter_words: [{($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')}] do_arg_iter: F body: (DoGroup children: [ (C {(store_id)} {($ VSub_Name '$i') (/local-already)} {(DQ (': head/local 12345 jhb '))} ) ] spids: [821 834] ) spids: [815 819] ) (ForEach iter_name: i iter_words: [{($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')} {($ VSub_Name '$TEST')}] do_arg_iter: F body: (DoGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$i') (/local-already)} spids: [856] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('this is a file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [861] ) ] ) ] spids: [851 868] ) spids: [843 849] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$TEST') (/local-already)} spids: [874] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('these are some local mods to the file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [879] ) ] ) (C {(store_id)} {($ VSub_Name '$OLD') (/local-remove)} {(DQ (': head/local-remove 12000 jhb '))} ) (C {(store_id)} {($ VSub_Name '$NEW') (/local-remove)} {(DQ (': head/local-remove 12345 jhb '))} ) (ForEach iter_name: i iter_words: [{($ VSub_Name '$OLD')} {($ VSub_Name '$NEW')}] do_arg_iter: F body: (DoGroup children: [ (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$i') (/local-remove)} spids: [931] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('\n') ('this is a file\n'))} do_expansion: True here_end: EOF was_filled: T spids: [936] ) ] ) ] spids: [926 943] ) spids: [920 924] ) ] spids: [311] ) spids: [307 310] ) (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: [991] ) ] spids: [991] ) ] spids: [16777215 979] ) ] spids: [16777215 995] ) ] spids: [955] ) spids: [951 954] ) (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: [1045] ) ] spids: [1045] ) ] spids: [16777215 1033] ) ] spids: [16777215 1049] ) ] spids: [1007] ) spids: [1003 1006] ) (FuncDef name: file body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs:(LhsName name:contents) op:Equal spids:[1072]) (assign_pair lhs:(LhsName name:sum) op:Equal spids:[1074]) ] spids: [1070] ) (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: [1105] ) ] spids: [1105] ) ] spids: [16777215 1093] ) (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: [1126 1132] ) } spids: [1125] ) ] spids: [1125] ) (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: [1165] ) ] spids: [1165] ) ] spids: [16777215 1153] ) ] spids: [16777215 1169] ) ] spids: [1109 1122] ) (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: [1189 1197] ) } spids: [1188] ) ] spids: [1188] ) (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: [1230] ) ] spids: [1230] ) ] spids: [16777215 1218] ) ] spids: [16777215 1234] ) ] spids: [1172 1185] ) ] spids: [16777215 1237] ) ] spids: [1067] ) spids: [1063 1066] ) (FuncDef name: conflict body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:sum) op:Equal spids:[1257])] spids: [1255] ) (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: [1288] ) ] spids: [1288] ) ] spids: [16777215 1276] ) (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: [1309 1317] ) } spids: [1308] ) ] spids: [1308] ) (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: [1350] ) ] spids: [1350] ) ] spids: [16777215 1338] ) ] spids: [16777215 1354] ) ] spids: [1292 1305] ) ] spids: [16777215 1357] ) ] spids: [1252] ) spids: [1248 1251] ) (FuncDef name: noconflict 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 ('File ') ($ VSub_Number '$1') (' should not have a conflict'))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAILED) op: Equal rhs: {(yes)} spids: [1397] ) ] spids: [1397] ) ] spids: [16777215 1385] ) ] spids: [16777215 1401] ) ] spids: [1369] ) spids: [1365 1368] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (CommandSubPart command_list: (CommandList children:[(C {(id)} {(-u)})]) left_token: <Left_Backtick '`'> spids: [1410 1414] ) } {(-ne)} {(0)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('must be root'))}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] spids: [16777215 1423] ) ] spids: [16777215 1437] ) (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 1451] ) ] spids: [16777215 1460] ) (C {(build_trees)}) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(-r)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$WORKDIR') (/test.out)} spids: [1482] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$WORKDIR') (/correct.out)} spids: [1490] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ (' C /already\n') (' C /conflict\n') (' C /local\n') (' M /local-already\n') (' C /old\n') (' C /add\n') ('Warnings:\n') (' Modified regular file remains: /remove\n') (' Removed file changed: /local-remove\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [1495] ) ] ) (C {(echo)} {(DQ ('Differences for regular:'))}) (AndOr ops: [Op_DPipe] children: [ (C {(diff)} {(-u)} {(-L)} {(DQ (correct))} {($ VSub_Name '$WORKDIR') (/correct.out)} {(-L)} {(DQ (test))} {($ VSub_Name '$WORKDIR') (/test.out)} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(yes)} spids:[1541])] spids: [1541] ) ] ) (C {(file)} {(/remove)} {(DQ )} {(1bb4776213af107077be78fead8a351c)}) (C {(file)} {(/old)} {(DQ )} {(2f799a7addc4132563ef9b44adc66157)}) (C {(conflict)} {(/old)} {(8441be64a1540f2ff584015279682425)}) (C {(file)} {(/already)} {(DQ )} {(aa53bd506f65d01d766e7ba028585e1d)}) (C {(conflict)} {(/already)} {(f44105abb1fa3293e95c5d77e428d418)}) (C {(file)} {(/add)} {(DQ )} {(1dc8c617e541d1fd1b4c70212f71d8ae)}) (C {(conflict)} {(/add)} {(f99081e0da9a07f3cfebb430c0414941)}) (C {(file)} {(/conflict)} {(DQ )} {(dc27978df125b0daeb7d9b93265f03fd)}) (C {(conflict)} {(/conflict)} {(868452f666fea1c60ffb918ad9ad9607)}) (C {(file)} {(/local)} {(DQ )} {(aa33e614b5e749449f230e2a2b0072eb)}) (C {(conflict)} {(/local)} {(3df93e64043c8e348fc625b93ea220f4)}) (C {(file)} {(/local-already)} {(DQ )} {(0298b958a603049f45ae6a109c4f7fea)}) (C {(missing)} {(/local-remove)}) (C {(build_trees)}) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(-rF)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$WORKDIR') (/testF.out)} spids: [1662] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$WORKDIR') (/correctF.out)} spids: [1670] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ (' D /remove\n') (' U /already\n') (' C /conflict\n') (' M /local\n') (' U /old\n') (' U /add\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [1675] ) ] ) (C {(echo)} {(DQ ('Differences for -F:'))}) (AndOr ops: [Op_DPipe] children: [ (C {(diff)} {(-u)} {(-L)} {(DQ (correct))} {($ VSub_Name '$WORKDIR') (/correctF.out)} {(-L)} {(DQ (test))} {($ VSub_Name '$WORKDIR') (/testF.out)} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(yes)} spids:[1718])] spids: [1718] ) ] ) (C {(missing)} {(/remove)}) (C {(file)} {(/old)} {(DQ )} {(6a9f34f109d94406a4de3bc5d72de259)}) (C {(noconflict)} {(/old)}) (C {(file)} {(/already)} {(DQ )} {(21f4eca3aacc702c49878c8da7afd3d0)}) (C {(noconflict)} {(/already)}) (C {(file)} {(/add)} {(DQ )} {(0208bd647111fedf6318511712ab9e97)}) (C {(noconflict)} {(/add)}) (C {(file)} {(/conflict)} {(DQ )} {(dc27978df125b0daeb7d9b93265f03fd)}) (C {(conflict)} {(/conflict)} {(868452f666fea1c60ffb918ad9ad9607)}) (C {(file)} {(/local)} {(DQ )} {(3ed5a35e380c8a93fb5f599d4c052713)}) (C {(file)} {(/local-already)} {(DQ )} {(0298b958a603049f45ae6a109c4f7fea)}) (C {(missing)} {(/local-remove)}) (C {(build_trees)}) (SimpleCommand words: [ {($ VSub_Name '$COMMAND')} {(-A)} {(SQ <'/*'>)} {(-rF)} {(-d)} {($ VSub_Name '$WORKDIR')} {(-D)} {($ VSub_Name '$TEST')} ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$WORKDIR') (/testAF.out)} spids: [1831] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$WORKDIR') (/correctAF.out)} spids: [1839] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ (' D /remove\n') (' U /already\n') (' U /conflict\n') (' U /local\n') (' U /local-already\n') (' A /local-remove\n') (' U /old\n') (' U /add\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [1844] ) ] ) (C {(echo)} {(DQ ("Differences for -A '/*' -F:"))}) (AndOr ops: [Op_DPipe] children: [ (C {(diff)} {(-u)} {(-L)} {(DQ (correct))} {($ VSub_Name '$WORKDIR') (/correctAF.out)} {(-L)} {(DQ (test))} {($ VSub_Name '$WORKDIR') (/testAF.out)} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:FAILED) op:Equal rhs:{(yes)} spids:[1889])] spids: [1889] ) ] ) (C {(missing)} {(/remove)}) (C {(file)} {(/old)} {(DQ )} {(6a9f34f109d94406a4de3bc5d72de259)}) (C {(noconflict)} {(/old)}) (C {(file)} {(/already)} {(DQ )} {(21f4eca3aacc702c49878c8da7afd3d0)}) (C {(noconflict)} {(/already)}) (C {(file)} {(/add)} {(DQ )} {(0208bd647111fedf6318511712ab9e97)}) (C {(noconflict)} {(/add)}) (C {(file)} {(/conflict)} {(DQ )} {(75ee141c4136beaf14e39de92efa84e4)}) (C {(noconflict)} {(/conflict)}) (C {(file)} {(/local)} {(DQ )} {(6a8fc5c2755b7a49015089f5e1dbe092)}) (C {(file)} {(/local-already)} {(DQ )} {(49045f8b51542dd634655301cd296f66)}) (C {(file)} {(/local-remove)} {(DQ )} {(5c38322efed4014797d7127f5c652d9d)}) (C {(Lit_Other '[')} {(DQ (${ VSub_Name FAILED))} {(Lit_Other '=')} {(no)} {(Lit_Other ']')}) ] )