From: David Wells
Date: Sun, 5 Nov 2023 22:59:32 +0000 (-0500)
Subject: Update some more documentation to refer to our C++17 requirement.
X-Git-Tag: relicensing~313^2
X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=50f1cd4ed1aee79eae00f5ef86da652f8a7daea4;p=dealii.git
Update some more documentation to refer to our C++17 requirement.
---
diff --git a/cmake/setup_compiler_flags_gnu.cmake b/cmake/setup_compiler_flags_gnu.cmake
index b3424f3f27..ea945ce9bf 100644
--- a/cmake/setup_compiler_flags_gnu.cmake
+++ b/cmake/setup_compiler_flags_gnu.cmake
@@ -96,14 +96,6 @@ enable_if_supported(DEAL_II_WARNING_FLAGS "-Wno-literal-suffix")
#
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.
diff --git a/cmake/setup_write_config.cmake b/cmake/setup_write_config.cmake
index 43418666a5..57faec6809 100644
--- a/cmake/setup_write_config.cmake
+++ b/cmake/setup_write_config.cmake
@@ -82,8 +82,6 @@ elseif(DEAL_II_HAVE_CXX20)
_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")
diff --git a/doc/developers/cmake-internals.html b/doc/developers/cmake-internals.html
index d2a69fe745..1a931482ef 100644
--- a/doc/developers/cmake-internals.html
+++ b/doc/developers/cmake-internals.html
@@ -190,7 +190,7 @@ set_target_properties(${DEAL_II_TARGET_NAME}_${build_lowercase}
# 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)
@@ -223,7 +223,7 @@ set_target_properties(${DEAL_II_TARGET_NAME}_${build_lowercase}
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
diff --git a/doc/users/cmake_dealii.html b/doc/users/cmake_dealii.html
index f9e80808d7..c16240607b 100644
--- a/doc/users/cmake_dealii.html
+++ b/doc/users/cmake_dealii.html
@@ -418,12 +418,11 @@ library - builds and installs the 'library' component
- 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
- -DDEAL_II_CXX_FLAGS="-std=c++17"
, or by setting the
- environment variable CXXFLAGS="-std=c++17"
.
+ 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
+ -DDEAL_II_CXX_FLAGS="-std=c++23"
, or by setting the
+ environment variable CXXFLAGS="-std=c++23"
.
Similarly, for enabling SIMD vectorization support, you have to set
an appropriate target architecture via -march=...
, for