re PR c/14765 (ice-on-invalid-code, ICE while compiling ({}) expression)

PR c/14765
	* c-parse.in (compstmt_primary_start): Set last_expr_type to
	NULL_TREE.

testsuite:
	* gcc.dg/pr14765-1.c: New test.

From-SVN: r82713
This commit is contained in:
Joseph Myers 2004-06-07 20:49:31 +01:00 committed by Joseph Myers
parent 3743236e9c
commit 45b0c94cb4
4 changed files with 23 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2004-06-07 Joseph S. Myers <jsm@polyomino.org.uk>
PR c/14765
* c-parse.in (compstmt_primary_start): Set last_expr_type to
NULL_TREE.
2004-06-07 Mark Mitchell <mark@codesourcery.com>
PR c++/15815

View File

@ -2123,6 +2123,7 @@ compstmt_primary_start:
keep_next_level ();
compstmt_count++;
$$ = add_stmt (build_stmt (COMPOUND_STMT, last_tree));
last_expr_type = NULL_TREE;
}
;

View File

@ -1,3 +1,8 @@
2004-06-07 Joseph S. Myers <jsm@polyomino.org.uk>
PR c/14765
* gcc.dg/pr14765-1.c: New test.
2004-06-07 Roger Sayle <roger@eyesopen.com>
PR c/14649

View File

@ -0,0 +1,11 @@
/* Empty statement expressions should get void type. Bug 14765 from
Serge Belyshev <belyshev@lubercy.com>. */
/* { dg-do compile } */
/* { dg-options "" } */
int a;
void fun ()
{
a = 0;
a = ({}); /* { dg-error "not ignored" "void stmt expr" } */
}