Annex C (informative) Compatibility [diff]

C.5 C standard library [diff.library]

C.5.2 Modifications to definitions [diff.mods.to.definitions]

C.5.2.1 Types char16_­t and char32_­t [diff.char16]

The types char16_­t and char32_­t are distinct types rather than typedefs to existing integral types.
The tokens char16_­t and char32_­t are keywords in this International Standard ([lex.key]).
They do not appear as macro names defined in <cuchar> ([cuchar.syn]).

C.5.2.2 Type wchar_­t [diff.wchar.t]

The type wchar_­t is a distinct type rather than a typedef to an existing integral type.
The token wchar_­t is a keyword in this International Standard ([lex.key]).
It does not appear as a type name defined in any of <cstddef> ([cstddef.syn]), <cstdlib> ([cstdlib.syn]), or <cwchar> ([cwchar.syn]).

C.5.2.3 Header <assert.h> [diff.header.assert.h]

The token static_­assert is a keyword in this International Standard ([lex.key]).
It does not appear as a macro name defined in <cassert> ([cassert.syn]).

C.5.2.4 Header <iso646.h> [diff.header.iso646.h]

The tokens and, and_­eq, bitand, bitor, compl, not_­eq, not, or, or_­eq, xor, and xor_­eq are keywords in this International Standard ([lex.key]).
They do not appear as macro names defined in <ciso646>.

C.5.2.5 Header <stdalign.h> [diff.header.stdalign.h]

The token alignas is a keyword in this International Standard ([lex.key]).
It does not appear as a macro name defined in <cstdalign> ([depr.cstdalign.syn]).

C.5.2.6 Header <stdbool.h> [diff.header.stdbool.h]

The tokens bool, true, and false are keywords in this International Standard ([lex.key]).
They do not appear as macro names defined in <cstdbool> ([depr.cstdbool.syn]).

C.5.2.7 Macro NULL [diff.null]

The macro NULL, defined in any of <clocale> ([c.locales]), <cstddef> ([cstddef.syn]), <cstdio> ([cstdio.syn]), <cstdlib> ([cstdlib.syn]), <cstring> ([cstring.syn]), <ctime> ([ctime.syn]), or <cwchar> ([cwchar.syn]), is an implementation-defined C++ null pointer constant in this International Standard ([support.types]).