-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Update Marshal.QueryInterface() argument modifier (take 2) #94470
Update Marshal.QueryInterface() argument modifier (take 2) #94470
Conversation
…)" This reverts commit a60b66d.
Note regarding the This serves as a reminder for when your PR is modifying a ref *.cs file and adding/modifying public APIs, please make sure the API implementation in the src *.cs file is documented with triple slash comments, so the PR reviewers can sign off that change. |
Tagging subscribers to this area: @dotnet/interop-contrib Issue DetailsFollow up from a conversation with @AaronRobinsonMSFT offline. Now that .NET 8 is done and we're early in the .NET 9 cycle (and most importantly, all tooling is already updated to correctly handle F# also just got a fix to handle cc. @tannergooding @vzarytovskii
|
We also need to loop with any interop source generator teams about this change. Specifically CsWinRT and CsWin32 - @manodasanW and @AArnott. |
94db88a
to
f93d82b
Compare
Alright so to recap:
@AaronRobinsonMSFT does this sound acceptable? And do we need any specific other action here before merging? I could also open tracking issues for this in the other repos if it helped, so it doesn't risk getting lost? |
@Sergio0694 It looks like CsWin32 created some mitigation for addressing microsoft/CsWin32#1014. Therefore, I think CsWin32 is good. Please confirm the fix for that issue makes sense. We should also have a tracking issue in CsWinRT that references this issue. |
Ooh that's awesome, I had missed that one in CsWin32! Yeah the fix seems completely fine for this change as well. Using I'll open a tracking issue in CsWinRT as well 👍 |
Opened a tracking issue for CsWinRT: microsoft/CsWinRT#1388. |
The CsWinRT team acknowledged this change offline and they are good with responding. Given that CsWin32 has responded to similar API changes for this semantic update, I think they should be okay here too. I'm going to retrigger this PR on the latest just to make sure we are still clean. |
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.
I'm good with this. Thanks for trying again.
@tannergooding Any more thoughts on this?
@AaronRobinsonMSFT, LGTM. Feel free to merge whenever you think its ready. |
Note
This reverts commit a60b66d (from #91983)
Follow up from a conversation with @AaronRobinsonMSFT offline. Now that .NET 8 is done and we're early in the .NET 9 cycle (and most importantly, all tooling is already updated to correctly handle
ref readonly
), we can attempt again to changeMarshal.QueryInterface
to usein
for theGuid
parameter (as approved in #85911). I've also updated mostMarshal.QueryInterface
callsites through libraries and tests to leverage the newin
parameter modifier.F# also just got a fix to handle
ref readonly
method parameters: dotnet/fsharp#16232.cc. @tannergooding @vzarytovskii