This page is a "brief" summary of some of the huge number of improvements in GCC 14.
Note: GCC 14 has not been released yet, so this document is a work-in-progress.
-Wflex-array-member-not-at-end
to
identify all such cases in the source code and modify them.
requires
directive's unified_address
requirement is now fulfilled by both AMD GCN and nvptx devices.
present
as map-type modifier and in
defaultmap
.
OMP_TARGET_OFFLOAD=mandatory
handling has
been updated for the clarifications and changes of the 5.2 specification.
For Fortran, the list of directives permitted in Fortran pure procedures
was extended. Additionally, the spec change has been implemented for
default implicit mapping of C/C++ pointers pointing to unmapped storage.
decl
attribute is now
supported in C++ 11 attributes.
-lm
and/or
-lgfortran
to the offload-device linker using the -foffload-options=
flag.
--enable-host-pie
, to build the
compiler executables as PIE; and --enable-host-bind-now
,
to link the compiler executables with -Wl,-z,now
in order
to enable additional hardening.
libstdc++exp.a
library now includes all the Filesystem TS
symbols from the libstdc++fs.a
library.
The experimental symbols for the C++23 std::stacktrace
class
are also in libstdc++exp.a
, replacing the
libstdc++_libbacktrace.a
library that GCC 13 provides.
This means that -lstdc++exp
is the only library needed for
all experimental libstdc++ features.
std::chrono::parse
.<stacktrace>
header is supported by default.
std::thread::id
and
std::stacktrace
.
filebuf
, fstream
, etc.std::to_string
now uses std::format
.std::format
.<charconv>
functions.std::to_string
and
std::to_wstring
.
std::numeric_limits<_Float32>
and
std::numeric_limits<_Float64>
are now defined
for all standard modes, not only for C++23.
std::setfill
manipulator with
std::istream
is deprecated.
-mavxvnniint16
compiler switch.
-msha512
compiler switch.
-msm3
compiler switch.
-msm4
compiler switch.
-march=arrowlake
.
Based on Alder Lake, the switch further enables the AVX-IFMA,
AVX-VNNI-INT8, AVX-NE-CONVERT and CMPccXADD ISA extensions.
-march=arrowlake-s
.
Based on Arrow Lake, the switch further enables the AVX-VNNI-INT16, SHA512,
SM3 and SM4 ISA extensions.
-march=lunarlake
.
Lunar Lake is based on Arrow Lake S.
Copyright (C) Free Software Foundation, Inc. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
These pages are maintained by the GCC team. Last modified 2023-09-21.