@@ -1149,7 +1149,7 @@ var compileTestData = []struct {
1149
1149
Name : "<module>" ,
1150
1150
Firstlineno : 1 ,
1151
1151
Lnotab : "" ,
1152
- }, " 1 0 LOAD_CONST 0 (<code object <lambda> at 0x7fd0bed8ee40 , file \" <string>\" , line 1>)\n 3 LOAD_CONST 1 ('<lambda>')\n 6 MAKE_FUNCTION 0\n 9 RETURN_VALUE\n " },
1152
+ }, " 1 0 LOAD_CONST 0 (<code object <lambda> at 0x7f643912ce40 , file \" <string>\" , line 1>)\n 3 LOAD_CONST 1 ('<lambda>')\n 6 MAKE_FUNCTION 0\n 9 RETURN_VALUE\n " },
1153
1153
{"pass" , "exec" , & py.Code {
1154
1154
Argcount : 0 ,
1155
1155
Kwonlyargcount : 0 ,
@@ -1575,4 +1575,72 @@ var compileTestData = []struct {
1575
1575
Firstlineno : 1 ,
1576
1576
Lnotab : "" ,
1577
1577
}, " 1 0 LOAD_NAME 0 (a)\n 3 LOAD_NAME 1 (b)\n 6 RAISE_VARARGS 2\n 9 LOAD_CONST 0 (None)\n 12 RETURN_VALUE\n " },
1578
+ {"if a: b = c" , "exec" , & py.Code {
1579
+ Argcount : 0 ,
1580
+ Kwonlyargcount : 0 ,
1581
+ Nlocals : 0 ,
1582
+ Stacksize : 1 ,
1583
+ Flags : 64 ,
1584
+ Code : "\x65 \x00 \x00 \x72 \x0f \x00 \x65 \x01 \x00 \x5a \x02 \x00 \x6e \x00 \x00 \x64 \x00 \x00 \x53 " ,
1585
+ Consts : []py.Object {py .None },
1586
+ Names : []string {"a" , "c" , "b" },
1587
+ Varnames : []string {},
1588
+ Freevars : []string {},
1589
+ Cellvars : []string {},
1590
+ Filename : "<string>" ,
1591
+ Name : "<module>" ,
1592
+ Firstlineno : 1 ,
1593
+ Lnotab : "\x06 \x00 " ,
1594
+ }, " 1 0 LOAD_NAME 0 (a)\n 3 POP_JUMP_IF_FALSE 15\n 6 LOAD_NAME 1 (c)\n 9 STORE_NAME 2 (b)\n 12 JUMP_FORWARD 0 (to 15)\n >> 15 LOAD_CONST 0 (None)\n 18 RETURN_VALUE\n " },
1595
+ {"if a:\n b = c\n else:\n c = d\n " , "exec" , & py.Code {
1596
+ Argcount : 0 ,
1597
+ Kwonlyargcount : 0 ,
1598
+ Nlocals : 0 ,
1599
+ Stacksize : 1 ,
1600
+ Flags : 64 ,
1601
+ Code : "\x65 \x00 \x00 \x72 \x0f \x00 \x65 \x01 \x00 \x5a \x02 \x00 \x6e \x06 \x00 \x65 \x03 \x00 \x5a \x01 \x00 \x64 \x00 \x00 \x53 " ,
1602
+ Consts : []py.Object {py .None },
1603
+ Names : []string {"a" , "c" , "b" , "d" },
1604
+ Varnames : []string {},
1605
+ Freevars : []string {},
1606
+ Cellvars : []string {},
1607
+ Filename : "<string>" ,
1608
+ Name : "<module>" ,
1609
+ Firstlineno : 1 ,
1610
+ Lnotab : "\x06 \x01 \x09 \x02 " ,
1611
+ }, " 1 0 LOAD_NAME 0 (a)\n 3 POP_JUMP_IF_FALSE 15\n \n 2 6 LOAD_NAME 1 (c)\n 9 STORE_NAME 2 (b)\n 12 JUMP_FORWARD 6 (to 21)\n \n 4 >> 15 LOAD_NAME 3 (d)\n 18 STORE_NAME 1 (c)\n >> 21 LOAD_CONST 0 (None)\n 24 RETURN_VALUE\n " },
1612
+ {"while a:\n b = c" , "exec" , & py.Code {
1613
+ Argcount : 0 ,
1614
+ Kwonlyargcount : 0 ,
1615
+ Nlocals : 0 ,
1616
+ Stacksize : 1 ,
1617
+ Flags : 64 ,
1618
+ Code : "\x78 \x10 \x00 \x65 \x00 \x00 \x72 \x12 \x00 \x65 \x01 \x00 \x5a \x02 \x00 \x71 \x03 \x00 \x57 \x64 \x00 \x00 \x53 " ,
1619
+ Consts : []py.Object {py .None },
1620
+ Names : []string {"a" , "c" , "b" },
1621
+ Varnames : []string {},
1622
+ Freevars : []string {},
1623
+ Cellvars : []string {},
1624
+ Filename : "<string>" ,
1625
+ Name : "<module>" ,
1626
+ Firstlineno : 1 ,
1627
+ Lnotab : "\x09 \x01 " ,
1628
+ }, " 1 0 SETUP_LOOP 16 (to 19)\n >> 3 LOAD_NAME 0 (a)\n 6 POP_JUMP_IF_FALSE 18\n \n 2 9 LOAD_NAME 1 (c)\n 12 STORE_NAME 2 (b)\n 15 JUMP_ABSOLUTE 3\n >> 18 POP_BLOCK\n >> 19 LOAD_CONST 0 (None)\n 22 RETURN_VALUE\n " },
1629
+ {"while a:\n b = c\n else:\n b = d\n " , "exec" , & py.Code {
1630
+ Argcount : 0 ,
1631
+ Kwonlyargcount : 0 ,
1632
+ Nlocals : 0 ,
1633
+ Stacksize : 1 ,
1634
+ Flags : 64 ,
1635
+ Code : "\x78 \x16 \x00 \x65 \x00 \x00 \x72 \x12 \x00 \x65 \x01 \x00 \x5a \x02 \x00 \x71 \x03 \x00 \x57 \x65 \x03 \x00 \x5a \x02 \x00 \x64 \x00 \x00 \x53 " ,
1636
+ Consts : []py.Object {py .None },
1637
+ Names : []string {"a" , "c" , "b" , "d" },
1638
+ Varnames : []string {},
1639
+ Freevars : []string {},
1640
+ Cellvars : []string {},
1641
+ Filename : "<string>" ,
1642
+ Name : "<module>" ,
1643
+ Firstlineno : 1 ,
1644
+ Lnotab : "\x09 \x01 \x0a \x02 " ,
1645
+ }, " 1 0 SETUP_LOOP 22 (to 25)\n >> 3 LOAD_NAME 0 (a)\n 6 POP_JUMP_IF_FALSE 18\n \n 2 9 LOAD_NAME 1 (c)\n 12 STORE_NAME 2 (b)\n 15 JUMP_ABSOLUTE 3\n >> 18 POP_BLOCK\n \n 4 19 LOAD_NAME 3 (d)\n 22 STORE_NAME 2 (b)\n >> 25 LOAD_CONST 0 (None)\n 28 RETURN_VALUE\n " },
1578
1646
}
0 commit comments