On 14 March 2013 22:06, Camillo Bruni <[email protected]> wrote:
> I still got one:
>
> Add a new instance variable at end in Behavior => Image hangs after migrating 
> ~420 classes ;)
> The same goes for Set => image hangs

This is image side problem:

SubclassResponsibility: Set had the subclass responsibility to implement #add:
Set(Object)>>subclassResponsibility
Set(Collection)>>add:
EncoderForV3PlusClosures(Encoder)>>noteOptimizedSelector:
MessageNode>>sizeCodeForValue:
MessageNode(ParseNode)>>sizeCodeForReturn:
ReturnNode>>sizeCodeForValue:
ReturnNode(ParseNode)>>sizeCodeForBlockValue:
BlockNode>>sizeCodeForEvaluatedValue:
MethodNode>>generate:
Set class(Behavior)>>recompile:from:
Set class(Behavior)>>compileAllFrom: in Block: [:t3 | self recompile:
t3 from: t1]
MethodDictionary>>keysDo:
Set class(Behavior)>>selectorsDo:
Set class(Behavior)>>compileAllFrom:
Set class(Class)>>compileAllFrom:
ClassBuilder>>newSubclassOf:type:instanceVariables:from:
ClassBuilder>>name:inEnvironment:subclassOf:type:instanceVariableNames:classVariableNames:poolDictionaries:category:unsafe:
in Block: SubclassResponsibility: Set had the subclass responsibility
to implement #do:

its actually interesting case:
 you modifying the Set and then recompiling its methods
but during compilation you using Set which has empty method dictionary..

the fix is trivial: do not install new class until you finish
recompiling all stuff.
it sounds trivial but may be not so trivial to fix

-- 
Best regards,
Igor Stasenko.

Reply via email to