[squeak-dev] Senders "too thorough"

Levente Uzonyi leves at caesar.elte.hu
Sat Jul 20 11:36:17 UTC 2019


Hi All,

With the recent changes of literal searching, I've found something 
unusual.
If you evaluate the following snippet, there will be some false positives 
(e.g. Scanner >> #initialize) on the list.
These methods do not reference the searched literal, but they reference a 
class variable (TypeTable), which happens to be an array containing the 
searched symbol:

SystemNavigation default browseAllCallsOn: #xLitQuote.

The reason why it appears is that CompiledCode >> #hasLiteral: will try 
Object >> #hasLiteral: first, which uses #allLiteralsDo:, which descends 
into the value of the binding of the TypeTable class variable and finds the symbol.


Levente


More information about the Squeak-dev mailing list