-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add correct ImplementingType and InterfaceImpl to DIM cache in TypeMapInfo #98513
Conversation
Tagging subscribers to this area: @agocke, @sbomer, @vitek-karas Issue DetailsFrom #98436 (comment) We don't add the correct Working on a test case that fails without this change.
|
Failures are known |
From #98436 (comment)
We don't add the correct
ImplementingType
to the DIM's cache. Instead we can pass the correct implementing type toFindAndAddDefaultInterfaceImplementations
. This worked fine for assemblies compiled by Roslyn because it adds an InterfaceImpl for all transitive interfaces, but IL doesn't require that.Test cases for this require types that don't have interfaceimpls for all their interfaces directly on their type, but that also fails for another reason: #98536. Test cases in #98540 should cover both issues.