You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We now believe we know the status of all the proposals that went into
C99. There are three entries marked Partial:
N448 restricted pointers
------------------------
Clang fully conforms to the standard requirements, but LLVM support
could be improved to support more than just restricted pointers used
as function parameters.
N693 complex and imaginary support in <complex.h>
-------------------------------------------------
Clang supports _Complex but not _Imaginary. Clang does not attempt to
implement Annex G, so a lack of _Imaginary is not necessary for
conformance to C99. It's also worth noting that C2y is anticipated to
remove support for _Imaginary (see WG14 N3274 which was adopted at the
June 2024 meeting).
However, support for _Complex requires runtime support and compiler-rt
is not supported on all targets (notably, Windows).
(Doc # unknown) IEC 60559 support
---------------------------------
Clang largely conforms to the requirements in Annex F, but there are
edge cases that are incorrect. However, Clang does not predefine the
__STDC_IEC_559__ macro and so we don't claim to conform to Annex F yet.
Because all three of these partial entries are technically conforming,
it seems reasonable to claim full conformance for C99.
<p>Clang implements a significant portion of the ISO 9899:1999 (C99) standard, but the status of individual proposals is still under investigation.</p>
94
+
<p>Clang implements all of the ISO 9899:1999 (C99) standard.</p>
87
95
<p>Note, the list of C99 features comes from the C99 committee draft. Not all C99 documents are publicly available, so the documents referenced in this section may be inaccurate, unknown, or not linked.</p>
88
96
<!-- https://www.open-std.org/jtc1/sc22/wg14/www/docs/n874.htm contains the
89
97
final editor's report of what's been added to C99, but it includes more
0 commit comments