it seems that the descriptors for members of classes are resolved (lazily) in AbstractLazyMemberScope (doGetFunctions/doGetClasses/doGetProperties), which in turn calls functions from DescriptorResolver/FunctionDescriptorResolver but no check is done here for conflicting names