[squeak-dev] Updating a 5.3-19335 image fails on Pi

tim Rowledge tim at rowledge.org
Sat May 9 19:31:07 UTC 2020



> On 2020-05-09, at 12:11 PM, Nicolas Cellier <nicolas.cellier.aka.nice at gmail.com> wrote:
> 
> Hi Tim,
> From time to time I experience this exact same problem. It's not new, just rare. There are two different instances of the same Symbol... i have patched with a workaround, but I'd be curious to learn how this happens...
> 

Well, that *is* interesting. Obviously shouldn't happen, so what is behind it?

In the depths of the compile stuff I saw that the selector is derived from the source input in Parser>>#method:context:right at the beginning
`	sap := self pattern: doit inContext: ctxt.
	self properties selector: (sap at: 1).
	encoder selector: (sap at: 1).`
The Parser>>#pattern:inContext: code clearly sends asSymbol to the string it extracts, which in turn leads us to #like: in WeakSet, which of course relies on hash values and we have had a little fun with those and 32/64 bit stuff.


tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Strange OpCodes: RC: Rewind Core




More information about the Squeak-dev mailing list