Why does Squeak what it does when a method references a non-existing ivar?

Cees De Groot cdegroot at gmail.com
Sat Nov 12 00:43:05 UTC 2005


I had a funny problem with Seaside where a child component behaved in
a funny way, which turned out to be caused by the ivar representing
the child component not being present in the class.

On investigation, it turns out that when the class is recompiled,
methods that had e.g. a storeIntoRcvr: opcode to write the now-absent
ivar get recompiled with a storeIntoLit: opcode.

Shouldn't the compiler throw an error instead? This can result in very
hard-to-track bugs...



More information about the Squeak-dev mailing list