Message408686
Because functions are mutable, specifically because the __code__ attribute is mutable, we need to version functions when specializing.
However, some specializations (for special methods mainly) only have space for 16 bit versions.
It is likely that programs will have more than 2**16 functions versions, but it is much less likely that they will have more than 2**16 versions of special methods.
We should partition the version space into 1-0xffff for use by special methods and 0x1000+ for use by other methods.
See https://github.com/python/cpython/pull/30129 for an example of why this is needed. |
|
Date |
User |
Action |
Args |
2021-12-16 11:06:10 | Mark.Shannon | set | recipients:
+ Mark.Shannon, brandtbucher |
2021-12-16 11:06:10 | Mark.Shannon | set | messageid: <1639652770.25.0.708221453944.issue46097@roundup.psfhosted.org> |
2021-12-16 11:06:10 | Mark.Shannon | link | issue46097 messages |
2021-12-16 11:06:10 | Mark.Shannon | create | |
|