(CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:prog) op:Equal rhs:{(SQ <'env printf'>)} spids:[44])] spids: [44] ) (Sentence child: (C {(.)} { (DQ (BracedVarSub token: <VSub_Name srcdir> suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)}) spids: [53 57] ) (/tests/init.sh) ) } ) terminator: <Op_Semi ';'> ) (C {(path_prepend_)} {(./src)}) (C {(print_ver_)} {(printf)}) (C {(getlimits_)}) (AndOr ops: [Op_DAmp] children: [ (C {(test)} { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {($ VSub_Name '$prog')} { (DQ (Lit_Other '\\') (x1b) (Lit_Other '\\') (n) (Lit_Other '\\') (33) (Lit_Other '\\') (n) (Lit_Other '\\') (e) (Lit_Other '\\') (n) ) } ) (C {(uniq)} {(-u)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [80 103] ) } ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[107])] spids: [107] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(--)} {(SQ <'foo\\n'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[125])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[131])] spids: [131] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: 16777215 body: {('foo\n')} do_expansion: False here_end: EOF was_filled: T spids: [136] ) (Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[140]) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[153])] spids: [153] ) ] ) (C {(rm)} {(-f)} {(out)} {(exp)}) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'1 %*sy\\n'>)} {(-3)} {(x)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[178])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[184])] spids: [184] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'2 \\x'>)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [202] ) (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[205]) ] more_env: [(env_pair name:POSIXLY_CORRECT val:{(1)} spids:[193])] ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[212])] spids: [212] ) ] spids: [16777215 209] ) ] else_action: [ (SimpleCommand words: [{(echo)} {(SQ <'2 failed, as expected'>)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[224])] ) ] spids: [215 228] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'3 \\x40\\n'>)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[240])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[246])] spids: [246] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'4 \\x40\\n'>)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[259])] more_env: [(env_pair name:POSIXLY_CORRECT val:{(1)} spids:[249])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[265])] spids: [265] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'5 % +d\\n'>)} {(234)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[276])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[282])] spids: [282] ) ] ) (Pipeline children: [ (C {($ VSub_Name '$prog')} {(SQ <'6 \\41\\n'>)}) (SimpleCommand words: [{(tr)} {(SQ <'\\41'>)} {(SQ <'!'>)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[313])] ) ] negated: F ) (Pipeline children: [ (C {($ VSub_Name '$prog')} {(SQ <'7 \\2y \\02y \\002y \\0002y\\n'>)}) (SimpleCommand words: [{(tr)} {(SQ <'\\0\\2'>)} {(SQ <'*='>)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[344])] ) ] negated: F ) (Pipeline children: [ (C {($ VSub_Name '$prog')} {(SQ <'8 %b %b %b %b\\n'>)} {(SQ <'\\1y'>)} {(SQ <'\\01y'>)} {(SQ <'\\001y'>)} {(SQ <'\\0001y'>)} ) (SimpleCommand words: [{(tr)} {(SQ <'\\1'>)} {(Lit_Other '=')}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[379])] ) ] negated: F ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'9 %*dx\\n'>)} {(-2)} {(0)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[394])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[399])] spids: [399] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'10 %.*dx\\n'>)} {($ VSub_Name '$INT_UFLOW')} {(0)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[413])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[418])] spids: [418] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%.*dx\\n'>)} {($ VSub_Name '$INT_OFLOW')} {(0)}] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[431]) (Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[434]) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[440])] spids: [440] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'11 %*c\\n'>)} {(2)} {(x)}] redirects: [(Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[454])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[459])] spids: [459] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%#d\\n'>)} {(0)}] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[471]) (Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[474]) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[480])] spids: [480] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%0s\\n'>)} {(0)}] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[492]) (Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[495]) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[501])] spids: [501] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%.9c\\n'>)} {(0)}] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[513]) (Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[516]) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[522])] spids: [522] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [ {($ VSub_Name '$prog')} {(SQ <'%'>) (EscapedLiteralPart token:<Lit_EscapedChar "\\'">) (SQ <'s\\n'>)} {(0)} ] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[538]) (Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[541]) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[547])] spids: [547] ) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: 16777215 body: {('1 x y\n') ('2 failed, as expected\n') ('3 @\n') ('4 @\n') ('5 +234\n') ('6 !\n') ('7 =y =y =y *2y\n') ('8 =y =y =y =y\n') ('9 0 x\n') ('10 0x\n') ('11 x\n') } do_expansion: False here_end: EOF was_filled: T spids: [553] ) (Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[557]) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[570])] spids: [570] ) ] ) (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%d\\n'>)} {(SQ <'"a'>)}] redirects: [ (Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[588]) (Redir op_id:Redir_Great fd:2 arg_word:{(err)} spids:[591]) ] ) (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%d\\n'>)} {(SQ <'"a"'>)}] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[607]) (Redir op_id:Redir_DGreat fd:2 arg_word:{(err)} spids:[610]) ] ) (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%d\\n'>)} {(SQ <'"'>)}] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[626]) (Redir op_id:Redir_DGreat fd:2 arg_word:{(err)} spids:[629]) ] ) (SimpleCommand words: [{($ VSub_Name '$prog')} {(SQ <'%d\\n'>)} {(SQ <a>)}] redirects: [ (Redir op_id:Redir_DGreat fd:16777215 arg_word:{(out)} spids:[645]) (Redir op_id:Redir_DGreat fd:2 arg_word:{(err)} spids:[648]) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('97\n') ('97\n') ('0\n') ('0\n'))} do_expansion: True here_end: EOF was_filled: T spids: [657] ) (Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[660]) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(sed)} {(SQ <'s/: Invalid.*/: expected a numeric value/'>)} {(err)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(k)} spids:[687])] ) (C {(mv)} {(k)} {(err)}) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('printf: warning: ') (Right_DoubleQuote '"') (': character(s) following character constant have been ignored\n') ('printf: ') (Right_DoubleQuote '"') (': expected a numeric value\n') ('printf: a: expected a numeric value\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [702] ) (Redir op_id:Redir_Great fd:16777215 arg_word:{(exp_err)} spids:[705]) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[726])] spids: [726] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp_err)} {(err)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[737])] spids: [737] ) ] ) (C {(Exit)} {($ VSub_Name '$fail')}) ] )