diff options
author | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2014-05-06 09:46:06 +0000 |
---|---|---|
committer | Evgeniy Stepanov <eugeni.stepanov@gmail.com> | 2014-05-06 09:46:06 +0000 |
commit | 1b5fd3e52a6a42e007dbd16f6c37f1ce3e1f1f30 (patch) | |
tree | c7f3b98218d71c94869291b4a4869300c9cdec14 | |
parent | d263f14a0fed092af9dab53c1bdf25e6ba85c299 (diff) | |
download | bcm5719-llvm-1b5fd3e52a6a42e007dbd16f6c37f1ce3e1f1f30.tar.gz bcm5719-llvm-1b5fd3e52a6a42e007dbd16f6c37f1ce3e1f1f30.zip |
Disable -Wcomment when building with GCC.
GCC version of -Wcomment is not compatible with ascii art graph diagrams.
Reverts r207629.
llvm-svn: 208073
-rw-r--r-- | llvm/cmake/modules/HandleLLVMOptions.cmake | 11 | ||||
-rw-r--r-- | llvm/unittests/Analysis/LazyCallGraphTest.cpp | 22 |
2 files changed, 22 insertions, 11 deletions
diff --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake index d5afc626f93..5b332ac74db 100644 --- a/llvm/cmake/modules/HandleLLVMOptions.cmake +++ b/llvm/cmake/modules/HandleLLVMOptions.cmake @@ -295,6 +295,17 @@ elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE ) append_if(USE_NO_MAYBE_UNINITIALIZED "-Wno-maybe-uninitialized" CMAKE_CXX_FLAGS) check_cxx_compiler_flag("-Werror -Wnon-virtual-dtor" CXX_SUPPORTS_NON_VIRTUAL_DTOR_FLAG) append_if(CXX_SUPPORTS_NON_VIRTUAL_DTOR_FLAG "-Wnon-virtual-dtor" CMAKE_CXX_FLAGS) + + # Check if -Wcomment is OK with an // comment ending with '\' if the next + # line is also a // comment. + set(OLD_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS}) + set(CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS} -Werror -Wcomment) + CHECK_C_SOURCE_COMPILES("// \\\\\\n//\\nint main() {return 0;}" + C_WCOMMENT_ALLOWS_LINE_WRAP) + set(CMAKE_REQUIRED_FLAGS ${OLD_CMAKE_REQUIRED_FLAGS}) + if (NOT C_WCOMMENT_ALLOWS_LINE_WRAP) + append("-Wno-comment" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) + endif() endif (LLVM_ENABLE_WARNINGS) append_if(LLVM_ENABLE_WERROR "-Werror" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) if (LLVM_ENABLE_CXX1Y) diff --git a/llvm/unittests/Analysis/LazyCallGraphTest.cpp b/llvm/unittests/Analysis/LazyCallGraphTest.cpp index 8c7b567afc9..d7c70453c9b 100644 --- a/llvm/unittests/Analysis/LazyCallGraphTest.cpp +++ b/llvm/unittests/Analysis/LazyCallGraphTest.cpp @@ -41,17 +41,17 @@ std::unique_ptr<Module> parseAssembly(const char *Assembly) { // IR forming a call graph with a diamond of triangle-shaped SCCs: // -// d1 | -// / \ | -// d3--d2 | -// / \ | -// b1 c1 | -// / \ / \ | -// b3--b2 c3--c2 | -// \ / | -// a1 | -// / \ | -// a3--a2 | +// d1 +// / \ +// d3--d2 +// / \ +// b1 c1 +// / \ / \ +// b3--b2 c3--c2 +// \ / +// a1 +// / \ +// a3--a2 // // All call edges go up between SCCs, and clockwise around the SCC. static const char DiamondOfTriangles[] = |