-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Update Marshal.QueryInterface() argument modifier (take 2) #94470
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
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. |
AaronRobinsonMSFT
left a comment
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.QueryInterfaceto useinfor theGuidparameter (as approved in #85911). I've also updated mostMarshal.QueryInterfacecallsites through libraries and tests to leverage the newinparameter modifier.F# also just got a fix to handle
ref readonlymethod parameters: dotnet/fsharp#16232.cc. @tannergooding @vzarytovskii