-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Track last index in parameter marshalling #87846
Conversation
Tagging subscribers to this area: @dotnet/interop-contrib Issue DetailsTracks the last index marshalled in the interop generators to ensure we don't cleanup any unmarshalled elements. To determine if the We'll need more testing around the ComInterfaceGenerator, but I would like to get this into preview 6 for LibraryImportGenerator.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As long as we don't generate invalid code for GeneratedComInterface, I'm supportive of getting this in for P6
It looks like the unit tests all timed out in CI, but only for the LibraryImportGenerator unit tests. Very odd. |
Looks like this probably does hurt perf significantly enough to cause some timeouts. I made #88060 as an alternative. |
#88060 was accepted instead of this one |
Tracks the last index marshalled in the interop generators to ensure we don't cleanup any unmarshalled elements.
To determine if the
lastElementMarshalled
variable is used, we need to generate the cleanup stage, which can be expensive. We also could generate_ = __param_lastIndexMarshalled
if there is no cleanup so that there is no warning for an unused variable, but we don't need to generate the cleanup stage twice.We'll need more testing around the ComInterfaceGenerator, but I would like to get this into preview 6 for LibraryImportGenerator.