re PR c++/51219 (ICE with empty bit-fields)

/cp
2014-02-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51219
	* typeck2.c (process_init_constructor_record): Just skip unnamed
	bit-fields.

/testsuite
2014-02-01  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51219
	* g++.dg/init/bitfield5.C: New.

From-SVN: r207383
This commit is contained in:
Paolo Carlini 2014-02-01 09:24:42 +00:00 committed by Paolo Carlini
parent 021293cb5a
commit 4244ec23df
4 changed files with 24 additions and 5 deletions

View File

@ -1,3 +1,9 @@
2014-02-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51219
* typeck2.c (process_init_constructor_record): Just skip unnamed
bit-fields.
2014-01-31 Jason Merrill <jason@redhat.com>
PR c++/59469

View File

@ -1268,11 +1268,7 @@ process_init_constructor_record (tree type, tree init,
tree type;
if (!DECL_NAME (field) && DECL_C_BIT_FIELD (field))
{
flags |= picflag_from_initializer (integer_zero_node);
CONSTRUCTOR_APPEND_ELT (v, field, integer_zero_node);
continue;
}
continue;
if (TREE_CODE (field) != FIELD_DECL || DECL_ARTIFICIAL (field))
continue;

View File

@ -1,3 +1,8 @@
2014-02-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51219
* g++.dg/init/bitfield5.C: New.
2014-02-01 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/60003

View File

@ -0,0 +1,12 @@
// PR c++/51219
struct A
{
int i;
int : 8;
};
void foo()
{
A a = { 0 };
}