Message380832
So the biggest difference I see is that ForwardRef._evaluate() has grown a recursive_guard argument in 3.9. This makes me think that in 3.8, only one level of evaluation was happening, and in 3.8, we keep evaluating until we don't see a string or ForwardRef.
The specific examples all happen at a point where the forward ref "C" cannot be resolved at all yet (since they're happening *in the class body*).
Possibly the best way out is to treat unresolved references differently, and just return the ForwardRef to the caller -- after all this is what the example does in 3.8. |
|
Date |
User |
Action |
Args |
2020-11-12 16:01:53 | gvanrossum | set | recipients:
+ gvanrossum, glyph, ethan smith, BTaskaya, mental, ryansobol |
2020-11-12 16:01:53 | gvanrossum | set | messageid: <1605196913.19.0.625776161443.issue41987@roundup.psfhosted.org> |
2020-11-12 16:01:53 | gvanrossum | link | issue41987 messages |
2020-11-12 16:01:53 | gvanrossum | create | |
|