Skip to content
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

Enable IsAotCompatible for CsWinRT, fix all AOT warnings #1463

Merged
merged 12 commits into from
Mar 13, 2024

Conversation

Sergio0694
Copy link
Member

Closes #1433, #1324

This PR includes some changes to finally fix all AOT warnings on CsWinRT:

@Sergio0694 Sergio0694 force-pushed the user/sergiopedri/guard-mgt-calls branch from c9f467a to 05d472f Compare March 12, 2024 18:27
* Experiment with changes to avoid nullable.value going down the helper type route

* Fix build

* Fix nullable structs and delegates

* Fix

* Fix tests

* Fix issue where the class implementing the interface can be trimmed and we rely on IDIC cast to create an instance of the interface.  But that doesn't work with the interface inherits generic interfaces on AOT.  This addresses that by making sure there is a fallback class available to use for the interface.

* Fix warning

* Improvements to nullable scenario (caching and removing old code paths)

* Move where we do generic type initialization for derived generic interfaces impl class

* Fix issue with Interface<> missing in impl classes by converting most of the remaining ones using it to the new format

* Add test

* PR feedback

* PR feedback for IID
@Sergio0694 Sergio0694 force-pushed the user/sergiopedri/guard-mgt-calls branch from 05d472f to 306fb63 Compare March 12, 2024 21:32
@Sergio0694 Sergio0694 merged commit 9486d45 into staging/AOT Mar 13, 2024
10 checks passed
@Sergio0694 Sergio0694 deleted the user/sergiopedri/guard-mgt-calls branch March 13, 2024 00:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
2 participants