[squeak-dev] "Duplicate" MethodReferences in implementorsOf:

Chris Muller asqueaker at gmail.com
Sat Nov 2 20:14:42 UTC 2013


"Pushed a fix?"

"Hasn't happened?"

What do you mean, could you clarify?

On Sat, Nov 2, 2013 at 7:54 AM, Levente Uzonyi <leves at elte.hu> wrote:
> I thought I've pushed a fix for this months ago, but it seems like it hasn't
> happened yet.
>
>
> Levente
>
>
> On Sat, 2 Nov 2013, Frank Shearar wrote:
>
>> Look for the implementors of #rename:. You'll see 17 Trait entries,
>> each = to each other but not ==. I've traced this back to _something_
>> about Environment's declarations.
>>
>> In a Workspace,
>>
>> n := SystemNavigation default.
>> a := OrderedCollection new.
>> n allBehaviorsDo: [:cls | a add: cls].
>> {a size. a asSet size} "#(4384 4367)"
>> "4384 - 4367 = 17"
>>
>> So we have 17 duplicates being reported.
>>
>> If you explore Smalltalk in a "full fat" trunk (specifically, one that
>> still has 311Deprecated) and run "self allTraits" you'll get 17. Hmm.
>> Explore "self allTraits" and you'll see the 17 Traits from
>> 311Deprecated. So far, so good. Try cmd-b one of those Traits (say,
>> TTransformationCompatibility  and... you'll browse Trait. (You can get
>> to TTransformationCompatibility by opening a new browser and searching
>> for it.)
>>
>> So for some reason Smalltalk thinks that every one of these Trait
>> names map to Trait. For example, cmd-b TTransformationCompatibility in
>> a Workspace and you end up browsing Trait.
>>
>> I'm still investigating why this is broken, but if anyone knows, feel
>> free to let me know :)
>>
>> frank
>>
>>
>


More information about the Squeak-dev mailing list