[Bug c++/84835] [8 Regression] ICE in add_method, at cp/class.c:996

2018-03-19 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84835

--- Comment #4 from Nathan Sidwell  ---
Author: nathan
Date: Mon Mar 19 18:56:22 2018
New Revision: 258655

URL: https://gcc.gnu.org/viewcvs?rev=258655=gcc=rev
Log:
[PR c++/84835] ICE with generic lambda in extern "C"

https://gcc.gnu.org/ml/gcc-patches/2018-03/msg00890.html
PR c++/84835
* lambda.c (maybe_add_lambda_conv_op): Force C++ linkage.
* pt.c (build_template_decl): Propagate language linkage.

PR c++/84835
* g++.dg/cpp1y/pr84835.C: New.

Added:
trunk/gcc/testsuite/g++.dg/cpp1y/pr84835.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/lambda.c
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog

[Bug c++/84835] [8 Regression] ICE in add_method, at cp/class.c:996

2018-03-19 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84835

Nathan Sidwell  changed:

   What|Removed |Added

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

--- Comment #3 from Nathan Sidwell  ---
Fixed r258655.

[Bug c++/84835] [8 Regression] ICE in add_method, at cp/class.c:996

2018-03-12 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84835

Nathan Sidwell  changed:

   What|Removed |Added

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

[Bug c++/84835] [8 Regression] ICE in add_method, at cp/class.c:996

2018-03-12 Thread nathan at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84835

--- Comment #2 from Nathan Sidwell  ---
We should be resetting the language linkage to C++ before adding lambda members
(and the lambda type too?)

[Bug c++/84835] [8 Regression] ICE in add_method, at cp/class.c:996

2018-03-12 Thread dmalcolm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84835

David Malcolm  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-03-12
 CC||dmalcolm at gcc dot gnu.org,
   ||nathan at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from David Malcolm  ---
Confirmed.

Started somewhere between r251337 (unaffected) and r251347 (affected); possibly
r251340.

996   gcc_assert (!DECL_EXTERN_C_P (method));

(gdb) p method->decl_common.lang_specific->u.base.language
$16 = lang_c

[Bug c++/84835] [8 Regression] ICE in add_method, at cp/class.c:996

2018-03-12 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84835

Richard Biener  changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
   Priority|P3  |P1
   Target Milestone|--- |8.0