#
enable_if_supported(DEAL_II_WARNING_FLAGS "-Wno-psabi")
-#
-# Disable warnings regarding improper direct memory access
-# if compiling without C++17 support
-#
-if(NOT DEAL_II_HAVE_CXX17)
- enable_if_supported(DEAL_II_WARNING_FLAGS "-Wno-class-memaccess")
-endif()
-
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
# Enable warnings for conversion from real types to integer types.
# The warning is too noisy in gcc and therefore only enabled for clang.
_both("# C++ language standard: C++20\n")
elseif(DEAL_II_HAVE_CXX17)
_both("# C++ language standard: C++17\n")
-elseif(DEAL_II_HAVE_CXX14)
- _both("# C++ language standard: C++14\n")
endif()
_both("# Vectorization level: ${DEAL_II_VECTORIZATION_WIDTH_IN_BITS} bit")
# enable_if_supported(DEAL_II_CXX_FLAGS "-march=native")
# ENDIF()
#
-# Checks for compiler features (such as C++14 support) and compiler
+# Checks for compiler features (such as C++17 support) and compiler
# specific bugs that
# - usually set up further configuration (such as preprocessor
# definitions)
guarded with DEAL_II_ALLOW_PLATFORM_INTROSPECTION
./cmake/checks/check_01_cxx_features.cmake
- - Check for supported C++ language features such as sufficient C++14
+ - Check for supported C++ language features such as sufficient C++17
support
./cmake/checks/check_02_compiler_features.cmake
</p>
<p>
- The library will be compiled with the default C++ standard enabled by
- the compiler. This is (as of May 2020) C++14 for all compilers. If
- you want to override this behavior, please set the C++ standard
- directly for example by configuring with
- <code>-DDEAL_II_CXX_FLAGS="-std=c++17"</code>, or by setting the
- environment variable <code>CXXFLAGS="-std=c++17"</code>.
+ deal.II (as of version 9.6) requires a compiler which supports the C++17
+ language standard. If you want to override this behavior, please set the
+ C++ standard directly for example by configuring with
+ <code>-DDEAL_II_CXX_FLAGS="-std=c++23"</code>, or by setting the
+ environment variable <code>CXXFLAGS="-std=c++23"</code>.
Similarly, for enabling SIMD vectorization support, you have to set
an appropriate target architecture via <code>-march=...</code>, for