mirror of
https://github.com/python/cpython.git
synced 2025-08-30 05:35:08 +00:00
bpo-37830: Fix compilation of break and continue in finally. (GH-15320)
Fix compilation of "break" and "continue" in the "finally" block when the corresponding "try" block contains "return" with a non-constant value.
This commit is contained in:
parent
e9c90aa431
commit
ef61c524dd
11 changed files with 305 additions and 194 deletions
84
Python/importlib.h
generated
84
Python/importlib.h
generated
|
@ -301,14 +301,14 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
0,0,115,6,0,0,0,8,2,8,4,8,4,114,50,0,
|
||||
0,0,99,1,0,0,0,0,0,0,0,0,0,0,0,3,
|
||||
0,0,0,8,0,0,0,67,0,0,0,115,130,0,0,0,
|
||||
116,0,160,1,161,0,1,0,122,106,122,14,116,2,124,0,
|
||||
25,0,131,0,125,1,87,0,110,24,4,0,116,3,107,10,
|
||||
116,0,160,1,161,0,1,0,122,106,122,14,116,3,124,0,
|
||||
25,0,131,0,125,1,87,0,110,24,4,0,116,4,107,10,
|
||||
114,48,1,0,1,0,1,0,100,1,125,1,89,0,110,2,
|
||||
88,0,124,1,100,1,107,8,114,112,116,4,100,1,107,8,
|
||||
114,76,116,5,124,0,131,1,125,1,110,8,116,6,124,0,
|
||||
88,0,124,1,100,1,107,8,114,112,116,5,100,1,107,8,
|
||||
114,76,116,6,124,0,131,1,125,1,110,8,116,7,124,0,
|
||||
131,1,125,1,124,0,102,1,100,2,100,3,132,1,125,2,
|
||||
116,7,160,8,124,1,124,2,161,2,116,2,124,0,60,0,
|
||||
87,0,53,0,116,0,160,9,161,0,1,0,88,0,124,1,
|
||||
116,8,160,9,124,1,124,2,161,2,116,3,124,0,60,0,
|
||||
87,0,53,0,116,0,160,2,161,0,1,0,88,0,124,1,
|
||||
83,0,41,4,122,139,71,101,116,32,111,114,32,99,114,101,
|
||||
97,116,101,32,116,104,101,32,109,111,100,117,108,101,32,108,
|
||||
111,99,107,32,102,111,114,32,97,32,103,105,118,101,110,32,
|
||||
|
@ -320,22 +320,22 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
32,32,32,95,109,111,100,117,108,101,95,108,111,99,107,115,
|
||||
46,78,99,2,0,0,0,0,0,0,0,0,0,0,0,2,
|
||||
0,0,0,8,0,0,0,83,0,0,0,115,48,0,0,0,
|
||||
116,0,160,1,161,0,1,0,122,24,116,2,160,3,124,1,
|
||||
161,1,124,0,107,8,114,30,116,2,124,1,61,0,87,0,
|
||||
53,0,116,0,160,4,161,0,1,0,88,0,100,0,83,0,
|
||||
116,0,160,1,161,0,1,0,122,24,116,3,160,4,124,1,
|
||||
161,1,124,0,107,8,114,30,116,3,124,1,61,0,87,0,
|
||||
53,0,116,0,160,2,161,0,1,0,88,0,100,0,83,0,
|
||||
114,13,0,0,0,41,5,218,4,95,105,109,112,218,12,97,
|
||||
99,113,117,105,114,101,95,108,111,99,107,218,13,95,109,111,
|
||||
100,117,108,101,95,108,111,99,107,115,114,34,0,0,0,218,
|
||||
12,114,101,108,101,97,115,101,95,108,111,99,107,41,2,218,
|
||||
99,113,117,105,114,101,95,108,111,99,107,218,12,114,101,108,
|
||||
101,97,115,101,95,108,111,99,107,218,13,95,109,111,100,117,
|
||||
108,101,95,108,111,99,107,115,114,34,0,0,0,41,2,218,
|
||||
3,114,101,102,114,17,0,0,0,114,10,0,0,0,114,10,
|
||||
0,0,0,114,11,0,0,0,218,2,99,98,176,0,0,0,
|
||||
115,10,0,0,0,0,1,8,1,2,4,14,1,10,2,122,
|
||||
28,95,103,101,116,95,109,111,100,117,108,101,95,108,111,99,
|
||||
107,46,60,108,111,99,97,108,115,62,46,99,98,41,10,114,
|
||||
57,0,0,0,114,58,0,0,0,114,59,0,0,0,218,8,
|
||||
75,101,121,69,114,114,111,114,114,23,0,0,0,114,49,0,
|
||||
0,0,114,20,0,0,0,218,8,95,119,101,97,107,114,101,
|
||||
102,114,61,0,0,0,114,60,0,0,0,41,3,114,17,0,
|
||||
57,0,0,0,114,58,0,0,0,114,59,0,0,0,114,60,
|
||||
0,0,0,218,8,75,101,121,69,114,114,111,114,114,23,0,
|
||||
0,0,114,49,0,0,0,114,20,0,0,0,218,8,95,119,
|
||||
101,97,107,114,101,102,114,61,0,0,0,41,3,114,17,0,
|
||||
0,0,114,24,0,0,0,114,62,0,0,0,114,10,0,0,
|
||||
0,114,10,0,0,0,114,11,0,0,0,114,53,0,0,0,
|
||||
157,0,0,0,115,28,0,0,0,0,6,8,1,2,1,2,
|
||||
|
@ -911,14 +911,14 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
0,124,0,106,0,125,2,116,1,124,2,131,1,143,180,1,
|
||||
0,116,2,106,3,160,4,124,2,161,1,124,1,107,9,114,
|
||||
54,100,1,160,5,124,2,161,1,125,3,116,6,124,3,124,
|
||||
2,100,2,141,2,130,1,122,106,124,0,106,7,100,3,107,
|
||||
8,114,106,124,0,106,8,100,3,107,8,114,90,116,6,100,
|
||||
4,124,0,106,0,100,2,141,2,130,1,116,9,124,0,124,
|
||||
1,100,5,100,6,141,3,1,0,110,52,116,9,124,0,124,
|
||||
1,100,5,100,6,141,3,1,0,116,10,124,0,106,7,100,
|
||||
7,131,2,115,146,124,0,106,7,160,11,124,2,161,1,1,
|
||||
0,110,12,124,0,106,7,160,12,124,1,161,1,1,0,87,
|
||||
0,53,0,116,2,106,3,160,13,124,0,106,0,161,1,125,
|
||||
2,100,2,141,2,130,1,122,106,124,0,106,8,100,3,107,
|
||||
8,114,106,124,0,106,9,100,3,107,8,114,90,116,6,100,
|
||||
4,124,0,106,0,100,2,141,2,130,1,116,10,124,0,124,
|
||||
1,100,5,100,6,141,3,1,0,110,52,116,10,124,0,124,
|
||||
1,100,5,100,6,141,3,1,0,116,11,124,0,106,8,100,
|
||||
7,131,2,115,146,124,0,106,8,160,12,124,2,161,1,1,
|
||||
0,110,12,124,0,106,8,160,13,124,1,161,1,1,0,87,
|
||||
0,53,0,116,2,106,3,160,7,124,0,106,0,161,1,125,
|
||||
1,124,1,116,2,106,3,124,0,106,0,60,0,88,0,87,
|
||||
0,53,0,81,0,82,0,88,0,124,1,83,0,41,8,122,
|
||||
70,69,120,101,99,117,116,101,32,116,104,101,32,115,112,101,
|
||||
|
@ -931,10 +931,10 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
105,115,115,105,110,103,32,108,111,97,100,101,114,84,114,143,
|
||||
0,0,0,114,150,0,0,0,41,14,114,17,0,0,0,114,
|
||||
50,0,0,0,114,15,0,0,0,114,92,0,0,0,114,34,
|
||||
0,0,0,114,45,0,0,0,114,79,0,0,0,114,109,0,
|
||||
0,0,114,116,0,0,0,114,148,0,0,0,114,4,0,0,
|
||||
0,218,11,108,111,97,100,95,109,111,100,117,108,101,114,150,
|
||||
0,0,0,218,3,112,111,112,41,4,114,95,0,0,0,114,
|
||||
0,0,0,114,45,0,0,0,114,79,0,0,0,218,3,112,
|
||||
111,112,114,109,0,0,0,114,116,0,0,0,114,148,0,0,
|
||||
0,114,4,0,0,0,218,11,108,111,97,100,95,109,111,100,
|
||||
117,108,101,114,150,0,0,0,41,4,114,95,0,0,0,114,
|
||||
96,0,0,0,114,17,0,0,0,218,3,109,115,103,114,10,
|
||||
0,0,0,114,10,0,0,0,114,11,0,0,0,114,93,0,
|
||||
0,0,71,2,0,0,115,34,0,0,0,0,2,6,1,10,
|
||||
|
@ -962,8 +962,8 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
89,0,110,2,88,0,124,1,83,0,41,7,78,114,98,0,
|
||||
0,0,114,145,0,0,0,114,141,0,0,0,114,128,0,0,
|
||||
0,114,22,0,0,0,114,105,0,0,0,41,14,114,109,0,
|
||||
0,0,114,155,0,0,0,114,17,0,0,0,114,15,0,0,
|
||||
0,114,92,0,0,0,114,156,0,0,0,114,6,0,0,0,
|
||||
0,0,114,156,0,0,0,114,17,0,0,0,114,15,0,0,
|
||||
0,114,92,0,0,0,114,155,0,0,0,114,6,0,0,0,
|
||||
114,98,0,0,0,114,106,0,0,0,114,1,0,0,0,114,
|
||||
145,0,0,0,114,4,0,0,0,114,129,0,0,0,114,105,
|
||||
0,0,0,114,151,0,0,0,114,10,0,0,0,114,10,0,
|
||||
|
@ -980,23 +980,23 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
83,0,116,3,124,0,131,1,125,1,100,2,124,0,95,4,
|
||||
122,162,124,1,116,5,106,6,124,0,106,7,60,0,122,52,
|
||||
124,0,106,0,100,0,107,8,114,96,124,0,106,8,100,0,
|
||||
107,8,114,108,116,9,100,3,124,0,106,7,100,4,141,2,
|
||||
107,8,114,108,116,9,100,4,124,0,106,7,100,5,141,2,
|
||||
130,1,110,12,124,0,106,0,160,10,124,1,161,1,1,0,
|
||||
87,0,110,50,1,0,1,0,1,0,122,14,116,5,106,6,
|
||||
124,0,106,7,61,0,87,0,110,20,4,0,116,11,107,10,
|
||||
114,152,1,0,1,0,1,0,89,0,110,2,88,0,130,0,
|
||||
89,0,110,2,88,0,116,5,106,6,160,12,124,0,106,7,
|
||||
161,1,125,1,124,1,116,5,106,6,124,0,106,7,60,0,
|
||||
116,13,100,5,124,0,106,7,124,0,106,0,131,3,1,0,
|
||||
87,0,53,0,100,6,124,0,95,4,88,0,124,1,83,0,
|
||||
41,7,78,114,150,0,0,0,84,114,154,0,0,0,114,16,
|
||||
0,0,0,122,18,105,109,112,111,114,116,32,123,33,114,125,
|
||||
32,35,32,123,33,114,125,70,41,14,114,109,0,0,0,114,
|
||||
116,13,100,6,124,0,106,7,124,0,106,0,131,3,1,0,
|
||||
87,0,53,0,100,3,124,0,95,4,88,0,124,1,83,0,
|
||||
41,7,78,114,150,0,0,0,84,70,114,154,0,0,0,114,
|
||||
16,0,0,0,122,18,105,109,112,111,114,116,32,123,33,114,
|
||||
125,32,35,32,123,33,114,125,41,14,114,109,0,0,0,114,
|
||||
4,0,0,0,114,158,0,0,0,114,152,0,0,0,90,13,
|
||||
95,105,110,105,116,105,97,108,105,122,105,110,103,114,15,0,
|
||||
0,0,114,92,0,0,0,114,17,0,0,0,114,116,0,0,
|
||||
0,114,79,0,0,0,114,150,0,0,0,114,63,0,0,0,
|
||||
114,156,0,0,0,114,76,0,0,0,114,151,0,0,0,114,
|
||||
114,155,0,0,0,114,76,0,0,0,114,151,0,0,0,114,
|
||||
10,0,0,0,114,10,0,0,0,114,11,0,0,0,218,14,
|
||||
95,108,111,97,100,95,117,110,108,111,99,107,101,100,138,2,
|
||||
0,0,115,46,0,0,0,0,2,10,2,12,1,8,2,8,
|
||||
|
@ -1160,7 +1160,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
104,111,100,114,166,0,0,0,114,167,0,0,0,114,149,0,
|
||||
0,0,114,150,0,0,0,114,86,0,0,0,114,169,0,0,
|
||||
0,114,170,0,0,0,114,115,0,0,0,114,97,0,0,0,
|
||||
114,155,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
|
||||
114,156,0,0,0,114,10,0,0,0,114,10,0,0,0,114,
|
||||
10,0,0,0,114,11,0,0,0,114,160,0,0,0,195,2,
|
||||
0,0,115,42,0,0,0,8,2,4,7,2,1,10,8,2,
|
||||
1,12,8,2,1,12,11,2,1,10,7,2,1,10,4,2,
|
||||
|
@ -1256,7 +1256,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
101,32,101,120,101,99,95,109,111,100,117,108,101,40,41,32,
|
||||
105,110,115,116,101,97,100,46,10,10,32,32,32,32,32,32,
|
||||
32,32,41,1,114,97,0,0,0,114,168,0,0,0,114,10,
|
||||
0,0,0,114,10,0,0,0,114,11,0,0,0,114,155,0,
|
||||
0,0,0,114,10,0,0,0,114,11,0,0,0,114,156,0,
|
||||
0,0,61,3,0,0,115,2,0,0,0,0,7,122,26,70,
|
||||
114,111,122,101,110,73,109,112,111,114,116,101,114,46,108,111,
|
||||
97,100,95,109,111,100,117,108,101,99,2,0,0,0,0,0,
|
||||
|
@ -1295,7 +1295,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
0,0,114,2,0,0,0,114,3,0,0,0,114,138,0,0,
|
||||
0,114,171,0,0,0,114,99,0,0,0,114,172,0,0,0,
|
||||
114,166,0,0,0,114,167,0,0,0,114,149,0,0,0,114,
|
||||
150,0,0,0,114,155,0,0,0,114,90,0,0,0,114,169,
|
||||
150,0,0,0,114,156,0,0,0,114,90,0,0,0,114,169,
|
||||
0,0,0,114,170,0,0,0,114,115,0,0,0,114,10,0,
|
||||
0,0,114,10,0,0,0,114,10,0,0,0,114,11,0,0,
|
||||
0,114,173,0,0,0,12,3,0,0,115,46,0,0,0,8,
|
||||
|
@ -1326,7 +1326,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
116,32,108,111,99,107,32,114,101,103,97,114,100,108,101,115,
|
||||
115,32,111,102,32,97,110,121,32,114,97,105,115,101,100,32,
|
||||
101,120,99,101,112,116,105,111,110,115,46,78,41,2,114,57,
|
||||
0,0,0,114,60,0,0,0,41,4,114,30,0,0,0,218,
|
||||
0,0,0,114,59,0,0,0,41,4,114,30,0,0,0,218,
|
||||
8,101,120,99,95,116,121,112,101,218,9,101,120,99,95,118,
|
||||
97,108,117,101,218,13,101,120,99,95,116,114,97,99,101,98,
|
||||
97,99,107,114,10,0,0,0,114,10,0,0,0,114,11,0,
|
||||
|
@ -1763,7 +1763,7 @@ const unsigned char _Py_M__importlib_bootstrap[] = {
|
|||
114,230,0,0,0,41,2,78,78,41,1,78,41,2,78,114,
|
||||
22,0,0,0,41,4,78,78,114,10,0,0,0,114,22,0,
|
||||
0,0,41,50,114,3,0,0,0,114,126,0,0,0,114,12,
|
||||
0,0,0,114,18,0,0,0,114,59,0,0,0,114,33,0,
|
||||
0,0,0,114,18,0,0,0,114,60,0,0,0,114,33,0,
|
||||
0,0,114,42,0,0,0,114,19,0,0,0,114,20,0,0,
|
||||
0,114,49,0,0,0,114,50,0,0,0,114,53,0,0,0,
|
||||
114,65,0,0,0,114,67,0,0,0,114,76,0,0,0,114,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue