This patch removes a "typedef" to make GCC bootstrappable with
--disable-build-poststage1-with-cxx.
For some reason, only C and not C++ complains about the unused typedef
(cf. PR).
I considered using the typedef name, but that fails in C++, which does
not like the use of "d++" on an enum type in:
for (d = GFC_DECL_BEGIN; d != GFC_DECL_END; d++)
seen[d] = 0;
Build on x86-64-linux (C++ bootstrap build).
I intent to commit the attached patch as obvious.
Tobias
Index: ChangeLog
===================================================================
--- ChangeLog (Revision 188000)
+++ ChangeLog (Arbeitskopie)
@@ -1,5 +1,10 @@
2012-05-30 Tobias Burnus <[email protected]>
+ PR c/53502
+ * decl.c (match_attr_spec): Remove "typedef".
+
+2012-05-30 Tobias Burnus <[email protected]>
+
* decl.c: Fix comment typos.
* expr.c: Ditto.
* frontend-passes.c: Ditto.
Index: decl.c
===================================================================
--- decl.c (Revision 188000)
+++ decl.c (Arbeitskopie)
@@ -3264,7 +3264,7 @@ static match
match_attr_spec (void)
{
/* Modifiers that can exist in a type statement. */
- typedef enum
+ enum
{ GFC_DECL_BEGIN = 0,
DECL_ALLOCATABLE = GFC_DECL_BEGIN, DECL_DIMENSION, DECL_EXTERNAL,
DECL_IN, DECL_OUT, DECL_INOUT, DECL_INTRINSIC, DECL_OPTIONAL,
@@ -3272,8 +3272,7 @@ match_attr_spec (void)
DECL_PUBLIC, DECL_SAVE, DECL_TARGET, DECL_VALUE, DECL_VOLATILE,
DECL_IS_BIND_C, DECL_CODIMENSION, DECL_ASYNCHRONOUS, DECL_CONTIGUOUS,
DECL_NONE, GFC_DECL_END /* Sentinel */
- }
- decl_types;
+ };
/* GFC_DECL_END is the sentinel, index starts at 0. */
#define NUM_DECL GFC_DECL_END