-
Notifications
You must be signed in to change notification settings - Fork 516
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
[src] Make all generated P/Invokes use blittable signatures. Fixes #18685. #19034
Conversation
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…marin#18685. This means: * Change all bool and char arguments in P/Invokes to be byte and ushort, respectively. * Change all out/ref arguments to be pointers instead. * Update managed binding code accordingly. * Update a struct (GKTriangle) to not use a MarshalAs field, but instead only use blittable fields. * Update tests accordingly. Fixes xamarin#18685.
31dcb0d
to
98d8d45
Compare
This comment has been minimized.
This comment has been minimized.
@rolfbjarne THANK YOU, it was in my todo. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…pServices.Unsafe now.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Our bgen testing infrastructure isn't really setup to add a reference to a NuGet (System.Runtime.CompilerServices.Unsafe), so just move a few tests that hit this issue to be .NET only (when the System.Runtime.CompilerServices.Unsafe reference is implicit).
💻 [PR Build] Tests on macOS M1 - Mac Big Sur (11.5) passed 💻✅ All tests on macOS M1 - Mac Big Sur (11.5) passed. Pipeline on Agent |
💻 [PR Build] Tests on macOS M1 - Mac Ventura (13.0) passed 💻✅ All tests on macOS M1 - Mac Ventura (13.0) passed. Pipeline on Agent |
✅ API diff for current PR / commitLegacy Xamarin (No breaking changes)
NET (empty diffs)
✅ API diff vs stableLegacy Xamarin (No breaking changes).NET (No breaking changes)ℹ️ Generator diffGenerator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes) Pipeline on Agent |
💻 [CI Build] Windows Integration Tests passed 💻✅ All Windows Integration Tests passed. Pipeline on Agent |
📚 [PR Build] Artifacts 📚Packages generatedView packagesPipeline on Agent |
This comment has been minimized.
This comment has been minimized.
🔥 [CI Build] Test results 🔥Test results❌ Tests failed on VSTS: simulator tests 0 tests crashed, 6 tests failed, 228 tests passed. Failures❌ monotouch tests [attempt 2]
Html Report (VSDrops) Download Successes✅ bcl: All 69 tests passed. [attempt 2] Html Report (VSDrops) Download Pipeline on Agent |
Test failures are unrelated (https://github.com/xamarin/maccore/issues/2630) |
This means:
One side effect is that legacy binding projects may need a reference to the
System.Runtime.CompilerServices.Unsafe
NuGet now (this is a built-in dependency in .NET) in order to compile successfully.Fixes #18685.