(CommandList children: [ (Sentence child: (C {(.)} { (DQ (BracedVarSub token: <VSub_Name srcdir> suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)}) spids: [50 54] ) (/tests/init.sh) ) } ) terminator: <Op_Semi ';'> ) (C {(path_prepend_)} {(./src)}) (C {(print_ver_)} {(rm)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {($ VSub_Name '$abs_top_builddir')} spids: [68] ) ] spids: [68] ) (C {(touch)} {(a)}) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(cp)} {(a)} {(b)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[89])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[94])] spids: [94] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-f)} {(b)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[105])] spids: [105] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(chmod)} {(o-w)} {(.)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[114])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[119])] spids: [119] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(ln)} {(a)} {(c)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[128])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[133])] spids: [133] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(rm)} {(c)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[140])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[145])] spids: [145] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(mkdir)} {(d)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[152])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[157])] spids: [157] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(mv)} {(d)} {(e)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[166])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[171])] spids: [171] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(rmdir)} {(e)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[178])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[183])] spids: [183] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(touch)} {(e)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[190])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[195])] spids: [195] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(sleep)} {(0)}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[202])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[207])] spids: [207] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(DQ ($ VSub_Name '$p') (/src/true))}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[215])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[220])] spids: [220] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(DQ ($ VSub_Name '$p') (/src/printf))} {(SQ )}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[231])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[236])] spids: [236] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(DQ ($ VSub_Name '$p') (/src/test))} {(-w)} {(/dev/stdout)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [260] ) ] ) (SimpleCommand words: [ {(DQ ($ VSub_Name '$p') (/src/test))} {(KW_Bang '!')} {(-w)} {(/dev/stdout)} ] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(-)} spids:[277])] ) ] ) terminator: <Op_Semi ';'> ) ] action: [ (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(DQ ($ VSub_Name '$p') (/src/printf))} {(SQ <foo>)}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 16777215 arg_word: {(-)} spids: [293] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [296] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[301])] spids: [301] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(cp)} {(--verbose)} {(a)} {(b)}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 16777215 arg_word: {(-)} spids: [313] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [316] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[321])] spids: [321] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(rm)} {(-Rf)} {(tmpfile-) (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') } ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[339])] spids: [339] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(mktemp)} {(tmpfile-XXXXXX)}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 16777215 arg_word: {(-)} spids: [347] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [350] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[355])] spids: [355] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(mktemp)} {(tmpfile-XXXXXX)} {(-q)}] redirects: [ (Redir op_id: Redir_GreatAnd fd: 16777215 arg_word: {(-)} spids: [365] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [368] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[373])] spids: [373] ) ] ) (Case to_match: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(tmpfile-) (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') } ) ] ) left_token: <Left_CommandSub '$('> spids: [379 389] ) } arms: [ (case_arm pat_list: [{(SQ <'tmpfile-??????'>)}] spids: [394 396 398 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[403])] spids: [403] ) ] spids: [400 401 406 16777215] ) ] spids: [377 391 408] ) ] spids: [16777215 281] ) ] spids: [16777215 410] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [(C {(test)} {(-w)} {(/dev/full)}) (C {(test)} {(-c)} {(/dev/full)})] ) terminator: <Op_Semi ';'> ) ] action: [ (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(DQ ($ VSub_Name '$p') (/src/printf))} {(SQ <foo>)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/full)} spids: [445] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [448] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[453])] spids: [453] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(cp)} {(--verbose)} {(a)} {(b)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/full)} spids: [465] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [468] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[473])] spids: [473] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(rm)} {(-Rf)} {(tmpdir-) (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') } ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[491])] spids: [491] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(mktemp)} {(-d)} {(tmpdir-XXXXXX)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/full)} spids: [501] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [504] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[509])] spids: [509] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(mktemp)} {(-d)} {(-q)} {(tmpdir-XXXXXX)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/full)} spids: [521] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [524] ) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[529])] spids: [529] ) ] ) (Case to_match: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(tmpfile-) (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') (Lit_Other '?') } ) ] ) left_token: <Left_CommandSub '$('> spids: [535 545] ) } arms: [ (case_arm pat_list: [{(SQ <'tmpfile-??????'>)}] spids: [550 552 554 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[559])] spids: [559] ) ] spids: [556 557 562 16777215] ) ] spids: [533 547 564] ) ] spids: [16777215 433] ) ] spids: [16777215 566] ) (C {(Exit)} {($ VSub_Name '$fail')}) ] )