Repository navigation
Downgrade MT2255 warning to a log message Fixes #25670 - #25696
Conversation
The MT2255 warning fires for any Dlfcn call pattern we don't support inlining. This is not actionable for developers using third-party libraries (like Avalonia) that call Dlfcn directly in patterns we don't handle. The call still works correctly at runtime - it just won't be inlined. Downgrade from a build warning to a verbose log message (level 3) so it doesn't pollute build output. Fixes #25670 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.
This comment has been minimized.
This comment has been minimized.
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Pull request overview
This PR updates the .NET linker step that inlines ObjCRuntime.Dlfcn patterns to stop emitting MT2255 as a build warning, and instead emit it as a verbosity-level log message, since the pattern is non-actionable for many third-party libraries and does not affect runtime correctness.
Changes:
- Replaced MT2255 warning reporting with
App.Log (3, ...)messages for unsupported/unrecognized Dlfcn inlining patterns. - Kept additional diagnostic details (e.g., unexpected IL sequences / opcode mismatches) in the verbose logs where applicable.
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.
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.
|
/azp run |
|
Azure Pipelines successfully started running 3 pipeline(s). |
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.
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.
✅ [CI Build #f5adf5d] Build passed (Build packages) ✅Pipeline on Agent |
✅ [CI Build #f5adf5d] Build passed (Detect API changes) ✅Pipeline on Agent |
This comment has been minimized.
This comment has been minimized.
✅ API diff for current PR / commitNET (empty diffs)✅ API diff vs stableNET (empty diffs)ℹ️ Generator diffGenerator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes) Pipeline on Agent |
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.
🔥 [CI Build #f5adf5d] Build failed (Build macOS tests) 🔥Build failed for the job 'Build macOS tests' (with job status 'Canceled') Pipeline on Agent |
🚀 [CI Build #f5adf5d] Test results 🚀Test results✅ All tests passed on VSTS: test results. 🎉 All 220 tests passed 🎉 Tests counts✅ assembly-processing: All 1 tests passed. Html Report (VSDrops) Download macOS tests✅ Tests on macOS Monterey (12): All 5 tests passed. Html Report (VSDrops) Download Linux Build VerificationPipeline on Agent |
The MT2255 warning ("Unknown or unsupported Dlfcn pattern") fires when the linker encounters a Dlfcn call pattern it cannot inline. This is not actionable for developers using third-party libraries (like Avalonia) that call Dlfcn directly -- the call still works correctly at runtime, it just won't be inlined for a minor performance optimization.
Since there's nothing the developer can do about it, downgrade from a build warning to a verbose log message (level 3) so it doesn't pollute build output.
Fixes #25670
🤖 Pull request created by Copilot