re PR c/18596 (ICE in make_decl_rtl)
authorJames A. Morrison <phython@gcc.gnu.org>
Tue, 21 Dec 2004 17:01:08 +0000 (17:01 +0000)
committerJames A. Morrison <phython@gcc.gnu.org>
Tue, 21 Dec 2004 17:01:08 +0000 (17:01 +0000)
commit6f17bbcf0518928c510fcc8c7bbb48c0ec21a8f3
tree4f41c122c72dec3b860a1cabdb23536dbf18fbee
parent41afe4ef3e66834becefe1d2ad5e879c878f1008
re PR c/18596 (ICE in make_decl_rtl)

2004-12-19  James A. Morrison  <phython@gcc.gnu.org>

       PR c/18596
       * c-parse.in (initdcl): Don't process a declaration if start_decl fails.
       (notype_initdcl):  Don't process a declaration if start_decl fails.
       * c-decl.c (start_decl): Fail if grokdeclarator fails.
       (grokdeclarator): Fail if a function definition has an invalid storage
       class.
       * c-typeck.c (start_init): Treat error_mark_node the same as 0.

testsuite:
        PR c/18596
        * gcc.dg/funcdef-storage-1.c (foo): Remove.
        * gcc.dg/pr18596-1.c: Use dg-error.
        (dg-options): Use -fno-unit-at-a-time.
        * gcc.dg/pr18596-2.c: New test.
        * gcc.dg/pr18596-3.c: New test.

From-SVN: r92459
gcc/ChangeLog
gcc/c-decl.c
gcc/c-parse.in
gcc/c-typeck.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/funcdef-storage-1.c
gcc/testsuite/gcc.dg/pr18596-1.c
gcc/testsuite/gcc.dg/pr18596-2.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr18596-3.c [new file with mode: 0644]