A freestanding implementation has an implementation-defined set of headers. The following headers are provided by the C/C++ standard:
#c11
4 Conformance
6 ... A conforming freestanding implementation shall accept any strictly conforming program that does not use complex types and in which the use of the features specified in the library clause (clause 7) is confined to the contents of the standard headers <float.h>, <iso646.h>, <limits.h>, <stdalign.h>, <stdarg.h>, <stdbool.h>, <stddef.h>, and <stdint.h>.
Reference: https://www.open-std.org/jtc1/sc22/wg14/www/docs/n1548.pdf
#c++11
Types | <cstddef> |
Implementation properties | <limits> |
<cfloat> | |
<climits> | |
Integer types | <cstdint> |
Start and termination | <cstdlib> (partial) |
Dynamic memory management | <new> |
Type identification | <typeinfo> |
Exception handling | <exception> |
Initializer lists | <initializer_list> |
Other runtime support | <cstdarg> |
Type traits | <type_traits> |
Atomics | <atomic> |