I had the strangest problem yesterday in #40528

Define a class:

Object subclass: #AAA
        instanceVariableNames: 'five four one three two'
        classVariableNames: ''
        category: '_UnpackagedPackage'

With one method:

initialize
        super initialize.
        one := 1.
        two := 2.
        three := 3.
        four := 4.
        five := 5

Open a playground and do it & go an instance:

AAA new

In the raw tab execute:

self class allInstVarNames collect: [ :each | each -> (self instVarNamed: each) 
].

Which gives you, as expected:

{#five->5. #four->4. #one->1. #three->3. #two->2}

Now auto generate one accessor, say for one.

Play again, and now the result is:

{#five->1. #four->2. #one->3. #three->4. #two->5}

!?

Reaccepting the class definition fixes the problem.

Sven

PS: this code is used by STON, NeoJSON & NeoCSV.



Reply via email to