(command.CommandList children: [ (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-o>} {<nounset>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-o>} {<pipefail>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-o>} {<errexit>}] redirects: [] do_fork: T ) (command.ShFunction name_tok: <make-zip> name: make-zip body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'out='> <'_tmp/make-zip-test.zip'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'build/make_zip.py'> more_env: [] words: [ {<'build/make_zip.py'>} {($ Id.VSub_DollarName out)} {<'_build/runpy-deps-py.txt'>} ] redirects: [] do_fork: T ) (command.Simple blame_tok: <unzip> more_env: [] words: [{<unzip>} {<-l>} {($ Id.VSub_DollarName out)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <hello-bundle> name: hello-bundle body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<Id.Lit_Other '+'> <o>} {<errexit>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'_bin/hello.ovm'> more_env: [] words: [{<'_bin/hello.ovm'>}] redirects: [] do_fork: T ) (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: <test> more_env: [] words: [{<test>} {($ Id.VSub_QMark '?')} {<Id.Lit_Equals '='>} {<1>}] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) ] ) then_kw: <Id.KW_Then then> action: [ (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<OK>}] redirects: [] do_fork: T ) ] spids: [80 91] ) ] else_kw: <Id.KW_Else else> else_action: [ (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(SQ <'FAIL: expected exit code 1'>)}] redirects: [] do_fork: T ) (command.ControlFlow keyword:<Id.ControlFlow_Exit exit> arg_word:{<1>}) ] fi_kw: <Id.KW_Fi fi> redirects: [] ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <oil-bundle> name: oil-bundle body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <'_bin/oil.ovm'> more_env: [] words: [{<'_bin/oil.ovm'>} {<osh>} {<-c>} {(SQ <'echo hi'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <ln> more_env: [] words: [{<ln>} {<-s>} {<-f>} {<oil.ovm>} {<'_bin/osh'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'_bin/osh'> more_env: [] words: [{<'_bin/osh'>} {<-c>} {(SQ <'echo hi from osh'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <_tarball> name: _tarball body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [ {<local>} {<Id.Lit_VarLike 'name='> (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Number 1> var_name: 1 suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{<hello>}) right: <Id.Right_DollarBrace '}'> ) } ] redirects: [] do_fork: T ) (command.Simple blame_tok: <local> more_env: [] words: [ {<local>} {<Id.Lit_VarLike 'version='> (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Number 2> var_name: 2 suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{<0.0.0>}) right: <Id.Right_DollarBrace '}'> ) } ] redirects: [] do_fork: T ) (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'tmp='> <'_tmp/'> (${ Id.VSub_Name name) <-tar-test>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <rm> more_env: [] words: [{<rm>} {<-r>} {<-f>} {($ Id.VSub_DollarName tmp)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <mkdir> more_env: [] words: [{<mkdir>} {<-p>} {($ Id.VSub_DollarName tmp)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cd> more_env: [] words: [{<cd>} {($ Id.VSub_DollarName tmp)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <tar> more_env: [] words: [{<tar>} {<--extract>} {<-z>}] redirects: [ (Redir op: <Id.Redir_Less '<'> loc: (redir_loc.Fd fd:0) arg: {<'../../_release/'> ($ Id.VSub_DollarName name) <-> ($ Id.VSub_DollarName version) <.tar.gz> } ) ] do_fork: T ) (command.Simple blame_tok: <cd> more_env: [] words: [{<cd>} {($ Id.VSub_DollarName name) <-> ($ Id.VSub_DollarName version)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <'./configure'> more_env: [] words: [{<'./configure'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'bin='> <'_bin/'> (${ Id.VSub_Name name) <.ovm>}] redirects: [] do_fork: T ) (command.TimeBlock keyword: <Id.KW_Time time> pipeline: (command.Simple blame_tok: <make> more_env: [] words: [{<make>} {($ Id.VSub_DollarName bin)}] redirects: [] do_fork: T ) ) (command.Simple blame_tok: <Id.VSub_DollarName '$bin'> more_env: [] words: [{($ Id.VSub_DollarName bin)} {<--version>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <hello-tar> name: hello-tar body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <_tarball> more_env: [] words: [ {<_tarball>} {<hello>} { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <head> more_env: [] words: [{<head>} {<-n>} {<1>} {<'build/testdata/hello-version.txt'>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <oil-tar> name: oil-tar body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <_tarball> more_env: [] words: [ {<_tarball>} {<oil>} { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <head> more_env: [] words: [{<head>} {<-n>} {<1>} {<oil-version.txt>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <ovm-main-func> name: ovm-main-func body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<--->}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(SQ <'Running nothing'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<--->}] redirects: [] do_fork: T ) (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'ovm='> <'_build/hello/ovm-dbg'>}] redirects: [] do_fork: T ) (command.AndOr children: [ (command.Simple blame_tok: <Id.VSub_DollarName '$ovm'> more_env: [ (EnvPair left: <Id.Lit_VarLike '_OVM_RUN_SELF='> name: _OVM_RUN_SELF val: {<0>} ) ] words: [{($ Id.VSub_DollarName ovm)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <true> more_env: [] words: [{<true>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<--->}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(SQ <'Running bytecode.zip'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<--->}] redirects: [] do_fork: T ) (command.AndOr children: [ (command.Simple blame_tok: <Id.VSub_DollarName '$ovm'> more_env: [ (EnvPair left: <Id.Lit_VarLike '_OVM_RUN_SELF='> name: _OVM_RUN_SELF val: {<0>} ) ] words: [{($ Id.VSub_DollarName ovm)} {<'_build/hello/bytecode.zip'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <true> more_env: [] words: [{<true>}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<--->}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(SQ <'Running lib.pyc'>)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {<--->}] redirects: [] do_fork: T ) (command.Simple blame_tok: <Id.VSub_DollarName '$ovm'> more_env: [(EnvPair left:<Id.Lit_VarLike '_OVM_RUN_SELF='> name:_OVM_RUN_SELF val:{<0>})] words: [{($ Id.VSub_DollarName ovm)} {<'build/testdata/lib.pyc'>}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Simple blame_tok: <Id.Left_DoubleQuote '"'> more_env: [] words: [{(DQ ($ Id.VSub_At '@'))}] redirects: [] do_fork: T ) ] )