[PATCH] D40948: Switch Clang's default C++ language target to C++14

Tim Northover via cfe-commits cfe-commits at lists.llvm.org
Thu Dec 7 03:28:20 PST 2017


Here's the test-suite diff. It's really just a few ancient code-bases
that don't compile with C++14, no runtime issues I noticed.

Tim.
-------------- next part --------------
commit a52b065052bfefaac17e7096fd2c911aac62e9da
Author: Tim Northover <t.p.northover at gmail.com>
Date:   Thu Dec 7 09:16:34 2017 +0000

    Support C++14 as a default in Clang

diff --git a/External/SPEC/CFP2006/447.dealII/CMakeLists.txt b/External/SPEC/CFP2006/447.dealII/CMakeLists.txt
index 4c3388f4..00bd711b 100644
--- a/External/SPEC/CFP2006/447.dealII/CMakeLists.txt
+++ b/External/SPEC/CFP2006/447.dealII/CMakeLists.txt
@@ -1,6 +1,7 @@
 include_directories(${BENCHMARK_DIR}/src/include)
 add_definitions(-DBOOST_DISABLE_THREADS -Ddeal_II_dimension=3)
 list(APPEND LDFLAGS -lm)
+list(APPEND CXXFLAGS -std=gnu++98)
 
 macro(verify_n run_type dir n)
   # Note that the official SPEC fp tolarence is only "-a .0000001", however this
diff --git a/External/SPEC/CFP2006/447.dealII/Makefile b/External/SPEC/CFP2006/447.dealII/Makefile
index 32d6d55d..ac433b55 100644
--- a/External/SPEC/CFP2006/447.dealII/Makefile
+++ b/External/SPEC/CFP2006/447.dealII/Makefile
@@ -16,7 +16,7 @@ CPPFLAGS += \
         -Ddeal_II_dimension=3     \
         -DBOOST_DISABLE_THREADS   \
         -I$(SPEC_BENCH_DIR)/src/include
-CXXFLAGS += -stdlib=libstdc++
+CXXFLAGS += -stdlib=libstdc++ -std=gnu++98
 
 STDOUT_FILENAME := log
 
diff --git a/External/SPEC/CFP2006/450.soplex/CMakeLists.txt b/External/SPEC/CFP2006/450.soplex/CMakeLists.txt
index f572c6bf..ffd415a5 100644
--- a/External/SPEC/CFP2006/450.soplex/CMakeLists.txt
+++ b/External/SPEC/CFP2006/450.soplex/CMakeLists.txt
@@ -1,4 +1,5 @@
 list(APPEND LDFLAGS -lm)
