C++ Implementation-Defined Behavior. IBM Power10
Oglas
Oglas
Chapter 5: C ++ Implementation-Defined Behavior 519
5 C ++ Implementation-Defined Behavior
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. See
Chapter 9 [Binary Compatibility], page 911
, and https: / / gcc . gnu . org / readings.html
. Some choices are documented in the preprocessor manual. See Section
“Implementation-defined behavior” in The C Preprocessor . Some choices are documented in the corresponding document for the C language. See
ment when compiling for a freestanding environment); refer to their documentation for details.
5.1 Conditionally-Supported Behavior
Each implementation shall include documentation that identifies all conditionally-supported constructs that it does not support (C ++ 0x 1.4).
• 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.
5.2 Exception Handling
• 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.
c Copyright (C) 1988-2022 Free Software Foundation, Inc.
Prenesi
Oglas