(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: die body: (BraceGroup children: [ (SimpleCommand words: [{(echo)} {(DQ ('FATAL: ') ($ VSub_At '$@'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[61])] ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [51] ) spids: [47 50] ) (FuncDef name: _parse-one body: (BraceGroup children:[(C {(opyg)} {(parse)} {(DQ ($ VSub_At '$@'))})] spids:[76]) spids: [72 75] ) (FuncDef name: parse-test body: (BraceGroup children: [ (C {(_parse-one)} {(testdata/hello_py3.py)}) (C {(echo)} {(---)}) (C {(_parse-one)} {(testdata/hello_py2.py)}) ] spids: [98] ) spids: [94 97] ) (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:[128])] ) ] spids: [125] ) spids: [121 124] ) (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: [148] ) spids: [144 147] ) (FuncDef name: compile-gold body: (BraceGroup children: [ (C {(pushd)} {(testdata)}) (C {(python3)} {(-c)} {(SQ <'import hello_py3'>)}) (C {(ls)} {(-l)} {(__pycache__)}) (C {(xxd)} {(__pycache__/hello_py3.cpython-34.pyc)}) (C {(popd)}) ] spids: [175] ) spids: [171 174] ) (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: [220] ) ] spids: [218] ) (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: [227 233] ) } spids: [226] ) ] spids: [224] ) (C {(mkdir)} {(-p)} {(_tmp)}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: {(_tmp/) (${ VSub_Name basename) (.pyc)} spids: [246] ) ] spids: [244] ) (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: [215] ) spids: [211 214] ) (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: [309] ) ] spids: [307] ) (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: [316 322] ) } spids: [315] ) ] spids: [313] ) (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: [335] ) ] spids: [333] ) (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: [304] ) spids: [300 303] ) (FuncDef name: stdlib-compile-test body: (BraceGroup children: [(C {(_stdlib-compile-and-run)} {(testdata/hello_py2.py)})] spids: [375] ) spids: [371 374] ) (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: [400] ) ] spids: [398] ) (C {(_compile-and-run)} {(testdata/hello_py2.py)} {($ VSub_Name '$out')}) ] spids: [395] ) spids: [391 394] ) (FuncDef name: compile-hello3 body: (BraceGroup children:[(C {(_compile-and-run)} {(testdata/hello_py3.py)})] spids:[420]) spids: [416 419] ) (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: [446] ) ] spids: [444] ) (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: [434] ) spids: [430 433] ) (FuncDef name: stdlib-determinism-loop body: (BraceGroup children:[(C {(determinism-loop)} {(_stdlib-compile-one)})] spids:[509]) spids: [505 508] ) (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: [540] ) ] spids: [538] ) (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: [528] ) spids: [524 527] ) (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: [608] ) ] spids: [606] ) (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: [596] ) spids: [592 595] ) (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: [663] ) spids: [659 662] ) (FuncDef name: compare-osh-tree body: (BraceGroup children: [ (C {(compare-files)} (BracedWordTree parts: [ (_tmp/osh-) (BracedAltPart words:[{(ccompile)} {(compile2)}]) (/core/testdbg.pyc) ] ) ) ] spids: [818] ) spids: [814 817] ) (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: [852 858] ) } spids: [851] ) ] spids: [849] ) (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: [864 868] ) } spids: [863] ) ] spids: [861] ) (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:[898])] ) ] spids: [16777215 895] ) ] else_action: [ (SimpleCommand words: [{(python)} {(DQ ($ VSub_At '$@'))}] more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[913])] ) ] spids: [910 923] ) (C {(popd)}) ] spids: [846] ) spids: [842 845] ) (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: [944 948] ) } spids: [943] ) ] spids: [941] ) (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: [957 961] ) } spids: [956] ) ] spids: [954] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:py) op: Equal rhs: {($ VSub_Number '$3')} spids: [969] ) ] spids: [967] ) (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: [983] ) ] negated: T ) ] action: [(C {(die)} {(DQ ('Invalid compiler ') ($ VSub_Name '$compiler'))})] spids: [16777215 1006] ) ] spids: [16777215 1017] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:dir) op: Equal rhs: {(DQ (_tmp/osh-) ($ VSub_Name '$compiler'))} spids: [1023] ) ] spids: [1021] ) (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: [1036 1040] ) (c) ) } spids: [1032] ) ] spids: [1030] ) (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 1073] ) (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: [1085 1096] ) ] else_action: [(C {(die)} {($ VSub_Name '$vm')})] spids: [1115 1123] ) ] spids: [938] ) spids: [934 937] ) (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: [1137] ) ] spids: [1135] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:right) op: Equal rhs: {($ VSub_Number '$2')} spids: [1143] ) ] spids: [1141] ) (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: [1132] ) spids: [1128 1131] ) (FuncDef name: compare-opy-sizes body: (BraceGroup children:[(C {(compare-sizes)} {(..)} {(_tmp/opy)})] spids:[1216]) spids: [1212 1215] ) (FuncDef name: compare-osh-sizes body: (BraceGroup children:[(C {(compare-sizes)} {(..)} {(_tmp/osh)})] spids:[1232]) spids: [1228 1231] ) (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:[1258])] ) ] spids: [1255] ) spids: [1251 1254] ) (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: [1314] ) ] ) (C {(echo)} {($ VSub_QMark '$?')} {($ VSub_Name '$py')}) ] spids: [1307 1328] ) spids: [1301 1305] ) ] spids: [1285] ) spids: [1281 1284] ) (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: [1337] ) spids: [1333 1336] ) (FuncDef name: parse-pycompiler2 body: (BraceGroup children: [ (C {(parse-with-pgen2)} {(TildeSubPart prefix:'') (/src/Python-2.7.6/Lib/compiler/) (Lit_Other '*') (.py)} ) ] spids: [1371] ) spids: [1367 1370] ) (FuncDef name: parse-pycompiler body: (BraceGroup children: [ (C {(parse-with-pgen2)} {(compiler/) (Lit_Other '*') (.py)} {(tools/) (Lit_Other '*') (.py)}) ] spids: [1395] ) spids: [1391 1394] ) (FuncDef name: clear-tokens body: (BraceGroup children: [ (C {(rm)} {(token.py)} {(tokenize.py)}) (C {(rm)} {(-rf)} {(--verbose)} {(__pycache)} {(../__pycache__)}) ] spids: [1429] ) spids: [1425 1428] ) (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: [1456] ) spids: [1452 1455] ) (FuncDef name: copy-old-grammar body: (BraceGroup children: [(C {(cp)} {(-v)} {($ VSub_Name '$PY27') (/Grammar/Grammar)} {(py27.grammar)})] spids: [1567] ) spids: [1563 1566] ) (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: [1586] ) spids: [1582 1585] ) (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: [1618] ) spids: [1614 1617] ) (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: [1679] ) ] ) ] 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: [1694] ) ] more_env: [(env_pair name:PYTHONPATH val:{(.)} spids:[1689])] ) (C {(wc)} {(-l)} {(_tmp/opcodes-defined.txt)}) (C {(diff)} {(-u)} (BracedWordTree parts: [(_tmp/opcodes-) (BracedAltPart words:[{(emitted)} {(defined)}]) (.txt)] ) ) ] spids: [1647] ) spids: [1643 1646] ) (FuncDef name: count body: (BraceGroup children: [ (Pipeline children: [ (C {(wc)} {(-l)} {(Lit_Other '*') (.py)} {(pgen2/) (Lit_Other '*') (.py)}) (C {(sort)} {(-n)}) ] negated: F ) (C {(echo)}) (Pipeline children: [(C {(wc)} {(-l)} {(compiler2/) (Lit_Other '*') (.py)}) (C {(sort)} {(-n)})] negated: F ) (C {(echo)}) (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: [1743] ) spids: [1739 1742] ) (FuncDef name: 2to3-print body: (BraceGroup children: [(C {(2to3)} {(--fix)} {(print)} {(--write)} {(DQ ($ VSub_At '$@'))})] spids: [1830] ) spids: [1826 1829] ) (C {(DQ ($ VSub_At '$@'))}) ] )