[Clang] Enable opaque pointers by default
Enable opaque pointers by default in clang, which can be disabled either via cc1 option -no-opaque-pointers or cmake flag -DCLANG_ENABLE_OPAQUE_POINTERS=OFF. See https://llvm.org/docs/OpaquePointers.html for context. Differential Revision: https://reviews.llvm.org/D123300
This commit is contained in:
parent
69f7f15683
commit
702d5de438
|
@ -251,7 +251,7 @@ option(CLANG_DEFAULT_PIE_ON_LINUX "Default to -fPIE and -pie on linux-gnu" ON)
|
|||
set(CLANG_ENABLE_OPAQUE_POINTERS "DEFAULT" CACHE STRING
|
||||
"Enable opaque pointers by default")
|
||||
if(CLANG_ENABLE_OPAQUE_POINTERS STREQUAL "DEFAULT")
|
||||
set(CLANG_ENABLE_OPAQUE_POINTERS_INTERNAL OFF)
|
||||
set(CLANG_ENABLE_OPAQUE_POINTERS_INTERNAL ON)
|
||||
elseif(CLANG_ENABLE_OPAQUE_POINTERS)
|
||||
set(CLANG_ENABLE_OPAQUE_POINTERS_INTERNAL ON)
|
||||
else()
|
||||
|
|
|
@ -195,8 +195,10 @@ Transition State
|
|||
================
|
||||
|
||||
As of April 2022 both LLVM and Clang have complete support for opaque pointers,
|
||||
but typed pointers are still the default. Opaque pointers will be enabled by
|
||||
default in Clang soon.
|
||||
and opaque pointers are enabled by default in Clang. It is possible to
|
||||
temporarily restore the old default using the
|
||||
``-DCLANG_ENABLE_OPAQUE_POINTERS=OFF`` cmake option. Opaque pointers can be
|
||||
disabled for a single Clang invocation using ``-Xclang -no-opaque-pointers``.
|
||||
|
||||
The MLIR and Polly monorepo projects are not fully compatible with opaque
|
||||
pointers yet.
|
||||
|
|
Loading…
Reference in New Issue