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
Changed strategy, func_class_dict and *_CLASS_DICT.
Rather than changing a bunch of stuff (and confusing the runtime
by having __annotate__ functions have *both* fast *and* slow locals)
we're changing the approach. For delayed-evaluation expressions
(e.g. __annotate__ in PEP 649) we're going to change the LOAD_NAME
opcodes we generate into LOAD_CLASS_DICT opcodes. Then when we
bind that function (e.g. an __annotate__ inside a class body) we're
going to use the new INTRINSIC2 SET_CLASS_DICT opcode to set the
new func_class_dict field. LOAD_CLASS_DICT does its lookup in
frame->f_funcobj->func_class_dict, so, we didn't make the frame larger!
0 commit comments