Nile makes #testProvidedMethodBindingsWithConflicts fail in 3.9
Daniel Vainsencher
danielv at tx.technion.ac.il
Sat Jun 9 14:38:36 UTC 2007
Hi Damien,
I think I have found the bug, and it is in the following method:
TraitMethodDescription>>requiredMethodForArguments: aNumber ifAbsentPut:
aBlock
"ConflictMethods is an array that caches the generated conflict
methods. At position 1: binary method; 2: unary method;
n+2: keywordmethod with n arguments."
^(RequiredMethods at: aNumber)
ifNil: [ConflictMethods at: aNumber put: aBlock value]
This results in the following easy to diagnose symptom:
Print-it:
((TraitMethodDescription classPool at: #ConflictMethods) at: 2)
decompileString
gives:
'm11
self requirement'
instead of:
'm11
self traitConflict'
But I'm a bit rusty, so please double check me, and then send in the
trivial fix. Ah, the wonders of caches/copy&paste...
Daniel
Damien Cassou wrote:
> 2007/6/9, stephane ducasse <stephane.ducasse at free.fr>:
>> can you add that to mantis and add also the problems you describe in
>> the paper (about self requirement) taking precedence on ...
>
> http://bugs.squeak.org/view.php?id=6533
> http://bugs.squeak.org/view.php?id=6534
>
More information about the Squeak-dev
mailing list
|