[libcxx-commits] [PATCH] D69408: [libc++] Force the ABI namespace to be a reserved identifier
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Oct 24 14:26:47 PDT 2019
ldionne created this revision.
ldionne added a reviewer: phosek.
Herald added subscribers: llvm-commits, libcxx-commits, Sanitizers, dexonsmith, jkorous, christof, mgorny.
Herald added a reviewer: EricWF.
Herald added projects: Sanitizers, libc++, LLVM.
When the ABI namespace isn't a reserved identifier, we were issuing a
warning, but this should have been an error since the beginning. This
commit enforces that the ABI namespace is a reserved identifier, and
changes the ABI namespace used by LibFuzzer.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D69408
Files:
compiler-rt/lib/fuzzer/CMakeLists.txt
libcxx/CMakeLists.txt
Index: libcxx/CMakeLists.txt
===================================================================
--- libcxx/CMakeLists.txt
+++ libcxx/CMakeLists.txt
@@ -816,7 +816,7 @@
endif()
if (NOT LIBCXX_ABI_NAMESPACE STREQUAL "")
if (NOT LIBCXX_ABI_NAMESPACE MATCHES "__.*")
- message(WARNING "LIBCXX_ABI_NAMESPACE must be a reserved identifier.")
+ message(FATAL_ERROR "LIBCXX_ABI_NAMESPACE must be a reserved identifier.")
endif()
if (LIBCXX_ABI_NAMESPACE MATCHES "__[0-9]+$")
message(FATAL_ERROR "LIBCXX_ABI_NAMESPACE '${LIBCXX_ABI_NAMESPACE}' is reserved for use by libc++.")
Index: compiler-rt/lib/fuzzer/CMakeLists.txt
===================================================================
--- compiler-rt/lib/fuzzer/CMakeLists.txt
+++ compiler-rt/lib/fuzzer/CMakeLists.txt
@@ -144,7 +144,7 @@
CFLAGS ${TARGET_CFLAGS}
CMAKE_ARGS -DCMAKE_CXX_COMPILER_WORKS=ON
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
- -DLIBCXX_ABI_NAMESPACE=Fuzzer)
+ -DLIBCXX_ABI_NAMESPACE=__Fuzzer)
target_compile_options(RTfuzzer.${arch} PRIVATE -isystem ${LIBCXX_${arch}_PREFIX}/include/c++/v1)
add_dependencies(RTfuzzer.${arch} libcxx_fuzzer_${arch}-build)
target_compile_options(RTfuzzer_main.${arch} PRIVATE -isystem ${LIBCXX_${arch}_PREFIX}/include/c++/v1)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D69408.226330.patch
Type: text/x-patch
Size: 1321 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20191024/ab51bd69/attachment-0001.bin>
More information about the libcxx-commits
mailing list