+list(APPEND CXXFLAGS -std=gnu++98)
 
 macro(test_input run_type input outname stdout_reltol info_reltol)
   llvm_test_run(RUN_TYPE ${run_type}
diff --git a/External/SPEC/CFP2006/450.soplex/Makefile b/External/SPEC/CFP2006/450.soplex/Makefile
index dcb457d4..b7de08ec 100644
--- a/External/SPEC/CFP2006/450.soplex/Makefile
+++ b/External/SPEC/CFP2006/450.soplex/Makefile
@@ -9,6 +9,7 @@ LEVEL = ../../../..
 FP_ABSTOLERANCE = 1.0e-5
 
 CPPFLAGS += -DNDEBUG
+CXXFLAGS += -std=gnu++98
 
 LDFLAGS = -lstdc++ -lm
 LIBS    = -lstdc++ -lm
diff --git a/External/SPEC/CINT2006/483.xalancbmk/CMakeLists.txt b/External/SPEC/CINT2006/483.xalancbmk/CMakeLists.txt
index caf5ab8c..712cefbd 100644
--- a/External/SPEC/CINT2006/483.xalancbmk/CMakeLists.txt
+++ b/External/SPEC/CINT2006/483.xalancbmk/CMakeLists.txt
@@ -11,6 +11,9 @@ add_definitions(
   -DXML_USE_NATIVE_TRANSCODER
   -DXML_USE_INMEM_MESSAGELOADER
 )
+
+list(APPEND CXXFLAGS -std=gnu++98)
+
 include_directories(
   ${CMAKE_CURRENT_SOURCE_DIR}
   ${BENCHMARK_DIR}/src
diff --git a/External/SPEC/CINT2006/483.xalancbmk/Makefile b/External/SPEC/CINT2006/483.xalancbmk/Makefile
index 780ea3cf..2e366415 100644
--- a/External/SPEC/CINT2006/483.xalancbmk/Makefile
+++ b/External/SPEC/CINT2006/483.xalancbmk/Makefile
@@ -20,6 +20,8 @@ CPPFLAGS += -DNDEBUG -DAPP_NO_THREADS -DXALAN_INMEM_MSG_LOADER        \
             -I$(SPEC_BENCH_DIR)/src/xercesc/util/Transcoders/Iconv    \
             -I$(SPEC_BENCH_DIR)/src/xalanc/include
 
+CXXFLAGS += -std=gnu++98
+
 ifeq ($(TARGET_OS),Darwin)
   CPPFLAGS += -DSPEC_CPU_MACOSX
 endif
diff --git a/MultiSource/Benchmarks/7zip/CMakeLists.txt b/MultiSource/Benchmarks/7zip/CMakeLists.txt
index ee0a9ff9..9cba36f9 100644
--- a/MultiSource/Benchmarks/7zip/CMakeLists.txt
+++ b/MultiSource/Benchmarks/7zip/CMakeLists.txt
@@ -1,7 +1,7 @@
 set(PROG 7zip-benchmark)
 set(RUN_OPTIONS b)
 list(APPEND CFLAGS -DBREAK_HANDLER -DUNICODE -D_UNICODE -I${CMAKE_CURRENT_SOURCE_DIR}/C -I${CMAKE_CURRENT_SOURCE_DIR}/CPP/myWindows -I${CMAKE_CURRENT_SOURCE_DIR}/CPP/include_windows -I${CMAKE_CURRENT_SOURCE_DIR}/CPP -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -pthread)
-list(APPEND CXXFLAGS -DBREAK_HANDLER -DUNICODE -D_UNICODE -I${CMAKE_CURRENT_SOURCE_DIR}/C -I${CMAKE_CURRENT_SOURCE_DIR}/CPP/myWindows -I${CMAKE_CURRENT_SOURCE_DIR}/CPP/include_windows -I${CMAKE_CURRENT_SOURCE_DIR}/CPP -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -pthread)
+list(APPEND CXXFLAGS -Wno-error=c++11-narrowing -DBREAK_HANDLER -DUNICODE -D_UNICODE -I${CMAKE_CURRENT_SOURCE_DIR}/C -I${CMAKE_CURRENT_SOURCE_DIR}/CPP/myWindows -I${CMAKE_CURRENT_SOURCE_DIR}/CPP/include_windows -I${CMAKE_CURRENT_SOURCE_DIR}/CPP -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -pthread)
 list(APPEND LDFLAGS -lstdc++ -pthread)
 set(Source CPP/myWindows/myGetTickCount.cpp CPP/myWindows/wine_date_and_time.cpp CPP/myWindows/myAddExeFlag.cpp CPP/myWindows/mySplitCommandLine.cpp CPP/7zip/UI/Console/BenchCon.cpp CPP/7zip/UI/Console/ConsoleClose.cpp CPP/7zip/UI/Console/ExtractCallbackConsole.cpp CPP/7zip/UI/Console/List.cpp CPP/7zip/UI/Console/Main.cpp CPP/7zip/UI/Console/MainAr.cpp CPP/7zip/UI/Console/OpenCallbackConsole.cpp CPP/7zip/UI/Console/PercentPrinter.cpp CPP/7zip/UI/Console/UpdateCallbackConsole.cpp CPP/7zip/UI/Console/UserInputUtils.cpp CPP/Common/CommandLineParser.cpp CPP/Common/CRC.cpp CPP/Common/IntToString.cpp CPP/Common/ListFileUtils.cpp CPP/Common/StdInStream.cpp CPP/Common/StdOutStream.cpp CPP/Common/MyString.cpp CPP/Common/StringConvert.cpp CPP/Common/StringToInt.cpp CPP/Common/UTFConvert.cpp CPP/Common/MyWindows.cpp CPP/Common/MyVector.cpp CPP/Common/Wildcard.cpp CPP/Windows/Error.cpp CPP/Windows/FileDir.cpp CPP/Windows/FileFind.cpp CPP/Windows/FileIO.cpp CPP/Windows/FileName.cpp CPP/Windows/PropVariant.cpp CPP/Windows/PropVariantConversions.cpp CPP/Windows/Synchronization.cpp CPP/Windows/System.cpp CPP/Windows/Time.cpp CPP/7zip/Common/CreateCoder.cpp CPP/7zip/Common/CWrappers.cpp CPP/7zip/Common/FilePathAutoRename.cpp CPP/7zip/Common/FileStreams.cpp CPP/7zip/Common/FilterCoder.cpp CPP/7zip/Common/InBuffer.cpp CPP/7zip/Common/InOutTempBuffer.cpp CPP/7zip/Common/LimitedStreams.cpp CPP/7zip/Common/LockedStream.cpp CPP/7zip/Common/MemBlocks.cpp CPP/7zip/Common/MethodId.cpp CPP/7zip/Common/MethodProps.cpp CPP/7zip/Common/OffsetStream.cpp CPP/7zip/Common/OutBuffer.cpp CPP/7zip/Common/OutMemStream.cpp CPP/7zip/Common/ProgressMt.cpp CPP/7zip/Common/ProgressUtils.cpp CPP/7zip/Common/StreamBinder.cpp CPP/7zip/Common/StreamObjects.cpp CPP/7zip/Common/StreamUtils.cpp CPP/7zip/Common/VirtThread.cpp CPP/7zip/UI/Common/ArchiveCommandLine.cpp CPP/7zip/UI/Common/ArchiveExtractCallback.cpp CPP/7zip/UI/Common/ArchiveOpenCallback.cpp CPP/7zip/UI/Common/Bench.cpp CPP/7zip/UI/Common/DefaultName.cpp CPP/7zip/UI/Common/EnumDirItems.cpp CPP/7zip/UI/Common/Extract.cpp CPP/7zip/UI/Common/ExtractingFilePath.cpp CPP/7zip/UI/Common/LoadCodecs.cpp CPP/7zip/UI/Common/OpenArchive.cpp CPP/7zip/UI/Common/PropIDUtils.cpp CPP/7zip/UI/Common/SetProperties.cpp CPP/7zip/UI/Common/SortUtils.cpp CPP/7zip/UI/Common/TempFiles.cpp CPP/7zip/UI/Common/Update.cpp CPP/7zip/UI/Common/UpdateAction.cpp CPP/7zip/UI/Common/UpdateCallback.cpp CPP/7zip/UI/Common/UpdatePair.cpp CPP/7zip/UI/Common/UpdateProduce.cpp CPP/7zip/Archive/Bz2Handler.cpp CPP/7zip/Archive/DeflateProps.cpp CPP/7zip/Archive/GzHandler.cpp CPP/7zip/Archive/LzmaHandler.cpp CPP/7zip/Archive/PpmdHandler.cpp CPP/7zip/Archive/SplitHandler.cpp CPP/7zip/Archive/XzHandler.cpp CPP/7zip/Archive/ZHandler.cpp CPP/7zip/Archive/Common/CoderMixer2.cpp CPP/7zip/Archive/Common/CoderMixer2MT.cpp CPP/7zip/Archive/Common/CrossThreadProgress.cpp CPP/7zip/Archive/Common/DummyOutStream.cpp CPP/7zip/Archive/Common/FindSignature.cpp CPP/7zip/Archive/Common/HandlerOut.cpp CPP/7zip/Archive/Common/InStreamWithCRC.cpp CPP/7zip/Archive/Common/ItemNameUtils.cpp CPP/7zip/Archive/Common/MultiStream.cpp CPP/7zip/Archive/Common/OutStreamWithCRC.cpp CPP/7zip/Archive/Common/ParseProperties.cpp CPP/7zip/Archive/7z/7zCompressionMode.cpp CPP/7zip/Archive/7z/7zDecode.cpp CPP/7zip/Archive/7z/7zEncode.cpp CPP/7zip/Archive/7z/7zExtract.cpp CPP/7zip/Archive/7z/7zFolderInStream.cpp CPP/7zip/Archive/7z/7zFolderOutStream.cpp CPP/7zip/Archive/7z/7zHandler.cpp CPP/7zip/Archive/7z/7zHandlerOut.cpp CPP/7zip/Archive/7z/7zHeader.cpp CPP/7zip/Archive/7z/7zIn.cpp CPP/7zip/Archive/7z/7zOut.cpp CPP/7zip/Archive/7z/7zProperties.cpp CPP/7zip/Archive/7z/7zSpecStream.cpp CPP/7zip/Archive/7z/7zUpdate.cpp CPP/7zip/Archive/7z/7zRegister.cpp CPP/7zip/Archive/Cab/CabBlockInStream.cpp CPP/7zip/Archive/Cab/CabHandler.cpp CPP/7zip/Archive/Cab/CabHeader.cpp CPP/7zip/Archive/Cab/CabIn.cpp CPP/7zip/Archive/Cab/CabRegister.cpp CPP/7zip/Archive/Tar/TarHandler.cpp CPP/7zip/Archive/Tar/TarHandlerOut.cpp CPP/7zip/Archive/Tar/TarHeader.cpp CPP/7zip/Archive/Tar/TarIn.cpp CPP/7zip/Archive/Tar/TarOut.cpp CPP/7zip/Archive/Tar/TarUpdate.cpp CPP/7zip/Archive/Tar/TarRegister.cpp CPP/7zip/Archive/Zip/ZipAddCommon.cpp CPP/7zip/Archive/Zip/ZipHandler.cpp CPP/7zip/Archive/Zip/ZipHandlerOut.cpp CPP/7zip/Archive/Zip/ZipHeader.cpp CPP/7zip/Archive/Zip/ZipIn.cpp CPP/7zip/Archive/Zip/ZipItem.cpp CPP/7zip/Archive/Zip/ZipOut.cpp CPP/7zip/Archive/Zip/ZipUpdate.cpp CPP/7zip/Archive/Zip/ZipRegister.cpp CPP/7zip/Compress/Bcj2Coder.cpp CPP/7zip/Compress/Bcj2Register.cpp CPP/7zip/Compress/BcjCoder.cpp CPP/7zip/Compress/BcjRegister.cpp CPP/7zip/Compress/BitlDecoder.cpp CPP/7zip/Compress/BranchCoder.cpp CPP/7zip/Compress/BranchMisc.cpp CPP/7zip/Compress/BranchRegister.cpp CPP/7zip/Compress/ByteSwap.cpp CPP/7zip/Compress/BZip2Crc.cpp CPP/7zip/Compress/BZip2Decoder.cpp CPP/7zip/Compress/BZip2Encoder.cpp CPP/7zip/Compress/BZip2Register.cpp CPP/7zip/Compress/CopyCoder.cpp CPP/7zip/Compress/CopyRegister.cpp CPP/7zip/Compress/Deflate64Register.cpp CPP/7zip/Compress/DeflateDecoder.cpp CPP/7zip/Compress/DeflateEncoder.cpp CPP/7zip/Compress/DeflateRegister.cpp CPP/7zip/Compress/DeltaFilter.cpp CPP/7zip/Compress/ImplodeDecoder.cpp CPP/7zip/Compress/ImplodeHuffmanDecoder.cpp CPP/7zip/Compress/Lzma2Decoder.cpp CPP/7zip/Compress/Lzma2Encoder.cpp CPP/7zip/Compress/Lzma2Register.cpp CPP/7zip/Compress/LzmaDecoder.cpp CPP/7zip/Compress/LzmaEncoder.cpp CPP/7zip/Compress/LzmaRegister.cpp CPP/7zip/Compress/LzOutWindow.cpp CPP/7zip/Compress/Lzx86Converter.cpp CPP/7zip/Compress/LzxDecoder.cpp CPP/7zip/Compress/PpmdDecoder.cpp CPP/7zip/Compress/PpmdEncoder.cpp CPP/7zip/Compress/PpmdRegister.cpp CPP/7zip/Compress/PpmdZip.cpp CPP/7zip/Compress/QuantumDecoder.cpp CPP/7zip/Compress/ShrinkDecoder.cpp CPP/7zip/Compress/ZDecoder.cpp CPP/7zip/Crypto/7zAes.cpp CPP/7zip/Crypto/7zAesRegister.cpp CPP/7zip/Crypto/HmacSha1.cpp CPP/7zip/Crypto/MyAes.cpp CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp CPP/7zip/Crypto/RandGen.cpp CPP/7zip/Crypto/Sha1.cpp CPP/7zip/Crypto/WzAes.cpp CPP/7zip/Crypto/ZipCrypto.cpp CPP/7zip/Crypto/ZipStrong.cpp C/7zStream.c C/Aes.c C/Alloc.c C/Bra.c C/Bra86.c C/BraIA64.c C/BwtSort.c C/Delta.c C/HuffEnc.c C/LzFind.c C/LzFindMt.c C/Lzma2Dec.c C/Lzma2Enc.c C/LzmaDec.c C/LzmaEnc.c C/MtCoder.c C/Ppmd7.c C/Ppmd7Dec.c C/Ppmd7Enc.c C/Ppmd8.c C/Ppmd8Dec.c C/Ppmd8Enc.c C/Sha256.c C/Sort.c C/Threads.c C/Xz.c C/XzCrc64.c C/XzDec.c C/XzEnc.c C/XzIn.c C/7zCrc.c C/7zCrcOpt.c)
 set(PROGRAM_IS_NONDETERMINISTIC 1)
diff --git a/MultiSource/Benchmarks/7zip/Makefile b/MultiSource/Benchmarks/7zip/Makefile
index fa9d16e4..a88b204b 100644
--- a/MultiSource/Benchmarks/7zip/Makefile
+++ b/MultiSource/Benchmarks/7zip/Makefile
@@ -10,7 +10,7 @@ CFLAGS += -DBREAK_HANDLER -DUNICODE -D_UNICODE -I$(PROJ_SRC_DIR)/C \
           -I$(PROJ_SRC_DIR)/CPP -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \
 					-DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -pthread
 
-CXXFLAGS += -DBREAK_HANDLER -DUNICODE -D_UNICODE -I$(PROJ_SRC_DIR)/C \
+CXXFLAGS += -std=gnu++98 -DBREAK_HANDLER -DUNICODE -D_UNICODE -I$(PROJ_SRC_DIR)/C \
 	        -I$(PROJ_SRC_DIR)/CPP/myWindows -I$(PROJ_SRC_DIR)/CPP/include_windows \
           -I$(PROJ_SRC_DIR)/CPP -I. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \
 					-DNDEBUG -D_REENTRANT -DENV_UNIX -D_7ZIP_LARGE_PAGES -pthread
diff --git a/MultiSource/Benchmarks/Bullet/CMakeLists.txt b/MultiSource/Benchmarks/Bullet/CMakeLists.txt
index 839a4c0b..aa37b482 100644
--- a/MultiSource/Benchmarks/Bullet/CMakeLists.txt
+++ b/MultiSource/Benchmarks/Bullet/CMakeLists.txt
@@ -1,5 +1,5 @@
 set(PROG bullet)
-list(APPEND CPPFLAGS -I${CMAKE_CURRENT_SOURCE_DIR}/include -DNO_TIME)
+list(APPEND CPPFLAGS -I${CMAKE_CURRENT_SOURCE_DIR}/include -std=gnu++98 -DNO_TIME)
 list(APPEND LDFLAGS -lstdc++ -lm)
 if(ARCH STREQUAL "XCore")
   set(XCORE_TARGET_NEEDS_MEMORY 64)
diff --git a/MultiSource/Benchmarks/Bullet/Makefile b/MultiSource/Benchmarks/Bullet/Makefile
index e3a50c0a..9eb209e9 100644
--- a/MultiSource/Benchmarks/Bullet/Makefile
+++ b/MultiSource/Benchmarks/Bullet/Makefile
@@ -1,6 +1,6 @@
 LEVEL = ../../../
 PROG = bullet
-CPPFLAGS += -I$(PROJ_SRC_DIR)/include -DNO_TIME
+CPPFLAGS += -I$(PROJ_SRC_DIR)/include -std=gnu++98 -DNO_TIME
 LDFLAGS = -lstdc++ -lm
 
 ifeq ($(ARCH),XCore)
diff --git a/SingleSource/Benchmarks/SmallPT/CMakeLists.txt b/SingleSource/Benchmarks/SmallPT/CMakeLists.txt
index a28c1c08..8b98cb45 100644
--- a/SingleSource/Benchmarks/SmallPT/CMakeLists.txt
+++ b/SingleSource/Benchmarks/SmallPT/CMakeLists.txt
@@ -1,3 +1,4 @@
+list(APPEND CXXFLAGS -std=gnu++98)
 list(APPEND LDFLAGS -lm -lstdc++)
 set(FP_TOLERANCE 0.001)
 llvm_singlesource()
diff --git a/SingleSource/Benchmarks/SmallPT/Makefile b/SingleSource/Benchmarks/SmallPT/Makefile
index 998cb0b2..250313cb 100644
--- a/SingleSource/Benchmarks/SmallPT/Makefile
+++ b/SingleSource/Benchmarks/SmallPT/Makefile
@@ -1,4 +1,5 @@
 LEVEL = ../../..
+CXXFLAGS += -std=gnu++98
 LDFLAGS += -lm -lstdc++
 FP_TOLERANCE := 0.001
 


More information about the cfe-commits mailing list