Visitar URL original
[CoreFoundation] Match native dispatch void return types. by rolfbjarne · Pull Request #27313 · dotnet/macios · GitHub
Skip to content

[CoreFoundation] Match native dispatch void return types. - #27313

Open
rolfbjarne wants to merge 1 commit into
dev/rolf/retained-factory-returnsfrom
dev/rolf/dispatch-pinvoke-fixes
Open

rolfbjarne wants to merge 1 commit into
dev/rolf/retained-factory-returnsfrom
dev/rolf/dispatch-pinvoke-fixes

Conversation

@rolfbjarne

Copy link
Copy Markdown
Member

The dispatch retain/release/main functions and six dispatch source operations return void in the Apple headers. Their private imports incorrectly declared IntPtr returns, although every managed caller already ignores the result. Match the native ABI without changing any public APIs or call behavior.

Note

This pull request description was generated by Copilot.

🤖 Pull request created by Copilot

The dispatch retain/release/main functions and six dispatch source operations return void in the Apple headers. Their private imports incorrectly declared IntPtr returns, although every managed caller already ignores the result. Match the native ABI without changing any public APIs or call behavior.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 4c41723a-44ab-4c85-a5f0-5debb01bac3e
Copilot AI balanced review requested due to automatic review settings November 12, 2026 08:24

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No active review issues are reported for the private CoreFoundation dispatch return-type corrections.

No open issues 🎉

What changed in this PR

Corrects nine private CoreFoundation dispatch imports to return void, matching Apple’s native signatures without changing public APIs or managed call behavior.

Changes:

  • Updates dispatch retain, release, and main imports.
  • Updates six dispatch source operations, including handler registration, data merging, and cancellation.
File Description
src/​CoreFoundation/​DispatchSource.cs Corrects six dispatch source import return types to void.
src/​CoreFoundation/​Dispatch.cs Corrects dispatch_release, dispatch_retain, and dispatch_main return types to void.

Review effort: Balanced

@vs-mobiletools-engineering-service2

Copy link
Copy Markdown
Collaborator

✅ API diff for current PR / commit

NET (empty diffs)

✅ API diff vs stable

NET (empty diffs)

ℹ️ Generator diff

Generator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes)

Pipeline on Agent
Hash: f649e63afc0cdcc161123ce1ea079822cd6433f2 [PR build]

@rolfbjarne
rolfbjarne added this pull request to stack #27240 November 12, 2026 09:42
@vs-mobiletools-engineering-service2

Copy link
Copy Markdown
Collaborator

