Now that expressions have types, there's no need to "return" the members
from deeper in the hierarchy anymore.
Since member type resolution now depends on the type of the left-hand
expression of MemberAccess, variables and expressions need to be resolved
in a loop until there's nothing more to resolve.