[Python-Dev] Alternative implementation of string interning

Jack Jansen Jack.Jansen@cwi.nl
Tue, 2 Jul 2002 15:25:20 +0200


On Tuesday, Jul 2, 2002, at 12:37 Europe/Amsterdam, Oren Tirosh wrote:
>> The macimport code relies on the ids remaining the same. But it is easy
>> to fix (just add an incref). I'll also change it to use
>> PyString_CheckInterned.
>
> No, an incref there would leak references.  Nothing needs to be changed.
>
Uhm... I'm confused: macimport stores a pointer to the object if it's interned (the object in question is one of the strings in sys.path). It didn't INCREF the object, and that wasn't needed up until now because interned objects can never go away. However, if they can go away I would think that storing a pointer would definitely call for an INCREF...