🔥 [CI Build #f649e63] Test results 🔥

Test results

❌ Tests failed on VSTS: test results

0 tests crashed, 6 tests failed, 211 tests passed.

Failures

❌ dotnettests tests (macOS)

1 tests failed, 0 tests passed.

Failed tests

  • DotNet tests: Failed (Execution failed with exit code 1)
    • Xamarin.Tests.AppSizeTest.CoreCLR_R2R(MacOSX,"osx-arm64;osx-x64"...: App size changed significantly (+17,043 bytes (16.6 KB = 0.0 MB) different > tolerance of +-10,240 bytes (10.0 KB = 0.0 MB)). Ex...

Html Report (VSDrops) Download

❌ introspection tests

2 tests failed, 2 tests passed.

Failed tests

  • introspection/Mac Catalyst/Debug: Failed (Test run failed.
    Tests run: 43 Passed: 40 Inconclusive: 0 Failed: 1 Ignored: 2)
  • introspection/iOS - simulator/Debug: Failed

Html Report (VSDrops) Download

❌ Tests on macOS Sonoma (14) tests

1 tests failed, 4 tests passed.

Failed tests

  • macOS/osx-x64 monotouch-test: Failed (exit code 1)
    • [FAIL] Trust_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
    • [FAIL] Trust2_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
  • MacCatalyst/maccatalyst-x64 monotouch-test: Failed (exit code 1)
    • [FAIL] Trust_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
    • [FAIL] Trust2_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant

Html Report (VSDrops) Download

❌ Tests on macOS Sequoia (15) tests

1 tests failed, 4 tests passed.

Failed tests

  • macOS/osx-x64 monotouch-test: Failed (exit code 1)
    • [FAIL] Trust_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
    • [FAIL] Trust2_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
  • macOS/osx-arm64 monotouch-test: Failed (exit code 1)
    • [FAIL] Trust_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
    • [FAIL] Trust2_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
  • MacCatalyst/maccatalyst-x64 monotouch-test: Failed (exit code 1)
    • [FAIL] Trust_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
    • [FAIL] Trust2_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
  • MacCatalyst/maccatalyst-arm64 monotouch-test: Failed (exit code 1)
    • [FAIL] Trust_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant
    • [FAIL] Trust2_FullChain : Evaluate: “mail.google.com” certificate is not standards compliant

Html Report (VSDrops) Download

❌ Tests on macOS Golden Gate (27) tests

1 tests failed, 4 tests passed.

Failed tests

  • MacCatalyst/maccatalyst-arm64 introspection: Failed (exit code 1)
    • [FAIL] TypoTest : Typos!
    • [FAIL] Unnecessary allowed typo "Dfsi" is not present in any API name

Html Report (VSDrops) Download

Successes

✅ assembly-processing: All 1 tests passed. Html Report (VSDrops) Download
✅ cecil: All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (iOS): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (MacCatalyst): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (Multiple platforms): All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests (tvOS): All 1 tests passed. Html Report (VSDrops) Download
✅ framework: All 2 tests passed. Html Report (VSDrops) Download
✅ fsharp: All 4 tests passed. Html Report (VSDrops) Download
✅ generator: All 1 tests passed. Html Report (VSDrops) Download
✅ interdependent-binding-projects: All 4 tests passed. Html Report (VSDrops) Download
✅ linker (iOS): All 21 tests passed. Html Report (VSDrops) Download
✅ linker (MacCatalyst): All 21 tests passed. Html Report (VSDrops) Download
✅ linker (macOS): All 21 tests passed. Html Report (VSDrops) Download
✅ linker (tvOS): All 21 tests passed. Html Report (VSDrops) Download
✅ monotouch (iOS): All 20 tests passed. Html Report (VSDrops) Download
✅ monotouch (MacCatalyst): All 20 tests passed. Html Report (VSDrops) Download
✅ monotouch (macOS): All 20 tests passed. Html Report (VSDrops) Download
✅ monotouch (tvOS): All 20 tests passed. Html Report (VSDrops) Download
✅ msbuild: All 2 tests passed. Html Report (VSDrops) Download
✅ sharpie: All 1 tests passed. Html Report (VSDrops) Download
✅ windows: All 3 tests passed. Html Report (VSDrops) Download
✅ xcframework: All 4 tests passed. Html Report (VSDrops) Download
✅ xtro: All 1 tests passed. Html Report (VSDrops) Download

macOS tests

✅ Tests on macOS Tahoe (26): All 5 tests passed. Html Report (VSDrops) Download

Linux Build Verification

✅ Linux build succeeded

Pipeline on Agent
Hash: f649e63afc0cdcc161123ce1ea079822cd6433f2 [PR build]

@vs-mobiletools-engineering-service2

Copy link
Copy Markdown
Collaborator

⚠️ AppSizeTest expected files changed ⚠️

The AppSizeTest detected changes in the expected app size files.

To update the expected files, add a comment with the following command:

/apply-gist https://gist.github.com/vs-mobiletools-engineering-service2/e9d5353888b6c7b708f11c146327355e
Updated files
  • MacOSX-CoreCLR-R2R-size.txt

Pipeline on Agent
Hash: f649e63afc0cdcc161123ce1ea079822cd6433f2 [PR build]

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants