[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2018-01-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 Jakub Jelinek changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2018-01-19 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #10 from Jakub Jelinek --- Author: jakub Date: Fri Jan 19 22:37:37 2018 New Revision: 256905 URL: https://gcc.gnu.org/viewcvs?rev=256905=gcc=rev Log: PR c++/81167 * call.c (joust): Use TREE_TYPE (source) if source is

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2018-01-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #9 from Jakub Jelinek --- Created attachment 43180 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43180=edit gcc8-pr81167.patch Untested fix. This assumes that the type we want as source is always some class type, which seems

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2018-01-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #8 from Jakub Jelinek --- In gcc/testsuite/ we apparently have just g++.old-deja/g++.benjamin/16077.C and g++.old-deja/g++.other/overcnv2.C testcases covering those and in both cases source is a POINTER_TYPE. With check-c++-all

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2018-01-18 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org,

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2018-01-10 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 Richard Biener changed: What|Removed |Added Priority|P3 |P1

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread dmalcolm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #6 from David Malcolm --- Candidate patch for the ICE posted here: https://gcc.gnu.org/ml/gcc-patches/2017-06/msg01725.html Actually fixing the diagnostic as per comment #5 would be a separate patch.

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread dmalcolm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #5 from David Malcolm --- Note to self: I believe the "operator T() &&" here is a user-defined conversion from an rvalue reference to T. We have in joust at ../../src/gcc/cp/call.c:10071 10071 tree source = source_type

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread dmalcolm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #4 from David Malcolm --- Minimal reproducer: $ cat ../../src/pr81167.C struct bar; struct foo { foo () {} foo (const bar &) {} }; struct bar { operator foo() && { return foo (); } }; void test () { foo f = bar (); } $

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread dmalcolm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #3 from David Malcolm --- The issue is that a diagnostic is passing NULL to a %qH (which was a %qT). %T handles NULL gracefully by printing the empty string, whereas %H/%I fail with an assertion failure. Happens here: #8

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread dmalcolm at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 David Malcolm changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 Richard Biener changed: What|Removed |Added Version|7.0 |8.0 Target Milestone|---

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 Martin Liška changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug c++/81167] [8 Regression] ICE on valid C++ code in deferred_printed_type, at cp/error.c:118

2017-06-22 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81167 --- Comment #1 from Martin Liška --- Created attachment 41606 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=41606=edit test-case