You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This check for overrides happens before MarkStep, when the linker has not built type hierarchy info. Even when this changes to run during MarkStep with #11374, there is no guarantee that the override info will be complete, so it will likely neglect to preserve some exported methods that have overrides which aren't discovered yet.
It seems like this could be changed to walk up the type hierarchy instead (though this would require looking at base methods for many unannotated methods), or it could be cached as part of some custom type map logic that pre-loads assemblies as mentioned in #11447. (I am filing this as a separate issue because it seems like a correctness concern, not just a perf optimization).
The text was updated successfully, but these errors were encountered:
This check for overrides happens before MarkStep, when the linker has not built type hierarchy info. Even when this changes to run during MarkStep with #11374, there is no guarantee that the override info will be complete, so it will likely neglect to preserve some exported methods that have overrides which aren't discovered yet.
https://github.com/xamarin/xamarin-macios/blob/50b68d4aab0a1099113a68c04aad5a77592b6e52/tools/linker/MarkNSObjects.cs#L84-L91
It seems like this could be changed to walk up the type hierarchy instead (though this would require looking at base methods for many unannotated methods), or it could be cached as part of some custom type map logic that pre-loads assemblies as mentioned in #11447. (I am filing this as a separate issue because it seems like a correctness concern, not just a perf optimization).
The text was updated successfully, but these errors were encountered: