Currently, checkmember.analyze_member_access and subtypes.find_member share quite a bit of logic. We could refactor this to some common place. In addition, bind_self that is used in both modules creates an import cycle, so that it makes sense to move it to a separate location.
This is a follow-up of #3132
Currently,
checkmember.analyze_member_accessandsubtypes.find_membershare quite a bit of logic. We could refactor this to some common place. In addition,bind_selfthat is used in both modules creates an import cycle, so that it makes sense to move it to a separate location.This is a follow-up of #3132