diff options
author | Martin Liska <mliska@suse.cz> | 2022-11-13 21:59:29 +0100 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2022-11-14 09:35:06 +0100 |
commit | d77de738290156fafe079182888e5e03a2f835f1 (patch) | |
tree | 0fa1501804778de28e5323a1ecc0d39073b4045c /gcc/doc/implement-cxx.texi | |
parent | 40a39381063fdd83c4cbf5eacebfc50a2201308b (diff) | |
download | gcc-d77de738290156fafe079182888e5e03a2f835f1.zip gcc-d77de738290156fafe079182888e5e03a2f835f1.tar.gz gcc-d77de738290156fafe079182888e5e03a2f835f1.tar.bz2 |
Revert "sphinx: remove texinfo files"
This reverts commit 54ca4eef58661a7d7a511e2bbbe309bde1732abf.
Diffstat (limited to 'gcc/doc/implement-cxx.texi')
-rw-r--r-- | gcc/doc/implement-cxx.texi | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/gcc/doc/implement-cxx.texi b/gcc/doc/implement-cxx.texi new file mode 100644 index 0000000..1eee18c --- /dev/null +++ b/gcc/doc/implement-cxx.texi @@ -0,0 +1,62 @@ +@c Copyright (C) 2009-2022 Free Software Foundation, Inc. +@c This is part of the GCC manual. +@c For copying conditions, see the file gcc.texi. + +@node C++ Implementation +@chapter C++ Implementation-Defined Behavior +@cindex implementation-defined behavior, C++ language + +A conforming implementation of ISO C++ is required to document its +choice of behavior in each of the areas that are designated +``implementation defined''. The following lists all such areas, +along with the section numbers from the ISO/IEC 14882:1998 and ISO/IEC +14882:2003 standards. Some areas are only implementation-defined in +one version of the standard. + +Some choices depend on the externally determined ABI for the platform +(including standard character encodings) which GCC follows; these are +listed as ``determined by ABI'' below. @xref{Compatibility, , Binary +Compatibility}, and @uref{https://gcc.gnu.org/readings.html}. Some +choices are documented in the preprocessor manual. +@xref{Implementation-defined behavior, , Implementation-defined +behavior, cpp, The C Preprocessor}. Some choices are documented in +the corresponding document for the C language. @xref{C +Implementation}. Some choices are made by the library and operating +system (or other environment when compiling for a freestanding +environment); refer to their documentation for details. + +@menu +* Conditionally-supported behavior:: +* Exception handling:: +@end menu + +@node Conditionally-supported behavior +@section Conditionally-Supported Behavior + +@cite{Each implementation shall include documentation that identifies +all conditionally-supported constructs that it does not support (C++0x +1.4).} + +@itemize @bullet +@item +@cite{Whether an argument of class type with a non-trivial copy +constructor or destructor can be passed to ... (C++0x 5.2.2).} + +Such argument passing is supported, using the same +pass-by-invisible-reference approach used for normal function +arguments of such types. + +@end itemize + +@node Exception handling +@section Exception Handling + +@itemize @bullet +@item +@cite{In the situation where no matching handler is found, it is +implementation-defined whether or not the stack is unwound before +std::terminate() is called (C++98 15.5.1).} + +The stack is not unwound before std::terminate is called. + +@end itemize |