(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])] ) (C {(exit)} {(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 children: [ (C {(diff)} {(-u)} (BracedWordTree parts: [(_tmp/opy-) (BracedAltPart words:[{(stdlib)}{(stdlib2)}]) (/SIZES.txt)] ) ) (C {(true)}) ] op_id: Op_DPipe ) (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: [-1 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 children: [ (C {(test)} {($ VSub_Name "$compiler")} {(Lit_Other "=")} {(ccompile)} ) (C {(test)} {($ VSub_Name "$compiler")} {(Lit_Other "=")} {(compile2)} ) ] op_id: Op_DPipe ) terminator: <Op_Semi ";"> ) ] spids: [983] ) ] negated: True ) ] action: [(C {(die)} {(DQ ("Invalid compiler ") ($ VSub_Name "$compiler"))})] spids: [-1 1006] ) ] spids: [-1 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: [-1 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: False ) (C {(echo)} {(---)}) (Pipeline children: [ (C {(find)} {($ VSub_Name "$right")} {(-name)} {(SQ <"*.opyc">)} {(-a)} {(-printf)} {(SQ <"%s %P\\n">)} ) (C {(sort)} {(-n)}) ] negated: False ) ] 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: False body: (DoGroup children: [ (SimpleCommand words: [{(_parse-one)} {($ VSub_Name "$py")}] redirects: [(Redir op_id:Redir_Great fd:-1 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: -1 arg_word: {(_tmp/opcodes-emitted.txt)} spids: [1679] ) ] ) ] negated: False ) (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: -1 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: False ) (C {(echo)}) (Pipeline children: [(C {(wc)} {(-l)} {(compiler2/) (Lit_Other "*") (.py)}) (C {(sort)} {(-n)})] negated: False ) (C {(echo)}) (Pipeline children: [ (C {(ls)} {(byterun/) (Lit_Other "*") (.py)}) (C {(grep)} {(-v)} {(SQ <test>)}) (C {(xargs)} {(wc)} {(-l)}) (C {(sort)} {(-n)}) ] negated: False ) (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 "$@"))}) ] )