From patchwork Tue Mar 13 23:19:54 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: 4.7 version of c99status.html Date: Tue, 13 Mar 2012 13:19:54 -0000 From: "Joseph S. Myers" X-Patchwork-Id: 146507 Message-Id: To: gcc-patches@gcc.gnu.org I've created the 4.7 version of c99status.html and made the 4.7 branch manual refer to it instead of the mainline version of the page. Doc patch tested with "make info html pdf". Index: c99status.html =================================================================== RCS file: /cvs/gcc/wwwdocs/htdocs/c99status.html,v retrieving revision 1.57 diff -u -r1.57 c99status.html --- c99status.html 18 Mar 2011 17:47:35 -0000 1.57 +++ c99status.html 13 Mar 2012 23:11:10 -0000 @@ -21,6 +21,7 @@

This page describes the C99 support in mainline GCC, not in any particular release. Information is also available on C99 support in GCC 4.7, C99 support in GCC 4.6, C99 support in GCC 4.5, C99 support in GCC 4.4, + + +Status of C99 features in GCC 4.7 + + + +

Status of C99 features in GCC 4.7

+ +

This table is based on the list in the foreword to N1256 +(ISO/IEC 9899:1999 (E), consolidated with ISO/IEC 9899:1999/Cor.1:2001 +(E), ISO/IEC 9899:1999/Cor.2:2004 (E) and ISO/IEC 9899:1999/Cor.3:2007 +(E)).

+ +

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.

+ +

This page describes the C99 support in GCC 4.7. Information on C99 support in mainline GCC is also +available.

+ +

See below the table for further notes on some issues.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FeatureLibrary IssueDoneBrokenMissing
restricted character set support via digraphs and +
<iso646.h> (originally specified in AMD1)
Done
wide character library support in + <wchar.h>
and <wctype.h> + (originally specified in AMD1)
Library IssueMissing
more precise aliasing rules via effective typeDone
restricted pointersDone
variable-length arraysDone
flexible array membersDone
static and type qualifiers
in parameter array declarators
Done
complex (and imaginary) support in <complex.h>Done
type-generic math macros in <tgmath.h>Library IssueDone
the long long int type and library functionsDone
increased minimum translation limitsDone
additional floating-point characteristics
in <float.h>
Done
remove implicit intDone
reliable integer divisionDone
universal character names (\u and \U)Done
extended identifiersMissing
hexadecimal floating-point constants and + %a
and %A + printf/scanf conversion specifiers
Library IssueDone
compound literalsDone
designated initializersDone
// commentsDone
library functions in <inttypes.h>Library Issue
extended integer types in <stdint.h>Missing
remove implicit function declarationDone
preprocessor arithmetic
done in intmax_t/uintmax_t
Done
mixed declarations and codeDone
new block scopes for selection
and iteration statements
Done
integer constant type rulesDone
integer promotion rulesDone
macros with a variable number of argumentsDone
the vscanf family of functions + in
<stdio.h> and <wchar.h>
Library IssueDone
additional math library functions in <math.h>Library Issue
treatment of error conditions by math library functions (math_errhandling)Library IssueMissing
floating-point environment access
in <fenv.h>
Library Issue
IEC 60559 (also known as
IEC 559 or IEEE arithmetic) support
Broken
trailing comma allowed in enum declarationDone
%lf conversion specifier
allowed in printf
Library IssueDone
inline functionsDone
the snprintf family of functions in <stdio.h>Library IssueDone
boolean type in <stdbool.h>Done
idempotent type qualifiersDone
empty macro argumentsDone
new struct type compatibility
rules (tag compatibility)
Done
additional predefined macro namesMissing
_Pragma preprocessing operatorDone
standard pragmasMissing
__func__ predefined identifierDone
va_copy macroDone
additional strftime conversion specifiersLibrary IssueDone
deprecate ungetc at the
beginning of a binary file
Library Issue
remove deprecation of
aliased array parameters
Done
conversion of array to pointer not limited to lvaluesDone
relaxed constraints on aggregate
and union initialization
Done
relaxed restrictions on portable header namesDone
return without expression not permitted + in
function that returns a value (and vice versa)
Done
FeatureLibrary IssueDoneBrokenMissing
+ +

Further notes

+ + + + + Index: doc/standards.texi =================================================================== --- doc/standards.texi (revision 185363) +++ doc/standards.texi (working copy) @@ -88,7 +88,7 @@ A new edition of the ISO C standard was published in 1999 as ISO/IEC 9899:1999, and is commonly known as @dfn{C99}. GCC has incomplete support for this standard version; see -@uref{http://gcc.gnu.org/c99status.html} for details. To select this +@uref{http://gcc.gnu.org/gcc-4.7/c99status.html} for details. To select this standard, use @option{-std=c99} or @option{-std=iso9899:1999}. (While in development, drafts of this standard version were referred to as @dfn{C9X}.) Index: doc/invoke.texi =================================================================== --- doc/invoke.texi (revision 185363) +++ doc/invoke.texi (working copy) @@ -1570,7 +1570,7 @@ @itemx iso9899:1999 @itemx iso9899:199x ISO C99. Note that this standard is not yet fully supported; see -@w{@uref{http://gcc.gnu.org/c99status.html}} for more information. The +@w{@uref{http://gcc.gnu.org/gcc-4.7/c99status.html}} for more information. The names @samp{c9x} and @samp{iso9899:199x} are deprecated. @item c11 Index: ChangeLog =================================================================== --- ChangeLog (revision 185363) +++ ChangeLog (working copy) @@ -1,3 +1,8 @@ +2012-03-13 Joseph Myers + + * doc/invoke.texi (-std=c99), doc/standards.texi (C language): + Refer to GCC 4.7 version of c99status.html. + 2012-03-12 Michael Meissner Backport from mainline