diff options
author | Richard Stallman <rms@gnu.org> | 1992-07-15 18:39:52 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1992-07-15 18:39:52 +0000 |
commit | 8d7bbe5f87bd33d7d4c03376767c8856ca266e50 (patch) | |
tree | c94d1dccb26dfce1b0e5106fdd3c68f073c0a1d9 /gcc | |
parent | e0b382b17ae011b19fa2cda8201e2588a910632e (diff) | |
download | gcc-8d7bbe5f87bd33d7d4c03376767c8856ca266e50.zip gcc-8d7bbe5f87bd33d7d4c03376767c8856ca266e50.tar.gz gcc-8d7bbe5f87bd33d7d4c03376767c8856ca266e50.tar.bz2 |
(finish_struct): Handle nested struct redefinitions.
From-SVN: r1593
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/c-decl.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c index bbcec2e..5a730e8 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -4664,6 +4664,11 @@ finish_struct (t, fieldlist) if (C_DECL_VARIABLE_SIZE (x)) C_TYPE_VARIABLE_SIZE (t) = 1; + /* Detect invalid nested redefinition. */ + if (TREE_TYPE (x) == t) + error ("nested redefinition of `%s'", + IDENTIFIER_POINTER (TYPE_NAME (t))); + /* Detect invalid bit-field size. */ if (DECL_INITIAL (x)) STRIP_NOPS (DECL_INITIAL (x)); |