You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Cases generator gets confused about the number of values to pop in case of errors in some macros #122155
op(FIRST, (x, y -- a, b)) {
a = x;
b = y;
}
op(SECOND, (a, b -- a, b)) {
}
op(THIRD, (j, k --)) {
ERROR_IF(cond, error);
}
macro(TEST) = FIRST + SECOND + THIRD;
"""
Generates:
...
if (cond) goto pop_4_error;
...
This should be if (cond) goto pop_2_error;
I noticed this error when working on a fix to #122029, so this isn't just a theoretical bug.
Activity
GH-122155: Fix cases generator to correctly compute 'peek' offset for…
pythonGH-122155: Fix cases generator to correctly compute 'peek' offs…
pythonGH-122155: Fix cases generator to correctly compute 'peek' offs…
pythonGH-122155: Fix cases generator to correctly compute 'peek' offs…
[3.13] GH-122155: Fix cases generator to correctly compute 'peek' off…
GH-122155: Track local variables between pops and pushes in cases gen…
pythonGH-122155: Track local variables between pops and pushes in cas…