Yes this is why we also removed from Transcript show: from deep down in the 
system.
From that perspective having a self log: would be better since we could control 
it.
Right now there are plenty of places which holds a reference to the Transcript.
What is strange is that the migration code was recompiling all the methods that 
had a reference
to transcript so that they point to the new one.

Stef



> ahahahahhaha
> 
> HAHAHAHAHAHAHAHAHHAHAHH
> 
> SmalltalkImage >> fixObsoleteReferences
>     "SmalltalkImage current fixObsoleteReferences.
>     SystemNavigation default obsoleteBehaviors size > 0
>         ifTrue: [ SystemNavigation default obsoleteBehaviors inspect.
>             self error:'Still have obsolete behaviors. See inspector']"
> 
>     | informee obsoleteBindings obsName realName realClass |
>     Smalltalk
>         garbageCollect;
>         garbageCollect.
>     CompiledMethod allInstances
>         do: [ :method | 
>             obsoleteBindings := method literals
>                 select: [ :literal | literal isVariableBinding 
>                                     and: [ literal value isBehavior  and: [ 
> literal value isObsolete ]]].
>             obsoleteBindings
>                 do: [ :binding | 
>                     obsName := binding value name.
>                     Transcript
>                         show: 'Binding: ';
>                         show: obsName;
>                         cr.
>                     realName := obsName copyReplaceAll: 'AnObsolete' with: ''.
>                     realClass := Smalltalk globals at: realName asSymbol 
> ifAbsent: [ UndefinedObject ].
>                     binding key: binding key value: realClass ] ].
>     Behavior flushObsoleteSubclasses.
>     Smalltalk
>         garbageCollect;
>         garbageCollect
> 
> 
> 
> remove that lines in yellow and try again :)
> 
> 
> On Wed, May 18, 2011 at 12:30 AM, Alain_Rastoul <[email protected]> wrote:
> When I do Smalltalk fixObsoleteReferences I have
> AnObsoleteTranscript class DNU show:
> :(
> "Mariano Martinez Peck" <[email protected]> a écrit dans le message de 
> news: [email protected]...
> 
> 
> On Wed, May 18, 2011 at 12:06 AM, Alain_Rastoul <[email protected]> wrote:
> Hi,
> 
> Trying to upgrade my 1.3 image with Menu/System/Software Update,
> I had a MNU during update 13191 at
> AnObsoleteTranscript class >> cr
> which comes from:
> UndeclaredVariableWarning>>defaultAction
>  selector ifNotNil: [Transcript cr; nextPutAll: class name, '>>', selector,
> ' ']
>   ifNil: [Transcript cr ].
>  Transcript show: '(' , name , ' is Undeclared) '.
>  ^true
> 
> Something is missing or I did something wrong?
> 
> 
> Probably not. But probably Smalltalk fixObsoleteReferences also fixes it.
> 
>  
> TIA
> Regards,
> Alain
> 
> 
> 
> 
> 
> 
> 
> -- 
> Mariano
> http://marianopeck.wordpress.com
> 
> 
> 
> 
> -- 
> Mariano
> http://marianopeck.wordpress.com
> 


Reply via email to