Commit b46b8fb4 by Joseph Myers Committed by Joseph Myers

README.Portability: Change "ISO C89" to "ISO C90".

	* README.Portability: Change "ISO C89" to "ISO C90".
	* c-parse.in (primary, initelt): Likewise.

testsuite:
	* gcc.dg/c90-init-1.c: Adjust expected error messages.

From-SVN: r77499
parent 7c476bde
2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
* README.Portability: Change "ISO C89" to "ISO C90".
* c-parse.in (primary, initelt): Likewise.
2004-02-08 Richard Sandiford <rsandifo@redhat.com> 2004-02-08 Richard Sandiford <rsandifo@redhat.com>
* real.c (encode_ibm_extended): Normalize the input value before * real.c (encode_ibm_extended): Normalize the input value before
......
...@@ -10,7 +10,7 @@ This knowledge until know has been sparsely spread around, so I ...@@ -10,7 +10,7 @@ This knowledge until know has been sparsely spread around, so I
thought I'd collect it in one useful place. Please add and correct thought I'd collect it in one useful place. Please add and correct
any problems as you come across them. any problems as you come across them.
I'm going to start from a base of the ISO C89 standard, since that is I'm going to start from a base of the ISO C90 standard, since that is
probably what most people code to naturally. Obviously using probably what most people code to naturally. Obviously using
constructs introduced after that is not a good idea. constructs introduced after that is not a good idea.
......
...@@ -652,7 +652,7 @@ primary: ...@@ -652,7 +652,7 @@ primary:
finish_init (); finish_init ();
if (pedantic && ! flag_isoc99) if (pedantic && ! flag_isoc99)
pedwarn ("ISO C89 forbids compound literals"); pedwarn ("ISO C90 forbids compound literals");
$$ = build_compound_literal (type, constructor); $$ = build_compound_literal (type, constructor);
} }
| '(' expr ')' | '(' expr ')'
...@@ -1515,7 +1515,7 @@ initlist1: ...@@ -1515,7 +1515,7 @@ initlist1:
initelt: initelt:
designator_list '=' initval designator_list '=' initval
{ if (pedantic && ! flag_isoc99) { if (pedantic && ! flag_isoc99)
pedwarn ("ISO C89 forbids specifying subobject to initialize"); } pedwarn ("ISO C90 forbids specifying subobject to initialize"); }
| designator initval | designator initval
{ if (pedantic) { if (pedantic)
pedwarn ("obsolete use of designated initializer without `='"); } pedwarn ("obsolete use of designated initializer without `='"); }
......
2004-02-08 Joseph S. Myers <jsm@polyomino.org.uk>
* gcc.dg/c90-init-1.c: Adjust expected error messages.
2004-02-08 Richard Sandiford <rsandifo@redhat.com> 2004-02-08 Richard Sandiford <rsandifo@redhat.com>
* gcc.c-torture/execute/20040208-[12].c: New tests. * gcc.c-torture/execute/20040208-[12].c: New tests.
......
...@@ -7,10 +7,10 @@ struct A { ...@@ -7,10 +7,10 @@ struct A {
int B; int B;
short C[2]; short C[2];
}; };
int a[10] = { 10, [4] = 15 }; /* { dg-error "ISO C89 forbids specifying subobject to initialize" } */ int a[10] = { 10, [4] = 15 }; /* { dg-error "ISO (C89|C90) forbids specifying subobject to initialize" } */
struct A b = { .B = 2 }; /* { dg-error "ISO C89 forbids specifying subobject to initialize" } */ struct A b = { .B = 2 }; /* { dg-error "ISO (C89|C90) forbids specifying subobject to initialize" } */
struct A c[] = { [3].C[1] = 1 }; /* { dg-error "ISO C89 forbids specifying subobject to initialize" } */ struct A c[] = { [3].C[1] = 1 }; /* { dg-error "ISO (C89|C90) forbids specifying subobject to initialize" } */
struct A d[] = { [4 ... 6].C[0 ... 1] = 2 }; /* { dg-error "(forbids specifying range of elements to initialize)|(ISO C89 forbids specifying subobject to initialize)" } */ struct A d[] = { [4 ... 6].C[0 ... 1] = 2 }; /* { dg-error "(forbids specifying range of elements to initialize)|(ISO (C89|C90) forbids specifying subobject to initialize)" } */
int e[] = { [2] 2 }; /* { dg-error "use of designated initializer without" } */ int e[] = { [2] 2 }; /* { dg-error "use of designated initializer without" } */
struct A f = { C: { 0, 1 } }; /* { dg-error "use of designated initializer with " } */ struct A f = { C: { 0, 1 } }; /* { dg-error "use of designated initializer with " } */
int g; int g;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment