Look like the suspect is in SystemNavigation and is here (change "class" to "behavior" when creating the Method reference):



addSelectorsReferingTo: aSymbol in: class to: sortedSenders special: special byte: byte
    {class. class class} do: [:behavior| (behavior
        thoroughWhichSelectorsReferTo: aSymbol
        special: special
        byte: byte) do: [ :sel |
            sortedSenders add: (MethodReference
                class: behavior
                selector: sel) ]]


-----------------
Benoit St-Jean
A standpoint is an intellectual horizon of radius zero.
(Albert Einstein)





From: laurent.laffont@gmail.com
Date: Sun, 27 Jun 2010 08:33:52 +0200
To: pharo-project@lists.gforge.inria.fr
Subject: [Pharo-project] SystemNavigation#allSendersOf: vs SystemNavigation#allReferencesTo:

Hi,

in Autotest I search for all senders of a method. The first version used SystemNavigation#allSendersOf: which sometimes returns wrong results (I think). For example:

senders := (SystemNavigation default allSendersOf: #methodsFor:).
senders size.  "answers 18"
senders collect: [:aReference| aReference compiledMethod].

debuggers open as ChangeSet#scanCategory doesn't exist (it's on the class side but allSendersOf: returns #scanCategory reference on class side and instance side).

With #allReferencesTo:

senders := (SystemNavigation default allReferencesTo: #methodsFor:).
senders size.  "answers 16"

Is this a bug in #allSendersOf: or I don't understand ? 

Cheers,

Laurent Laffont

http://pharocasts.blogspot.com/
http://magaloma.blogspot.com/


Enter for a chance to get your town photo on Bing.ca! Submit a Photo Now!