re PR c++/58700 (ICE declaring static bit-field)

/cp
2013-11-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58700
	* decl.c (grokdeclarator): Don't try to pass declarator->id_loc
	to build_lang_decl_loc when declarator is null.

/testsuite
2013-11-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/58700
	* g++.dg/parse/bitfield4.C: New.

From-SVN: r205389
This commit is contained in:
Paolo Carlini 2013-11-26 11:31:46 +00:00 committed by Paolo Carlini
parent 160051af93
commit 8d590b9cb3
4 changed files with 20 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2013-11-26 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58700
* decl.c (grokdeclarator): Don't try to pass declarator->id_loc
to build_lang_decl_loc when declarator is null.
2013-11-26 Paolo Carlini <paolo.carlini@oracle.com>
* cvt.c (cp_convert_and_check): Avoid calling cp_convert

View File

@ -10637,7 +10637,9 @@ grokdeclarator (const cp_declarator *declarator,
{
/* C++ allows static class members. All other work
for this is done by grokfield. */
decl = build_lang_decl_loc (declarator->id_loc,
decl = build_lang_decl_loc (declarator
? declarator->id_loc
: input_location,
VAR_DECL, unqualified_id, type);
set_linkage_for_static_data_member (decl);
/* Even if there is an in-class initialization, DECL

View File

@ -1,3 +1,8 @@
2013-11-26 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58700
* g++.dg/parse/bitfield4.C: New.
2013-11-26 Richard Biener <rguenther@suse.de>
PR tree-optimization/59287

View File

@ -0,0 +1,6 @@
// PR c++/58700
struct A
{
static int : 4; // { dg-error "bit-field" }
};