Something odd in squeak-dev-beta-123? , (was Re: [BUG] in FT2Handle class >> deregister)

Damien Cassou damien.cassou at gmail.com
Fri May 25 19:16:09 UTC 2007


2007/5/25, Andrew Tween <amtween at hotmail.com>:
> Hi Damien,
> ----- Original Message -----
> From: "Damien Pollet" <damien.pollet at gmail.com>
> To: "The general-purpose Squeak developers list"
> <squeak-dev at lists.squeakfoundation.org>; "Andrew Tween" <amtween at hotmail.com>
> Sent: Friday, May 25, 2007 2:08 PM
> Subject: [BUG] in FT2Handle class >> deregister
>
>
> > this method calls #remove:ifAbsent: on an instance of
> > IdentityDictionary which causes a shouldNotImplement error when
> > loading the FreeType Plus packages from universes in a squeak-dev-123
> > image.
>
> Thanks.
> Somehow a class variable for a loaded class has been initialized to an
> IdentityDictionary rather than to nil.
> I think there is something odd going on in the squeak-dev-123 image.
>
> The following code illustrates this...
>
>     Object subclass: #TEST
>          instanceVariableNames: ''
>          classVariableNames: 'Registry'
>          poolDictionaries: ''
>          category: 'TEST'.
>     (Smalltalk at: #TEST) classPool at: #Registry
>
> It evaluates to an IdentityDictionary() in squeak-dev-beta-123.
> But, in squeak-dev-beta-115, it evaluates to nil.
>
> Why would a class var of a newly created class be initialized to an
> IdentityDictionary, rather than to nil?

What happens in a stock 3.10 image? I guess the problem comes from a
bug in 3.10.


-- 
Damien Cassou



More information about the Squeak-dev mailing list