diff options
author | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-05 09:31:54 +0000 |
---|---|---|
committer | paolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-09-05 09:31:54 +0000 |
commit | 9184d665e5bbe7813414bfdac76e621dd10db352 (patch) | |
tree | a4b2a503b33ca25b6844be28fa7c9c65eac6f811 /gcc/testsuite | |
parent | a1b6c3e144fa8b777a63b1a58609495deafb518b (diff) | |
download | gcc-9184d665e5bbe7813414bfdac76e621dd10db352.tar.gz |
/cp
2007-09-05 Paolo Carlini <pcarlini@suse.de>
PR c++/29731 (again)
* parser.c (cp_parser_primary_expression): Return error_mark_node
when a statement-expression is found in a template-argument list.
/testsuite
2007-09-05 Paolo Carlini <pcarlini@suse.de>
PR c++/29731
* g++.dg/parse/template24.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128124 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/parse/template24.C | 8 |
2 files changed, 13 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3ae76e319e0..aa4306bcb41 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-09-05 Paolo Carlini <pcarlini@suse.de> + + PR c++/29731 + * g++.dg/parse/template24.C: New. + 2007-09-04 Andrew Pinski <andrew_pinski@playstation.sony.com> * g++.dg/other/spu2vmx-1.C: New test. diff --git a/gcc/testsuite/g++.dg/parse/template24.C b/gcc/testsuite/g++.dg/parse/template24.C new file mode 100644 index 00000000000..33d9d4cfd5a --- /dev/null +++ b/gcc/testsuite/g++.dg/parse/template24.C @@ -0,0 +1,8 @@ +/* PR c++/29731. This used to ICE in uses_template_parms. */ + +template<int> struct A {}; + +void foo() +{ + A<({})> a; /* { dg-error "forbids braced-groups within expressions|statement-expressions|template argument 1 is invalid|invalid type" } */ +} |