Commit aad5badd by H.J. Lu Committed by H.J. Lu

re PR c++/37789 (ICE with __FUNCTION__)

gcc/cp

2009-02-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR c++/37789
	* parser.c (cp_parser_mem_initializer): Return error_mark_node
	if cp_parser_mem_initializer_id returns error_mark_node.

gcc/testsuite/

2009-02-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR c++/37789
	* other/pr37789.C: New.

From-SVN: r144451
parent 9dadeeb8
2009-02-26 H.J. Lu <hongjiu.lu@intel.com>
PR c++/37789
* parser.c (cp_parser_mem_initializer): Return error_mark_node
if cp_parser_mem_initializer_id returns error_mark_node.
2009-02-24 Richard Guenther <rguenther@suse.de>
PR c++/39242
......
......@@ -9200,7 +9200,11 @@ cp_parser_mem_initializer (cp_parser* parser)
mem_initializer_id = NULL_TREE;
}
else
mem_initializer_id = cp_parser_mem_initializer_id (parser);
{
mem_initializer_id = cp_parser_mem_initializer_id (parser);
if (mem_initializer_id == error_mark_node)
return mem_initializer_id;
}
member = expand_member_init (mem_initializer_id);
if (member && !DECL_P (member))
in_base_initializer = 1;
......
2009-02-26 H.J. Lu <hongjiu.lu@intel.com>
PR c++/37789
* other/pr37789.C: New.
2009-02-26 Paul Thomas <pault@gcc.gnu.org>
PR fortran/39295
......
// PR c++/37789
// { dg-do compile }
void foo():
{ // { dg-error "initializers|identifier" }
__FUNCTION__;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment