mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-23 04:10:26 +08:00
re PR c++/65127 (internal compiler error: tree check: expected tree that contains 'decl minimal' structure, have 'addr_expr' in parsing_nsdmi, at cp/parser.c:18311)
PR c++/65127 * parser.c (parsing_nsdmi): Don't return true if current_class_ptr is not a PARM_DECL. * g++.dg/cpp0x/pr65127.C: New test. From-SVN: r221332
This commit is contained in:
parent
1574ecc09c
commit
704c79040a
@ -1,3 +1,9 @@
|
||||
2015-03-10 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c++/65127
|
||||
* parser.c (parsing_nsdmi): Don't return true if current_class_ptr
|
||||
is not a PARM_DECL.
|
||||
|
||||
2015-03-10 Jason Merrill <jason@redhat.com>
|
||||
|
||||
PR c++/65333
|
||||
|
@ -18314,7 +18314,9 @@ parsing_nsdmi (void)
|
||||
{
|
||||
/* We recognize NSDMI context by the context-less 'this' pointer set up
|
||||
by the function above. */
|
||||
if (current_class_ptr && DECL_CONTEXT (current_class_ptr) == NULL_TREE)
|
||||
if (current_class_ptr
|
||||
&& TREE_CODE (current_class_ptr) == PARM_DECL
|
||||
&& DECL_CONTEXT (current_class_ptr) == NULL_TREE)
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
@ -1,3 +1,8 @@
|
||||
2015-03-10 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR c++/65127
|
||||
* g++.dg/cpp0x/pr65127.C: New test.
|
||||
|
||||
2015-03-10 Jan Hubicka <hubicka@ucw.cz>
|
||||
|
||||
* gcc.dg/ipa/PR64550.c: Update template.
|
||||
|
16
gcc/testsuite/g++.dg/cpp0x/pr65127.C
Normal file
16
gcc/testsuite/g++.dg/cpp0x/pr65127.C
Normal file
@ -0,0 +1,16 @@
|
||||
// PR c++/65127
|
||||
// { dg-do compile { target c++11 } }
|
||||
|
||||
template <int N>
|
||||
void
|
||||
foo ()
|
||||
{
|
||||
static int i {100};
|
||||
struct { int id {i++}; } j;
|
||||
}
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
foo<0> ();
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user