Skip to content

Commit 79df9d6

Browse files
author
ripley
committed
updates on C++ standards
git-svn-id: https://svn.r-project.org/R/trunk@89072 00db46b3-68df-0310-9c12-caf00c1e9a41
1 parent bf0466e commit 79df9d6

File tree

1 file changed

+8
-19
lines changed

1 file changed

+8
-19
lines changed

doc/manual/R-admin.texi

Lines changed: 8 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -997,16 +997,6 @@ CXXFLAGS
997997
CXXPICFLAGS
998998
CXXSTD
999999
1000-
CXX11
1001-
CXX11STD
1002-
CXX11FLAGS
1003-
CXX11PICFLAGS
1004-
1005-
CXX14
1006-
CXX14STD
1007-
CXX14FLAGS
1008-
CXX14PICFLAGS
1009-
10101000
CXX17
10111001
CXX17STD
10121002
CXX17FLAGS
@@ -1030,17 +1020,17 @@ CXX26PICFLAGS
10301020
@noindent
10311021
The macros @code{CXX} etc are those used by default for C++ code.
10321022
@command{configure} will attempt to set the rest suitably, choosing for
1033-
@code{CXXSTD} and @code{CXX11STD} a suitable flag such as
1023+
@code{CXXSTD} and @code{CXX17STD} a suitable flag such as
10341024
@option{-std=gnu++17} for C++17 support (which is required if C++ is to
10351025
be supported by default). Inferred values can be overridden in file
10361026
@file{config.site} or on the @command{configure} command line:
10371027
user-supplied values will be tested by compiling some
1038-
C++11/14/17/20/23/26 code.
1028+
C++17/20/23/26 code.
10391029

1040-
It may be that there is no suitable flag for C++14/17/20/23/26 support
1030+
It may be that there is no suitable flag for C++17/20/23/26 support
10411031
with the default compiler, in which case a different compiler could be
10421032
selected for
1043-
@code{CXX14}/@code{CXX17}/@code{CXX20}/@code{CXX23}/@code{CXX236} with
1033+
@code{CXX17}/@code{CXX20}/@code{CXX23}/@code{CXX236} with
10441034
its corresponding flags.
10451035

10461036
If no suitable compiler/flag is found for the default C++ compiler, one
@@ -1051,20 +1041,19 @@ C++17 tests, so do this at your own risk as some packages may not compile.
10511041
The @option{-std} flag is supported by the GCC, @command{clang++} and
10521042
Intel compilers. Currently accepted values are (plus some synonyms)
10531043
@example
1054-
g++: c++11 gnu+11 c++14 gnu++14 c++17 gnu++17 c++2a gnu++2a (from 8)
1044+
g++: c++17 gnu++17 c++2a gnu++2a (from 8)
10551045
c++20 gnu++20 (from 10) c++23 gnu++23 c++2b gnu++2b (from 11)
10561046
c++2c gnu++2c
1057-
Intel: c++11 gnu+11 c++14 gnu++14 c++17 gnu++17
1058-
c++20 gnu++20 (from 2021.1) c++2b gnu++2b (from 2022.2)
1059-
c++23 gnu++23 (at least from 2024.0)
1047+
Intel: c++17 gnu++17 c++20 gnu++20 (from 2021.1)
1048+
c++2b gnu++2b (from 2022.2) c++23 gnu++23 (at least from 2024.0)
10601049
@end example
10611050
@noindent
10621051
(Those for @I{LLVM} @command{clang++} are documented at
10631052
@uref{https://clang.llvm.org/cxx_status.html}, and follow @code{g++}:
10641053
@code{-std=c++20} is supported from Clang 10, @code{-std=c++2b} from
10651054
Clang 13 and @code{-std=c++23} and @code{-std=c++2c} from Clang 17.
10661055
Apple Clang supports @code{-std=c++2b} from 13.1.6 and @code{-std=c++23}
1067-
and @code{-std=c++2c} from 16.0.0.)
1056+
and @code{-std=c++2c} from 16.0.0, @code{-std=c++26} from 17.0.0.)
10681057

10691058
@c c++1y does not pass the configure test in gcc 4.9.3
10701059
@c , with @option{-std=c++1y} (introduced@footnote{See

0 commit comments

Comments
 (0)