Even if a virtual method is not used directly from Swift, it might get emitted into the vtable, and in that case the IR for it should be emitted to avoid linker errors.
Fixes https://github.com/apple/swift/issues/61730.
This test would fail on windows when built with assertions as the
`CxxShim` module was not imported. Add the missing import which is
required to enable this test on Windows.
Calling `NominalTypeDecl::lookupDirect` triggers deserialization of Swift extensions for the type. `ClangRecordMemberLookup` shouldn't assume it is allowed to deserialize Swift extensions for the given C++ type: there might be extensions which reference the module that is currently being imported, which causes circular request dependency errors.
This commit adds very basic support for importing and calling base class methods, getting and setting base class fields, and using types inside of base classes.