byteworksinc / ORCA-C

Other
80 stars 7 forks source link

C89-C17 standards support #65

Open sheumann opened 4 years ago

sheumann commented 4 years ago

ORCA/C was originally designed as a near-complete implementation of the initial ANSI C standard (C89/C90). We are working on adding support for features from later C standards. Most features from the standard up to C17 are now supported, but some others (mainly optional features) are not.

For reference, this issue contains a list of significant new features in the various C standards (derived mostly from Annex M in recent C standard drafts). This includes features of both the language and libraries. Note that this is not a comprehensive list of all changes in the standards, and that some of these items are optional features that are not required to be implemented.

Items should be checked off in this list if they are fully implemented. If they are partially implemented, a note explaining that can be added.

Features from C89/C90 that were not supported in ORCA/C:

Major changes in C95 (Amendment 1 to C90, __STDC_VERSION__ 199409L) included:

Major changes in C99 (__STDC_VERSION__ 199901L) included:

Major changes in C11 (__STDC_VERSION__ 201112L) included:

There were no major changes in C17 (__STDC_VERSION__ 201710L), only technical corrections and clarifications.

sheumann commented 1 year ago

C23 support is tracked separately in #84.