(CommandList children: [ (C {(set)} {(-o)} {(nounset)}) (C {(set)} {(-o)} {(pipefail)}) (C {(set)} {(-o)} {(errexit)}) (C {(source)} {(common.sh)}) (C {(source)} {(compare.sh)}) (Assignment keyword: Assign_Readonly pairs: [(assign_pair lhs:(LhsName name:PY) op:Equal rhs:{($ VSub_Name '$PY36')} spids:[43])] spids: [41] ) (FuncDef name: _parse-one body: (BraceGroup children:[(C {(opyg)} {(parse)} {(DQ ($ VSub_At '$@'))})] spids:[51]) spids: [47 50] ) (FuncDef name: parse-test body: (BraceGroup children: [ (C {(_parse-one)} {(testdata/hello_py3.py)}) (C {(echo)} {(---)}) (C {(_parse-one)} {(testdata/hello_py2.py)}) ] spids: [73] ) spids: [69 72] ) (FuncDef name: parser-bug body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: {(_tmp/opy_parser_bug.py)} spids: [108] ) ] spids: [106] ) (SimpleCommand words: [{(echo)} {(-n)} {(SQ <'foo = {}'>)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {($ VSub_Name '$out')} spids: [120] ) ] ) (C {(_parse-one)} {($ VSub_Name '$out')}) ] spids: [103] ) spids: [99 102] ) (FuncDef name: _stdlib-parse-one body: (BraceGroup children: [ (SimpleCommand words: [{(./opy_main.py)} {(2to3.grammar)} {(stdlib-parse)} {(DQ ($ VSub_At '$@'))}] more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[142])] ) ] spids: [139] ) spids: [135 138] ) (FuncDef name: stdlib-parse-test body: (BraceGroup children: [ (C {(_stdlib-parse-one)} {(testdata/hello_py3.py)}) (C {(echo)} {(---)}) (C {(_stdlib-parse-one)} {(testdata/hello_py2.py)}) ] spids: [162] ) spids: [158 161] ) (FuncDef name: _compile-and-run body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:path) op: Equal rhs: {($ VSub_Number '$1')} spids: [191] ) ] spids: [189] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:basename) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(basename)} {($ VSub_Name '$path')} {(.py)})] ) left_token: <Left_CommandSub '$('> spids: [198 204] ) } spids: [197] ) ] spids: [195] ) (C {(mkdir)} {(-p)} {(_tmp)}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: {(_tmp/) (${ VSub_Name basename) (.pyc)} spids: [217] ) ] spids: [215] ) (C {(_compile-one)} {($ VSub_Name '$path')} {($ VSub_Name '$out')}) (C {(ls)} {(-l)} {($ VSub_Name '$out')}) (C {(xxd)} {($ VSub_Name '$out')}) (C {(python)} {($ VSub_Name '$out')}) ] spids: [186] ) spids: [182 185] ) (FuncDef name: _stdlib-compile-and-run body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:path) op: Equal rhs: {($ VSub_Number '$1')} spids: [280] ) ] spids: [278] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:basename) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(basename)} {($ VSub_Name '$path')} {(.py)})] ) left_token: <Left_CommandSub '$('> spids: [287 293] ) } spids: [286] ) ] spids: [284] ) (C {(mkdir)} {(-p)} {(_tmp)}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: {(_tmp/) (${ VSub_Name basename) (.pyc_stdlib)} spids: [306] ) ] spids: [304] ) (C {(misc/stdlib_compile.py)} {($ VSub_Name '$path')} {($ VSub_Name '$out')}) (C {(ls)} {(-l)} {($ VSub_Name '$out')}) (C {(xxd)} {($ VSub_Name '$out')}) (C {(python)} {($ VSub_Name '$out')}) ] spids: [275] ) spids: [271 274] ) (FuncDef name: stdlib-compile-test body: (BraceGroup children: [(C {(_stdlib-compile-and-run)} {(testdata/hello_py2.py)})] spids: [346] ) spids: [342 345] ) (FuncDef name: compile-hello2 body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: {(_tmp/hello_py2.pyc27)} spids: [371] ) ] spids: [369] ) (C {(_compile-and-run)} {(testdata/hello_py2.py)} {($ VSub_Name '$out')}) ] spids: [366] ) spids: [362 365] ) (FuncDef name: compile-hello3 body: (BraceGroup children:[(C {(_compile-and-run)} {(testdata/hello_py3.py)})] spids:[391]) spids: [387 390] ) (FuncDef name: stdlib-determinism body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {(_tmp/det)}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:file) op: Equal rhs: {(./opy_main.py)} spids: [417] ) ] spids: [415] ) (C {(_stdlib-compile-one)} {($ VSub_Name '$file')} {(_tmp/det/) ($ VSub_Name '$file') (.1)}) (C {(_stdlib-compile-one)} {($ VSub_Name '$file')} {(_tmp/det/) ($ VSub_Name '$file') (.2)}) (C {(compare-files)} (BracedWordTree parts: [(_tmp/det/) ($ VSub_Name '$file') (.) (BracedAltPart words:[{(1)} {(2)}])] ) ) ] spids: [405] ) spids: [401 404] ) (FuncDef name: stdlib-determinism-loop body: (BraceGroup children:[(C {(determinism-loop)} {(_stdlib-compile-one)})] spids:[480]) spids: [476 479] ) (FuncDef name: compile2-determinism body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {(_tmp/det)}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:file) op: Equal rhs: {(./opy_main.py)} spids: [510] ) ] spids: [508] ) (C {(_compile2-one)} {($ VSub_Name '$file')} {(_tmp/det/) ($ VSub_Name '$file') (.1)}) (C {(_compile2-one)} {($ VSub_Name '$file')} {(_tmp/det/) ($ VSub_Name '$file') (.2)}) (C {(compare-files)} (BracedWordTree parts: [(_tmp/det/) ($ VSub_Name '$file') (.) (BracedAltPart words:[{(1)} {(2)}])] ) ) ] spids: [498] ) spids: [494 497] ) (FuncDef name: stdlib-compile2 body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {(_tmp/det)}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:file) op: Equal rhs: {(./opy_main.py)} spids: [578] ) ] spids: [576] ) (C {(_stdlib-compile-one)} {($ VSub_Name '$file')} {(_tmp/det/) ($ VSub_Name '$file') (.stdlib)} ) (C {(_compile2-one)} {($ VSub_Name '$file')} {(_tmp/det/) ($ VSub_Name '$file') (.compile2)}) (C {(compare-files)} (BracedWordTree parts: [ (_tmp/det/) ($ VSub_Name '$file') (.) (BracedAltPart words:[{(stdlib)} {(compile2)}]) ] ) ) ] spids: [566] ) spids: [562 565] ) (C {(export)} {(Lit_VarLike 'PYTHONHASHSEED=') (0)}) (FuncDef name: compare-opy-tree body: (BraceGroup children: [ (AndOr ops: [Op_DPipe] children: [ (C {(diff)} {(-u)} (BracedWordTree parts: [(_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(stdlib2)}]) (/SIZES.txt)] ) ) (C {(true)}) ] ) (C {(compare-files)} (BracedWordTree parts: [(_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(stdlib2)}]) (/pytree.pyc)] ) ) (ControlFlow token:<ControlFlow_Return return>) (C {(compare-files)} (BracedWordTree parts: [(_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(stdlib2)}]) (/opy_main.pyc)] ) ) (C {(compare-files)} (BracedWordTree parts: [ (_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(stdlib2)}]) (/compiler2/pyassem.pyc) ] ) ) (C {(compare-files)} (BracedWordTree parts: [ (_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(stdlib2)}]) (/compiler2/pycodegen.pyc) ] ) ) (C {(compare-files)} (BracedWordTree parts: [ (_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(stdlib2)}]) (/compiler2/symbols.pyc) ] ) ) (C {(compare-files)} (BracedWordTree parts: [ (_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(stdlib2)}]) (/compiler2/transformer.pyc) ] ) ) (ControlFlow token:<ControlFlow_Return return>) (C {(compare-files)} (BracedWordTree parts: [(_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(compile2)}]) (/util.pyc)] ) ) (C {(compare-files)} (BracedWordTree parts: [(_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(compile2)}]) (/pgen2/driver.pyc)] ) ) (C {(compare-files)} (BracedWordTree parts: [(_tmp/opy-) (BracedAltPart words:[{(stdlib)} {(compile2)}]) (/opy_main.pyc)] ) ) ] spids: [633] ) spids: [629 632] ) (FuncDef name: compare-osh-tree body: (BraceGroup children: [ (C {(compare-files)} (BracedWordTree parts: [ (_tmp/osh-) (BracedAltPart words:[{(ccompile)} {(compile2)}]) (/core/testdbg.pyc) ] ) ) ] spids: [788] ) spids: [784 787] ) (FuncDef name: unit-osh body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dir) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: {(_tmp) (Lit_Slash /) (osh-stdlib)} ) spids: [822 828] ) } spids: [821] ) ] spids: [819] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:vm) op: Equal rhs: { (BracedVarSub token: <VSub_Number 2> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(byterun)}) spids: [834 838] ) } spids: [833] ) ] spids: [831] ) (C {(shift)} {(2)}) (C {(pushd)} {($ VSub_Name '$dir')}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Name '$vm')} {(Lit_Other '=')} {(byterun)}) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(byterun)} {(-c)} {(DQ ($ VSub_At '$@'))}] more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[868])] ) ] spids: [16777215 865] ) ] else_action: [ (SimpleCommand words: [{(python)} {(DQ ($ VSub_At '$@'))}] more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[883])] ) ] spids: [880 893] ) (C {(popd)}) ] spids: [816] ) spids: [812 815] ) (FuncDef name: compile-run-one body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:compiler) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(ccompile)}) spids: [914 918] ) } spids: [913] ) ] spids: [911] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:vm) op: Equal rhs: { (BracedVarSub token: <VSub_Number 2> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(byterun)}) spids: [927 931] ) } spids: [926] ) ] spids: [924] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:py) op: Equal rhs: {($ VSub_Number '$3')} spids: [939] ) ] spids: [937] ) (C {(shift)} {(3)}) (If arms: [ (if_arm cond: [ (Pipeline children: [ (BraceGroup children: [ (Sentence child: (AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_Name '$compiler')} {(Lit_Other '=')} {(ccompile)} ) (C {(test)} {($ VSub_Name '$compiler')} {(Lit_Other '=')} {(compile2)} ) ] ) terminator: <Op_Semi ';'> ) ] spids: [953] ) ] negated: T ) ] action: [(C {(die)} {(DQ ('Invalid compiler ') ($ VSub_Name '$compiler'))})] spids: [16777215 976] ) ] spids: [16777215 987] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dir) op: Equal rhs: {(DQ (_tmp/osh-) ($ VSub_Name '$compiler'))} spids: [993] ) ] spids: [991] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:pyc) op: Equal rhs: { (DQ ($ VSub_Name '$dir') (/) (CommandSubPart command_list: (CommandList children: [(C {(basename)} {($ VSub_Name '$py')})] ) left_token: <Left_CommandSub '$('> spids: [1006 1010] ) (c) ) } spids: [1002] ) ] spids: [1000] ) (C {(_) ($ VSub_Name '$compiler') (-one)} {($ VSub_Name '$py')} {($ VSub_Name '$pyc')}) (C {(export)} {(Lit_VarLike 'PYTHONPATH=') ($ VSub_Name '$dir')}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Name '$vm')} {(Lit_Other '=')} {(cpython)}) terminator: <Op_Semi ';'> ) ] action: [(C {(python)} {($ VSub_Name '$pyc')} {(DQ ($ VSub_At '$@'))})] spids: [16777215 1043] ) (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Name '$vm')} {(Lit_Other '=')} {(byterun)}) terminator: <Op_Semi ';'> ) ] action: [(C {(byterun)} {(-c)} {($ VSub_Name '$pyc')} {(DQ ($ VSub_At '$@'))})] spids: [1055 1066] ) ] else_action: [(C {(die)} {($ VSub_Name '$vm')})] spids: [1085 1093] ) ] spids: [908] ) spids: [904 907] ) (FuncDef name: compare-sizes body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:left) op: Equal rhs: {($ VSub_Number '$1')} spids: [1107] ) ] spids: [1105] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:right) op: Equal rhs: {($ VSub_Number '$2')} spids: [1113] ) ] spids: [1111] ) (Pipeline children: [ (C {(find)} {($ VSub_Name '$left')} {(-name)} {(SQ <'*.pyc'>)} {(-a)} {(-printf)} {(SQ <'%s %P\\n'>)} ) (C {(sort)} {(-n)}) ] negated: F ) (C {(echo)} {(---)}) (Pipeline children: [ (C {(find)} {($ VSub_Name '$right')} {(-name)} {(SQ <'*.opyc'>)} {(-a)} {(-printf)} {(SQ <'%s %P\\n'>)} ) (C {(sort)} {(-n)}) ] negated: F ) ] spids: [1102] ) spids: [1098 1101] ) (FuncDef name: compare-opy-sizes body: (BraceGroup children:[(C {(compare-sizes)} {(..)} {(_tmp/opy)})] spids:[1186]) spids: [1182 1185] ) (FuncDef name: compare-osh-sizes body: (BraceGroup children:[(C {(compare-sizes)} {(..)} {(_tmp/osh)})] spids:[1202]) spids: [1198 1201] ) (FuncDef name: old-compile-test body: (BraceGroup children: [ (SimpleCommand words: [{(tools/compile.py)} {(testdata/hello_py3.py)}] more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[1228])] ) ] spids: [1225] ) spids: [1221 1224] ) (FuncDef name: parse-with-pgen2 body: (BraceGroup children: [ (C {(set)} {(Lit_Other '+') (o)} {(errexit)}) (ForEach iter_name: py iter_words: [{(DQ ($ VSub_At '$@'))}] do_arg_iter: F body: (DoGroup children: [ (SimpleCommand words: [{(_parse-one)} {($ VSub_Name '$py')}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [1284] ) ] ) (C {(echo)} {($ VSub_QMark '$?')} {($ VSub_Name '$py')}) ] spids: [1277 1298] ) spids: [1271 1275] ) ] spids: [1255] ) spids: [1251 1254] ) (FuncDef name: parse-oil body: (BraceGroup children: [ (C {(parse-with-pgen2)} {(Lit_Other '*') (.py)} {(../) (Lit_Other '*') (.py)} {(../osh/) (Lit_Other '*') (.py)} {(../core/) (Lit_Other '*') (.py)} {(../asdl/) (Lit_Other '*') (.py)} ) ] spids: [1310] ) spids: [1306 1309] ) (FuncDef name: parse-pycompiler2 body: (BraceGroup children: [ (C {(parse-with-pgen2)} {(TildeSubPart prefix:'') (/src/Python-2.7.6/Lib/compiler/) (Lit_Other '*') (.py)} ) ] spids: [1344] ) spids: [1340 1343] ) (FuncDef name: parse-pycompiler body: (BraceGroup children: [ (C {(parse-with-pgen2)} {(compiler/) (Lit_Other '*') (.py)} {(tools/) (Lit_Other '*') (.py)}) ] spids: [1368] ) spids: [1364 1367] ) (FuncDef name: clear-tokens body: (BraceGroup children: [ (C {(rm)} {(token.py)} {(tokenize.py)}) (C {(rm)} {(-rf)} {(--verbose)} {(__pycache)} {(../__pycache__)}) ] spids: [1402] ) spids: [1398 1401] ) (FuncDef name: copy-lib2to3 body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {(pgen2)}) (C {(cp)} {(-v)} (BracedWordTree parts: [ ($ VSub_Name '$PY') (/Lib/lib2to3/) (BracedAltPart words:[{(pytree)} {(pygram)}]) (.py) ] ) {(.)} ) (C {(cp)} {(-v)} (BracedWordTree parts: [ ($ VSub_Name '$PY') (/Lib/lib2to3/pgen2/) (BracedAltPart words: [{(__init__)} {(driver)} {(grammar)} {(parse)} {(token)} {(tokenize)} {(pgen)}] ) (.py) ] ) {(pgen2)} ) (C {(cp)} {(-v)} {($ VSub_Name '$PY') (/Lib/lib2to3/Grammar.txt)} {(.)}) (ControlFlow token:<ControlFlow_Return return>) (C {(cp)} {(-v)} {($ VSub_Name '$PY') (/Parser/Python.asdl)} {(.)}) ] spids: [1429] ) spids: [1425 1428] ) (FuncDef name: copy-old-grammar body: (BraceGroup children: [(C {(cp)} {(-v)} {($ VSub_Name '$PY27') (/Grammar/Grammar)} {(py27.grammar)})] spids: [1540] ) spids: [1536 1539] ) (FuncDef name: copy-pycompiler body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {(compiler2)}) (C {(cp)} {(-v)} {(TildeSubPart prefix:'') (/src/Python-2.7.6/Lib/compiler/) (Lit_Other '*') (.py)} {(compiler2)} ) ] spids: [1559] ) spids: [1555 1558] ) (FuncDef name: copy-pycompiler-tools body: (BraceGroup children: [ (C {(cp)} {(-v)} {(TildeSubPart prefix:'') (/src/Python-2.7.6/Tools/compiler/) (BracedAltPart words: [{(ast.txt)} {(ACKS)} {(README)} {(Lit_Other '*') (.py)}] ) } {(tools/)} ) ] spids: [1591] ) spids: [1587 1590] ) (FuncDef name: compare-emitted body: (BraceGroup children: [ (Pipeline children: [ (C {(grep)} {(emit)} {(compiler/pycodegen.py)}) (C {(egrep)} {(-o)} {(SQ <'[A-Z][A-Z_]+'>)}) (C {(sort)}) (SimpleCommand words: [{(uniq)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(_tmp/opcodes-emitted.txt)} spids: [1652] ) ] ) ] negated: F ) (SimpleCommand words: [ {(python3)} {(-c)} { (SQ <'\n'> <'from compiler import opcode27\n'> <'names = sorted(opcode27.opmap)\n'> <'for n in names:\n'> <' print(n)\n'> ) } ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(_tmp/opcodes-defined.txt)} spids: [1667] ) ] more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[1662])] ) (C {(wc)} {(-l)} {(_tmp/opcodes-defined.txt)}) (C {(diff)} {(-u)} (BracedWordTree parts: [(_tmp/opcodes-) (BracedAltPart words:[{(emitted)} {(defined)}]) (.txt)] ) ) ] spids: [1620] ) spids: [1616 1619] ) (FuncDef name: count body: (BraceGroup children: [ (C {(echo)} {(PARSER)} {(GENERATOR)}) (Pipeline children: [ (C {(wc)} {(-l)} {(Lit_Other '*') (.py)} {(pgen2/) (Lit_Other '*') (.py)}) (C {(sort)} {(-n)}) ] negated: F ) (C {(echo)}) (C {(echo)} {(COMPILER2)}) (Pipeline children: [ (C {(ls)} {(compiler2/) (Lit_Other '*') (.py)}) (C {(grep)} {(-v)} {(ast.py)}) (C {(xargs)} {(wc)} {(-l)}) (C {(sort)} {(-n)}) ] negated: F ) (C {(echo)}) (C {(echo)} {(GENERATED)} {(CODE)}) (C {(wc)} {(-l)} {(compiler2/ast.py)}) (C {(echo)}) (C {(echo)} {(BYTERUN)}) (Pipeline children: [ (C {(ls)} {(byterun/) (Lit_Other '*') (.py)}) (C {(grep)} {(-v)} {(SQ <test>)}) (C {(xargs)} {(wc)} {(-l)}) (C {(sort)} {(-n)}) ] negated: F ) (C {(echo)}) ] spids: [1716] ) spids: [1712 1715] ) (FuncDef name: 2to3-print body: (BraceGroup children: [(C {(2to3)} {(--fix)} {(print)} {(--write)} {(DQ ($ VSub_At '$@'))})] spids: [1856] ) spids: [1852 1855] ) (C {(DQ ($ VSub_At '$@'))}) ] )