On Tue, May 1, 2012 at 9:22 PM, Francisco Garau
<francisco.garau@gmail.com> wrote:
Your code snippet is comparing the associations. The below one evaluates to true:�
(Smalltalk globals associationAt: #ScriptLoader) value�
�==�
((SmalltalkImage >> #shrinkToCore) literalAt: 4) value�
Yes, but the literals of CompiledMethod that refer to classes should have the SAME association as Smalltalk globals. In fact, that's the reason why we have:
Association >> #literalEqual: otherLiteral
��� "Answer true if the receiver and otherLiteral represent the same literal.
��� Variable bindings are literally equals only if identical.
��� This is how variable sharing works, by preserving identity and changing only the value."
��� ^self == otherLiteral
�
instead of the Object implementation.
On 1 May 2012 17:52, Mariano Martinez Peck
<marianopeck@gmail.com> wrote:
(Smalltalk globals associationAt: #ScriptLoader) == ((SmalltalkImage >> #shrinkToCore) literalAt: 4)
gives false when it should be true.� If I do a Compiler recompileAll it gets fixed. So, my question is, is that normal? how could that happen?
is there any real problem behind?
anyway, can we do a recompileAll for the moment?
thanks!
--
Mariano
http://marianopeck.wordpress.com