aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/cpp.texi7
-rw-r--r--gcc/doc/install.texi6
-rw-r--r--gcc/doc/invoke.texi60
-rw-r--r--gcc/doc/optinfo.texi2
4 files changed, 66 insertions, 9 deletions
diff --git a/gcc/doc/cpp.texi b/gcc/doc/cpp.texi
index b0a2ce3..3f492b3 100644
--- a/gcc/doc/cpp.texi
+++ b/gcc/doc/cpp.texi
@@ -1908,9 +1908,10 @@ selected, the value of the macro is
@code{201402L} for the 2014 C++ standard,
@code{201703L} for the 2017 C++ standard,
@code{202002L} for the 2020 C++ standard,
-or an unspecified value strictly larger than @code{202002L} for the
-experimental languages enabled by @option{-std=c++23} and
-@option{-std=gnu++23}.
+@code{202302L} for the 2023 C++ standard,
+or an unspecified value strictly larger than @code{202302L} for the
+experimental languages enabled by @option{-std=c++26} and
+@option{-std=gnu++26}.
@item __OBJC__
This macro is defined, with value 1, when the Objective-C compiler is in
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index a38d293..e099cd0 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -1095,6 +1095,12 @@ protection against Return Oriented Programming (ROP) attacks.
in which case @option{-fPIC} is used when compiling, and @option{-pie} when
linking.
+@item --enable-host-bind-now
+Specify that the @emph{host} executables should be linked with the option
+@option{-Wl,-z,now}, which means that the dynamic linker will resolve all
+symbols when the executables are started, and that in turn allows RELRO to
+mark the GOT read-only, resulting in better security.
+
@item @anchor{with-gnu-as}--with-gnu-as
Specify that the compiler should assume that the
assembler it finds is the GNU assembler. However, this does not modify
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 215ab0d..efcf3bf 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -317,7 +317,8 @@ Objective-C and Objective-C++ Dialects}.
-fno-show-column
-fdiagnostics-column-unit=@r{[}display@r{|}byte@r{]}
-fdiagnostics-column-origin=@var{origin}
--fdiagnostics-escape-format=@r{[}unicode@r{|}bytes@r{]}}
+-fdiagnostics-escape-format=@r{[}unicode@r{|}bytes@r{]}
+-fdiagnostics-text-art-charset=@r{[}none@r{|}ascii@r{|}unicode@r{|}emoji@r{]}}
@item Warning Options
@xref{Warning Options,,Options to Request or Suppress Warnings}.
@@ -2506,6 +2507,18 @@ change in incompatible ways in future releases.
GNU dialect of @option{-std=c++2b}. Support is highly experimental,
and will almost certainly change in incompatible ways in future
releases.
+
+@item c++2c
+@itemx c++26
+The next revision of the ISO C++ standard, planned for
+2026. Support is highly experimental, and will almost certainly
+change in incompatible ways in future releases.
+
+@item gnu++2c
+@itemx gnu++26
+GNU dialect of @option{-std=c++2c}. Support is highly experimental,
+and will almost certainly change in incompatible ways in future
+releases.
@end table
@opindex aux-info
@@ -5078,7 +5091,8 @@ options:
-fno-diagnostics-show-line-numbers
-fdiagnostics-color=never
-fdiagnostics-urls=never
--fdiagnostics-path-format=separate-events}
+-fdiagnostics-path-format=separate-events
+-fdiagnostics-text-art-charset=none}
In the future, if GCC changes the default appearance of its diagnostics, the
corresponding option to disable the new behavior will be added to this list.
@@ -5604,6 +5618,25 @@ Unicode characters. For the example above, the following will be printed:
before<CF><80><BF>after
@end smallexample
+@opindex fdiagnostics-text-art-charset
+@item -fdiagnostics-text-art-charset=@var{CHARSET}
+Some diagnostics can contain ``text art'' diagrams: visualizations created
+from text, intended to be viewed in a monospaced font.
+
+This option selects which characters should be used for printing such
+diagrams, if any. @var{CHARSET} is @samp{none}, @samp{ascii}, @samp{unicode},
+or @samp{emoji}.
+
+The @samp{none} value suppresses the printing of such diagrams.
+The @samp{ascii} value will ensure that such diagrams are pure ASCII
+(``ASCII art''). The @samp{unicode} value will allow for conservative use of
+unicode drawing characters (such as box-drawing characters). The @samp{emoji}
+value further adds the possibility of emoji in the output (such as emitting
+U+26A0 WARNING SIGN followed by U+FE0F VARIATION SELECTOR-16 to select the
+emoji variant of the character).
+
+The default is @samp{emoji}.
+
@opindex fdiagnostics-format
@item -fdiagnostics-format=@var{FORMAT}
Select a different format for printing diagnostics.
@@ -10591,6 +10624,15 @@ offset as well as the capacity is symbolic.
See @uref{https://cwe.mitre.org/data/definitions/119.html, CWE-119: Improper Restriction of Operations within the Bounds of a Memory Buffer}.
+For cases where the analyzer is able, it will emit a text art diagram
+visualizing the spatial relationship between the memory region that the
+analyzer predicts would be accessed, versus the range of memory that is
+valid to access: whether they overlap, are touching, are close or far
+apart; which one is before or after in memory, the relative sizes
+involved, the direction of the access (read vs write), and, in some
+cases, the values of data involved. This diagram can be suppressed
+using @option{-fdiagnostics-text-art-charset=none}.
+
@opindex Wanalyzer-possible-null-argument
@opindex Wno-analyzer-possible-null-argument
@item -Wno-analyzer-possible-null-argument
@@ -11101,6 +11143,12 @@ following warnings from @option{-fanalyzer}:
-Wanalyzer-va-list-use-after-va-end
}
+@opindex fanalyzer-debug-text-art
+@opindex fno-analyzer-debug-text-art
+@item -fanalyzer-debug-text-art-headings
+This option is intended for analyzer developers. If enabled,
+the analyzer will add extra annotations to any diagrams it generates.
+
@opindex fanalyzer-feasibility
@opindex fno-analyzer-feasibility
@item -fno-analyzer-feasibility
@@ -12077,10 +12125,12 @@ This option is enabled by default at optimization levels @option{-O1},
such as forming of fused multiply-add operations if the target has
native support for them.
@option{-ffp-contract=on} enables floating-point expression contraction
-if allowed by the language standard. This is currently not implemented
-and treated equal to @option{-ffp-contract=off}.
+if allowed by the language standard. This is implemented for C and C++,
+where it enables contraction within one expression, but not across
+different statements.
-The default is @option{-ffp-contract=fast}.
+The default is @option{-ffp-contract=off} for C in a standards compliant mode
+(@option{-std=c11} or similar), @option{-ffp-contract=fast} otherwise.
@opindex fomit-frame-pointer
@item -fomit-frame-pointer
diff --git a/gcc/doc/optinfo.texi b/gcc/doc/optinfo.texi
index b91bba7..5e8c97e 100644
--- a/gcc/doc/optinfo.texi
+++ b/gcc/doc/optinfo.texi
@@ -100,7 +100,7 @@ that one could also use special file names @code{stdout} and
respectively.
@item @code{alt_stream}
-This steam is used for printing optimization specific output in
+This stream is used for printing optimization specific output in
response to the @option{-fopt-info}. Again a file name can be given. If
the file name is not given, it defaults to @code{stderr}.
@end table