[diff.cpp17.library] (original) (raw)
Annex C (informative) Compatibility [diff]
C.3 C++ and ISO C++ 2017 [diff.cpp17]
C.3.10 [library]: library introduction [diff.cpp17.library]
Affected subclause: [headers]
Change: New headers.
Rationale: New functionality.
Effect on original feature: The following C++ headers are new:,,,,,,,,,,,,,,, and.
Valid C++ 2017 code that #includes headers with these names may be invalid in this revision of C++.
Affected subclause: [headers]
Change: Remove vacuous C++ header files.
Rationale: The empty headers implied a false requirement to achieve C compatibility with the C++ headers.
Effect on original feature: A valid C++ 2017 program that #includes any of the following headers may fail to compile:<ccomplex>,<ciso646>,<cstdalign>,<cstdbool>, and<ctgmath>.
To retain the same behavior:
- a #include of <ccomplex> can be replaced by a #include of ,
- a #include of <ctgmath> can be replaced by a #include of and a #include of , and
- a #include of<ciso646>,<cstdalign>, or<cstdbool>can simply be removed.