This PR beefs up the logic for scope resolving identifiers that occur in the use / rename list of a node. When the node-to-be-resolved is part of a visibility clause such as the 'x' in use M only x or the b in import M.{a as b} etc, the new logic performs a proper scope search of the module being accessed. Thus, when the user hovers over 'fillRandom', which is a visibility clause, the scope resolution process now finds a 'fillRandom' overload.
Fixes https://github.com/chapel-lang/chapel/issues/24905.
This PR beefs up the logic for scope resolving identifiers that occur in the use / rename list of a node. When the node-to-be-resolved is part of a visibility clause such as the 'x' in
use M only x
or theb
inimport M.{a as b}
etc, the new logic performs a proper scope search of the module being accessed. Thus, when the user hovers over 'fillRandom', which is a visibility clause, the scope resolution process now finds a 'fillRandom' overload.Reviewed by @jabraham17 -- thanks!
Testing