Hi Marcus,

Your answer is as I suspected.
The suggestion to add an instance variable, forcing a recompile, from Andrew P Black, seems to resolve the problem..
There still remains the question of how the system allowed the situation to arise in the first place tho..

Thanks for the help.
KR
Graham

Marcus Denker wrote:
On Jun 25, 2012, at 1:22 AM, Graham McLeod wrote:
Here is an example:

Class definition:
   Thing subclass: #Relationship
   instanceVariableNames: 'context fromNode properties relType toNode'
   classVariableNames: ''
   poolDictionaries: ''
   category: 'Sapiento'

Source Code:
   relType: anObject
   relType := anObject
Byte Codes:
   13 <10> pushTemp: 0
   14 <62> popIntoRcvr: 2
   15 <78> returnSelf
Decompiled Code:
   relType: anObject
   properties := anObject

NOTE: properties is updated instead of relType.


It seems that the method has not been recompiled correctly when you added instance variables.

The decompiled code and the bytecode are in sync:   14 <62> popIntoRcvr: 2 is storing into 
the properties instance variable, and the decompiled code shows it correctly. 
But the bytecode should have been regenerated and do  14 <62> popIntoRcvr: 3

So the bug is definitly related to not recompiling the methods after the shape of the class was changed.

	Marcus


--
Marcus Denker -- http://marcusdenker.de