GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — Code object creation (const interning) can mutate tuples · Issue #121954 · python/cpython Open Labels type-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error DescriptionIn #121863 (comment), Mark suspected something is off in const interning for code objects. Indeed, there is. For example: # a bit of setup import sys interned = sys.intern("foobar") def f(): var = "foobar" # my_tuple = (None, 'foobar'), but with an un-interned string my_tuple = (None, str(b'foobar', 'ascii')) print(id(my_tuple), id(my_tuple[1])) # pass my_tuple as an input argument for a new code object f.__code__.replace(co_consts=my_tuple) # there's now a different object in the tuple! print(id(my_tuple), id(my_tuple[1])) I'm working on a change to:
Linked PRsActivity
MetadataMetadataAssigneesLabelstype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error ProjectsMilestoneRelationshipsDevelopmentIssue actions |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |