diff --git a/CMakeLists.txt b/CMakeLists.txt index 5ea6c5767fe..347ebbd74ad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -573,10 +573,8 @@ if(CMAKE_CROSSCOMPILING OR (LLVM_OPTIMIZED_TABLEGEN AND (LLVM_ENABLE_ASSERTIONS set(LLVM_USE_HOST_TOOLS ON) endif() -if (MSVC_IDE AND NOT (MSVC_VERSION LESS 1900)) +if (MSVC_IDE) option(LLVM_ADD_NATIVE_VISUALIZERS_TO_SOLUTION "Configure project to use Visual Studio native visualizers" TRUE) -else() - set(LLVM_ADD_NATIVE_VISUALIZERS_TO_SOLUTION FALSE CACHE INTERNAL "For Visual Studio 2013, manually copy natvis files to Documents\\Visual Studio 2013\\Visualizers" FORCE) endif() if (LLVM_BUILD_INSTRUMENTED OR LLVM_BUILD_INSTRUMENTED_COVERAGE OR diff --git a/cmake/modules/HandleLLVMOptions.cmake b/cmake/modules/HandleLLVMOptions.cmake index 2c32ae47755..a243507791a 100644 --- a/cmake/modules/HandleLLVMOptions.cmake +++ b/cmake/modules/HandleLLVMOptions.cmake @@ -353,12 +353,6 @@ elseif(MINGW) # FIXME: Also cygwin? endif() if( MSVC ) - if( CMAKE_CXX_COMPILER_VERSION VERSION_LESS 19.0 ) - # For MSVC 2013, disable iterator null pointer checking in debug mode, - # especially so std::equal(nullptr, nullptr, nullptr) will not assert. - add_definitions("-D_DEBUG_POINTER_IMPL=") - endif() - include(ChooseMSVCCRT) # Add definitions that make MSVC much less annoying. @@ -397,16 +391,10 @@ if( MSVC ) CMAKE_SHARED_LINKER_FLAGS) endif() - # /Zc:strictStrings is incompatible with VS12's (Visual Studio 2013's) - # debug mode headers. Instead of only enabling them in VS2013's debug mode, - # we'll just enable them for Visual Studio 2015 (VS 14, MSVC_VERSION 1900) - # and up. - if (NOT (MSVC_VERSION LESS 1900)) - # Disable string literal const->non-const type conversion. - # "When specified, the compiler requires strict const-qualification - # conformance for pointers initialized by using string literals." - append("/Zc:strictStrings" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) - endif(NOT (MSVC_VERSION LESS 1900)) + # Disable string literal const->non-const type conversion. + # "When specified, the compiler requires strict const-qualification + # conformance for pointers initialized by using string literals." + append("/Zc:strictStrings" CMAKE_C_FLAGS CMAKE_CXX_FLAGS) # "Generate Intrinsic Functions". append("/Oi" CMAKE_C_FLAGS CMAKE_CXX_FLAGS)