Where "Library Issue" is listed in conjunction with some other
+status, this means that some compiler support is needed for the
+library support, or desirable in conjunction with it. Note that the
+headers required of conforming freestanding implementations (clause 4
+paragraph 6) do not count as library issues.

Further notes

+
+

+
+

cpp has limited support for multibyte character sets.

+
+

IEC 60559 is IEEE 754 floating point. This works if and only if
+the hardware is perfectly compliant, but GCC does not define
+__STDC_IEC_559__ or implement the associated standard
+pragmas; nor do some options such as -frounding-math to
+enable the pragmas globally work in all cases (for example, required
+exceptions may not be generated) and contracting expressions (e.g.,
+using fused multiply-add) is not restricted to source-language
+expressions as required by C99.

+
+

Compiler support is needed for thorough support of math_errhandling; see
+messages 1,
+2,
+3
+on this subject to libc-hacker. The compiler needs to mark its output
+from compilations using -fno-trapping-math
+or -fno-math-errno, possibly using
+the .gnu_attribute mechanism, to indicate that built-in
+function optimizations may have been applied that mean that not all
+calls report error status in a particular way; the static linker
+needs to put this information in executables and shared libraries and
+the C library needs to use it to set math_errhandling at
+startup to a conservatively correct value based on the information
+from the compiler. There is currently some limited GNU C Library
+support that only conforms as long as the above options are not used
+anywhere in the program.

GCC does not support the Annex G imaginary types and complex
+multiplication and division have excess overflows at runtime (although
+not beyond those permitted by C99).

+
+

<stdint.h> is provided by GCC, or fixed where
+the system headers provide a nonconforming version, on some but not
+yet all systems. On systems where types in this header have been
+defined as char, GCC retains this definition although it
+is not permitted by C99.

+
+

Some of the C99 predefined macros represent properties of the
+compiler and library together and so defining them for the whole
+translation unit requires cooperation with the library;
+a GNU
+C Library patch for this is pending review.

+
+

const-qualified compound literals could share storage
+with each other and with string literals, but currently don't.

+
+

The information provided by static in parameter array
+declarators is not used for optimization. It might make sense to use
+it in future in conjunction with work
+on prefetching.

+
+

The list above differs from that in N1256 as follows:
+"LIA compatibility annex" is removed, since it refers to C99's
+conformance to another standard rather than something for C
+implementations to do. The <stdint.h> and
+<inttypes.h> entries have been separated, but are a
+single entry in C99.