Hi, All methods (and methods of blocks) that are executing already will keep executing the wrong code.
As only offsets change, one could do on-stack replacement of these methods, but nobody has implemented that yet. It might be good to have a check that warns when changing layout of classes that are active on the stack…. > On 30 Aug 2015, at 14:49, Yuriy Tymchuk <[email protected]> wrote: > > Yes, but the situation is weird, because if you look at the variable in the > debugger - everything is ok. Is there a way to understand what has not > mutated? > > Uko > > >> On 30 Aug 2015, at 13:35, stepharo <[email protected]> wrote: >> >> may be code executing the check did not get mutated when the system changed >> shape. >> >> Le 30/8/15 11:00, Marcus Denker a écrit : >>>> On 30 Aug 2015, at 10:57, Yuriy Tymchuk <[email protected]> wrote: >>>> >>>> So the byte symbol comes from the “position” inst var of the superclass. >>>> I’m not completely sure how it works on low level, but I guess that >>>> because you a a new variable, the others shift and it accesses the value >>>> that is actually mapped to another variable. Is it the issue of my >>>> implementation? How can I improve it? >>>> >>> The class builder is normally supposed to fix that transparently: You add >>> var, all methods are recompiled and all instances are migrated. There could >>> be bugs there. >>> >>>> Uko >>>> >>>>> On 28 Aug 2015, at 10:50, stepharo <[email protected]> wrote: >>>>> >>>>> When I add an iv to Model I get a ByteSymbol>>entity: >>>>> >>>>> QANautilusPluggin>>initialize >>>>> >>>>> changeHandler := GLMAsyncTask new >>>>> priority: Processor activePriority - 1; >>>>> doInBackground: [ morph entity: self currentEntity ]; >>>>> yourself >>>>> >>>>> And in the debugger morph is a a Morph exactly a >>>>> QANautilusPluginMorph(493092864) >>>>> >>>>> Yuriy do you use thread? >>>>> >>>>> Stef >>>>> >>>>> >>>>> >>>> >>> >>> >> >> > >
