(command.CommandList children: [ (command.ShFunction name_tok: <bad_interp_len_head> name: bad_interp_len_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Bad interpreter length'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <bad_interp_len_body> name: bad_interp_len_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <1>} {<-e>} {(SQ <'match:No such file or directory'>)} {<-o>} {<empty>} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper bad_interp_len'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <empty_head> name: empty_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Empty file'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <empty_body> name: empty_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <1>} {<-e>} {(SQ <'match:Exec format error'>)} {<-o>} {<empty>} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper empty'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <good_aout_head> name: good_aout_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Good a.out'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <good_aout_body> name: good_aout_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<-e>} {<empty>} {<-o>} {(SQ <'match:succeeded'>)} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper ./good_aout'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <good_script_head> name: good_script_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Good script'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <good_script_body> name: good_script_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<-e>} {<empty>} {<-o>} {(SQ <'match:succeeded'>)} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper good_script'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <non_exist_head> name: non_exist_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Non-existent file'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <non_exist_body> name: non_exist_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <1>} {<-e>} {(SQ <'match:No such file or directory'>)} {<-o>} {<empty>} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper non_exist'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <non_exist_shell_head> name: non_exist_shell_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Non-existent shell'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <non_exist_shell_body> name: non_exist_shell_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <1>} {<-e>} {(SQ <'match:No such file or directory'>)} {<-o>} {<empty>} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper non_exist_shell'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <script_arg_head> name: script_arg_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(DQ <'-x in the shebang'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <script_arg_body> name: script_arg_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<-e>} {(SQ <'match:\\+ echo succeeded'>)} {<-o>} {(SQ <'match:succeeded'>)} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper script_arg'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <script_arg_nospace_head> name: script_arg_nospace_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [ {<atf_set>} {(DQ <descr>)} {(SQ <'-x in the shebang; no space between #! and /bin/sh'>)} ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <script_arg_nospace_body> name: script_arg_nospace_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>} {<-e>} {(SQ <'match:\\+ echo succeeded'>)} {<-o>} {(SQ <'match:succeeded'>)} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper script_arg_nospace'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <sparse_aout_head> name: sparse_aout_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(SQ <'Sparse file'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <sparse_aout_body> name: sparse_aout_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <1>} {<-e>} {(SQ <'match:Exec format error'>)} {<-o>} {<empty>} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper sparse_aout'> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <trunc_aout_head> name: trunc_aout_head body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_set> more_env: [] words: [{<atf_set>} {(DQ <descr>)} {(SQ <'Truncated file'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <trunc_aout_body> name: trunc_aout_body body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <atf_check> more_env: [] words: [ {<atf_check>} {<-s>} {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <1>} {<-e>} {(SQ <'match:Exec format error'>)} {<-o>} {<empty>} {<-x>} { (DQ <'cd '> (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 _> ) <' && ./execve_helper trunc_aout'> ) } ] 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.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<bad_interp_len>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<empty>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<good_aout>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<good_script>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<non_exist>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<non_exist_shell>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<script_arg>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<script_arg_nospace>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<sparse_aout>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <atf_add_test_case> more_env: [] words: [{<atf_add_test_case>} {<trunc_aout>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) ] )