The name stossc is reserved as a
member function for previous standardization, and may not be used as a name for
function-like macros in portable code.
A translation unit shall not #define or #undef
names lexically identical
to keywords,
to the identifiers listed in Table 4, or
to the attribute-tokens described in [dcl.attr],
except that the names likely and unlikely may be
defined as function-like macros ([cpp.replace]).
Each name declared as an object with external linkage
in a header is reserved to the implementation to designate that library
object with external linkage,174
both in namespace std and in the global namespace.
Each
global function signature declared with
external linkage in a header is reserved to the
implementation to designate that function signature with
external linkage.175
Each name from the C standard library declared with external linkage
is reserved to the implementation for use as a name with
extern"C"
linkage,
both in namespace std and in the global namespace.
Each function signature from the C standard library declared with
external linkage
is reserved to the implementation for use as
a function signature with both
extern"C"
and
extern"C++"
linkage,176
or as a name of namespace scope in the global namespace.
The list of such reserved function
signatures with external linkage includes
setjmp(jmp_buf),
declared or defined in <csetjmp> ([csetjmp.syn]),
and
va_end(va_list),
declared or defined in
<cstdarg> ([cstdarg.syn]).
The function signatures declared in
<cuchar> ([cuchar.syn]),
<cwchar> ([cwchar.syn]),
and
<cwctype> ([cwctype.syn])
are always reserved, notwithstanding the restrictions imposed in subclause
4.5.1 of Amendment 1 to the C Standard for these headers.
For each type T from the C standard library,
the types
::T
and
std::T
are reserved to the implementation and, when defined,
::T
shall be identical to
std::T.