(command.CommandList children: [ (command.ShAssignment left: <Id.Lit_VarLike 'SRCDIR='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'SRCDIR='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'SRCDIR='> name:SRCDIR) op: assign_op.Equal rhs: { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <atf_get_srcdir> more_env: [] words: [{<atf_get_srcdir>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ) ] redirects: [] ) (command.ShFunction name_tok: <check> name: check body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Sentence child: (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'tc='> (${ Id.VSub_Number 1)}] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.Simple blame_tok: <shift> more_env: [] words: [{<shift>}] redirects: [] do_fork: T ) (command.Sentence child: (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'xo_fmt='> (${ Id.VSub_Number 1)}] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.Simple blame_tok: <shift> more_env: [] words: [{<shift>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <local> more_env: [] words: [ {<local>} {<Id.Lit_VarLike 'err_file='> (DQ (${ Id.VSub_Name SRCDIR) <'/'> (${ Id.VSub_Name tc) (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name xo_fmt> var_name: xo_fmt suffix_op: (suffix_op.Unary op: <Id.VTest_ColonPlus _> arg_word: {<.> (${ Id.VSub_Name xo_fmt)} ) right: <Id.Right_DollarBrace '}'> ) <.err> ) } ] redirects: [] do_fork: T ) (command.AndOr children: [ (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {<-s>} {(DQ (${ Id.VSub_Name err_file))} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'err_flag='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'err_flag='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'err_flag='> name:err_flag) op: assign_op.Equal rhs: {(DQ <'-e file:'> (${ Id.VSub_Name err_file))} ) ] redirects: [] ) ] ops: [<Id.Op_DAmp _>] ) (command.Simple blame_tok: <local> more_env: [] words: [ {<local>} {<Id.Lit_VarLike 'out_file='> (DQ (${ Id.VSub_Name SRCDIR) <'/'> (${ Id.VSub_Name tc) (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name xo_fmt> var_name: xo_fmt suffix_op: (suffix_op.Unary op: <Id.VTest_ColonPlus _> arg_word: {<.> (${ Id.VSub_Name xo_fmt)} ) right: <Id.Right_DollarBrace '}'> ) <.out> ) } ] redirects: [] do_fork: T ) (command.AndOr children: [ (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {<-s>} {(DQ (${ Id.VSub_Name out_file))} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'out_flag='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'out_flag='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'out_flag='> name:out_flag) op: assign_op.Equal rhs: {(DQ <'-o file:'> (${ Id.VSub_Name out_file))} ) ] redirects: [] ) ] ops: [<Id.Op_DAmp _>] ) (command.If if_kw: <Id.KW_If if> arms: [ (IfArm keyword: <Id.KW_If if> cond: (condition.Shell commands: [ (command.Sentence child: (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName xo_fmt))} {<Id.Lit_Equals '='>} {(DQ <E>)} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libxo_options='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libxo_options='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'libxo_options='> name: libxo_options ) op: assign_op.Equal rhs: {(DQ <' warn,encoder=test'>)} ) ] redirects: [] ) ] spids: [211 228] ) ] else_kw: <Id.KW_Else else> else_action: [ (command.ShAssignment left: <Id.Lit_VarLike 'libxo_options='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'libxo_options='> lhs: (sh_lhs_expr.Name left: <Id.Lit_VarLike 'libxo_options='> name: libxo_options ) op: assign_op.Equal rhs: {(DQ <':W'> (${ Id.VSub_Name xo_fmt))} ) ] redirects: [] ) ] fi_kw: <Id.KW_Fi fi> redirects: [] ) (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<-e>} {<file> <Id.Lit_Colon ':'> (${ Id.VSub_Name err_file)} {<-o>} {<file> <Id.Lit_Colon ':'> (${ Id.VSub_Name out_file)} {<env>} {<Id.Lit_VarLike 'LC_ALL='> <en_US.UTF-8>} {<Id.Lit_VarLike 'TZ='> (DQ <EST>)} {(DQ (${ Id.VSub_Name SRCDIR) <'/'> (${ Id.VSub_Name tc))} {<--libxo> (${ Id.VSub_Name libxo_options)} ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <add_testcase> name: add_testcase body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'tc='> (${ Id.VSub_Number 1)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<tc_escaped>}] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'oldIFS='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'oldIFS='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'oldIFS='> name:oldIFS) op: assign_op.Equal rhs: {($ Id.VSub_DollarName IFS)} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'IFS='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'IFS='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'IFS='> name:IFS) op: assign_op.Equal rhs: {(SQ <.>)} ) ] redirects: [] ) (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-->} {($ Id.VSub_DollarName tc)}] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'tc_script='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'tc_script='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'tc_script='> name:tc_script) op: assign_op.Equal rhs: {(${ Id.VSub_Number 1)} ) ] redirects: [] ) (command.AndOr children: [ (command.Simple blame_tok: <Id.Lit_LBracket '['> more_env: [] words: [ {<Id.Lit_LBracket '['>} {($ Id.VSub_Pound '#')} {<-eq>} {<3>} {<Id.Lit_RBracket ']'>} ] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'xo_fmt='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'xo_fmt='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'xo_fmt='> name:xo_fmt) op: assign_op.Equal rhs: {(${ Id.VSub_Number 2)} ) ] redirects: [] ) ] ops: [<Id.Op_DAmp _>] ) (command.ShAssignment left: <Id.Lit_VarLike 'IFS='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'IFS='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'IFS='> name:IFS) op: assign_op.Equal rhs: {($ Id.VSub_DollarName oldIFS)} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'tc_escaped='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'tc_escaped='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'tc_escaped='> name:tc_escaped) op: assign_op.Equal rhs: { (DQ (${ Id.VSub_Name tc_script) (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name xo_fmt> var_name: xo_fmt suffix_op: (suffix_op.Unary op: <Id.VTest_ColonPlus _> arg_word: {<__> (${ Id.VSub_Name xo_fmt)} ) right: <Id.Right_DollarBrace '}'> ) ) } ) ] redirects: [] ) (command.Simple blame_tok: <atf_test_case> more_env: [] words: [{<atf_test_case>} {(${ Id.VSub_Name tc_escaped)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <eval> more_env: [] words: [ {<eval>} { (DQ (${ Id.VSub_Name tc_escaped) <'_body() { check '> (${ Id.VSub_Name tc_script) <' '> (${ Id.VSub_Name xo_fmt) <'; }'> ) } ] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {(${ Id.VSub_Name tc_escaped)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <atf_init_test_cases> name: atf_init_test_cases body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.ForEach keyword: <Id.KW_For for> iter_names: [path] iterable: (for_iter.Words words: [ { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <find> more_env: [] words: [ {<find>} {<-Es>} {(DQ (${ Id.VSub_Name SRCDIR))} {<-name>} {(SQ <'*.out'>)} ] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ] ) semi_tok: <Id.Op_Semi _> body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <add_testcase> more_env: [] words: [ {<add_testcase>} { (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name path> var_name: path suffix_op: (suffix_op.Unary op: <Id.VOp1_DPound '##'> arg_word: {<Id.Lit_Other '*'> <Id.Lit_Slash '/'>} ) right: <Id.Right_DollarBrace '}'> ) } ] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) ] )