[Bug c++/79264] [7 Regression] ICE verify_type failed

2017-03-14 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79264

--- Comment #5 from Marek Polacek  ---
Author: mpolacek
Date: Tue Mar 14 16:03:10 2017
New Revision: 246134

URL: https://gcc.gnu.org/viewcvs?rev=246134=gcc=rev
Log:
PR c++/79264
* lambda.c (maybe_generic_this_capture): Deal with template-id-exprs.
* semantics.c (finish_member_declaration): Assert class is being
defined.

* g++.dg/cpp1y/pr61636-1.C: Augment.

PR c++/61636
* cp-tree.h (maybe_generic_this_capture): Declare.
* lambda.c (resolvable_dummy_lambda): New, broken out of ...
(maybe_resolve_dummy): ... here.  Call it.
(maybe_generic_this_capture): New.
* parser.c (cp_parser_postfix_expression): Speculatively capture
this in generic lambda in unresolved member function call.
* pt.c (tsubst_copy_and_build): Force hard error from failed
member function lookup in generic lambda.

* g++.dg/cpp1y/pr61636-1.C: New.
* g++.dg/cpp1y/pr61636-2.C: New.
* g++.dg/cpp1y/pr61636-3.C: New.

Added:
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/pr61636-1.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/pr61636-2.C
branches/gcc-6-branch/gcc/testsuite/g++.dg/cpp1y/pr61636-3.C
Modified:
branches/gcc-6-branch/gcc/cp/ChangeLog
branches/gcc-6-branch/gcc/cp/cp-tree.h
branches/gcc-6-branch/gcc/cp/lambda.c
branches/gcc-6-branch/gcc/cp/parser.c
branches/gcc-6-branch/gcc/cp/pt.c
branches/gcc-6-branch/gcc/cp/semantics.c
branches/gcc-6-branch/gcc/testsuite/ChangeLog

[Bug c++/79264] [7 Regression] ICE verify_type failed

2017-01-31 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79264

Nathan Sidwell  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Nathan Sidwell  ---
Fixed r245065.

[Bug c++/79264] [7 Regression] ICE verify_type failed

2017-01-31 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79264

--- Comment #3 from Nathan Sidwell  ---
Author: nathan
Date: Tue Jan 31 15:10:41 2017
New Revision: 245065

URL: https://gcc.gnu.org/viewcvs?rev=245065=gcc=rev
Log:
PR c++/79264
* lambda.c (maybe_generic_this_capture): Deal with
template-id-exprs.
* semantics.c (finish_member_declaration): Assert class is being
defined.

PR c++/79264
* g++.dg/cpp1y/pr61636-1.C: Augment.

Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/lambda.c
trunk/gcc/cp/semantics.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/cpp1y/pr61636-1.C

[Bug c++/79264] [7 Regression] ICE verify_type failed

2017-01-30 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79264

--- Comment #2 from Nathan Sidwell  ---
Created attachment 40625
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40625=edit
Reduced testcase

./obj/x86_64/gcc/cc1plus -fconcepts -std=c++1z -g3 79264-dbg.ii 

It's very easy to turn this into a different seg fault somewhere in the
gimplifier.  Sadly my 67273 patch doesn't fix this one.

[Bug c++/79264] [7 Regression] ICE verify_type failed

2017-01-30 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79264

Nathan Sidwell  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |nathan at gcc dot 
gnu.org

[Bug c++/79264] [7 Regression] ICE verify_type failed

2017-01-30 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79264

Richard Biener  changed:

   What|Removed |Added

   Keywords||ice-checking
   Priority|P3  |P1
Version|unknown |7.0
Summary|ICE verify_type failed  |[7 Regression] ICE
   ||verify_type failed