Nile makes #testProvidedMethodBindingsWithConflicts fail in 3.9

Damien Cassou damien.cassou at
Sat Jun 9 08:36:53 UTC 2007


if you take a fresh 3.9 and run the test
TraitCompositionTest>>#testProvidedMethodBindingsWithConflicts, it
passes. Then, if you load Nile (package Nile-All from, the test fail. However, Nile has
neither extension nor override in any trait related class.

the test is:

  | traitWithConflict methodDict |
  traitWithConflict := self createTraitNamed: #TraitWithConflict
self t1 + self t4.
  methodDict := traitWithConflict methodDict.
  self assert: methodDict size = 6.
  self assert: (methodDict keys includesAllOf: #(
      assert: (methodDict at: #m11) decompileString = 'm11
     self traitConflict'

The failing assert is the last one. After having loaded Nile, m11 now
is "self requirement" instead of "self traitConflict".

Can you explain me what happens please?

Damien Cassou

More information about the Squeak-dev mailing list