diff options
author | Jakub Jelinek <jakub@redhat.com> | 2009-01-12 16:43:22 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2009-01-12 16:43:22 +0100 |
commit | 49f098f2566a36206d6aa17c2c4635b2bf8b8d80 (patch) | |
tree | 63c40fa8e8187caa4b08c713f55fd24395af7701 /gcc/testsuite/g++.dg | |
parent | f56e675de51d00f2ddaede1933175374628f6952 (diff) | |
download | gcc-49f098f2566a36206d6aa17c2c4635b2bf8b8d80.zip gcc-49f098f2566a36206d6aa17c2c4635b2bf8b8d80.tar.gz gcc-49f098f2566a36206d6aa17c2c4635b2bf8b8d80.tar.bz2 |
re PR c++/38794 (Function body accepted in typedef)
PR c++/38794
* decl.c (start_function): If grokdeclarator hasn't returned
FUNCTION_DECL nor error_mark_node, issue diagnostics.
* g++.dg/parse/typedef9.C: New test.
From-SVN: r143292
Diffstat (limited to 'gcc/testsuite/g++.dg')
-rw-r--r-- | gcc/testsuite/g++.dg/parse/typedef9.C | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/parse/typedef9.C b/gcc/testsuite/g++.dg/parse/typedef9.C new file mode 100644 index 0000000..7788f78 --- /dev/null +++ b/gcc/testsuite/g++.dg/parse/typedef9.C @@ -0,0 +1,8 @@ +// PR c++/38794 +// { dg-do compile } + +typedef void foo () {} // { dg-error "invalid function declaration" } +struct S +{ + typedef int bar (void) { return 0; } // { dg-error "invalid member function declaration" } +}; |