The Wire · Showcase
CLANGSHARP CLOSES THE C++ AST GAP, MACIOS SHIPS XCODE 26.6 SUPPORT
By RepoJournal · Filed · About .NET
ClangSharp landed the native bridges and managed API expansion needed to faithfully parse real-world C++ headers, while .NET for macOS is now Xcode 26.6 ready.
ClangSharp shipped three coordinated commits that complete the C++ AST surface area. The native half [1] adds libClangSharp bridges for gaps where the C API falls short, verified against clang 21.1.8 sources and requiring a rebuild. The managed layer follows immediately [2], exposing additional Expr, lambda, and type API on the high-level surface using only already-released interop. A third commit [3] introduces `--with-constant-folded-value` (short `-wcfv`), letting the generator emit clang-evaluated constants instead of translating written initializers, which fixes bindings whose initializers reference companion declarations never generated. The team also patched the Type keyword bridge for LLVM 22's ElaboratedType removal [4], dispatching over TagType, TypedefType, and five other concrete types instead. Over on macOS, .NET 10 now requires Xcode 26.6 and macOS 26.2+ (Tahoe) in a servicing release [5]. The same team hardened the build system to detect stale Mono-only properties when CoreCLR is active [6], catching confusing breakage earlier. Android made two parallel infrastructure moves: dropping the xxHash native dependency for CoreCLR typemaps in favor of CRC-32 [7], and adding AOT-safe factory helpers for trimmable type maps [8]. Both preserve runtime behavior and startup perf while reducing dependencies.
Action items
- → Rebuild ClangSharp native binaries and regenerate interop for LLVM 22 compatibility dotnet/ClangSharp [immediate]
- → Update macios projects to Xcode 26.6 and macOS 26.2+ dotnet/macios [plan]
- → Audit iOS/Android projects for stale UseMonoRuntime and xxHash dependencies dotnet/android [plan]
References
- [1] Add libClangSharp bridges for C++ AST gaps ↗ dotnet/ClangSharp
- [2] Expose additional managed C++ API for exprs, lambdas, and types ↗ dotnet/ClangSharp
- [3] Add --with-constant-folded-value option to fold initializers to clang-evaluated constants ↗ dotnet/ClangSharp
- [4] Fix Type keyword bridge for the LLVM 22 ElaboratedType removal dotnet/ClangSharp
- [5] .NET 10 - Xcode 26.6 support (26.5.10301) ↗ dotnet/macios
- [6] [msbuild] Detect Mono-only build properties when not using the Mono runtime ↗ dotnet/macios
- [7] [CoreCLR] Replace xxhash with crc32 (#12013) dotnet/android
- [8] [TrimmableTypeMap] Add AOT-safe array and collection factories using MakeArrayType and MakeGenericType (#12030) dotnet/android