https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92443
Bug ID: 92443 Summary: icein joust, at cp/call.c:11166 Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- This C++ code: struct a { constexpr a(long) : b() {} operator long() const; operator bool(); constexpr friend a operator|(a, a c) { return c; } long b; }; using d = a; constexpr d e = 6, f = f | e; does this: bug563.cc:9:28: internal compiler error: in joust, at cp/call.c:11166 9 | constexpr d e = 6, f = f | e; | ^ 0x5e28de joust ../../trunk/gcc/cp/call.c:11166 0x8e67c0 tourney ../../trunk/gcc/cp/call.c:11565 0x8ef2d3 build_new_op_1 ../../trunk/gcc/cp/call.c:6201 0x8efbdd build_new_op(op_location_t const&, tree_code, int, tree_node*, tree_node*, tree_node*, tree_node**, int) ../../trunk/gcc/cp/call.c:6490 with recent gcc trunk. The bug first seems to occur between revision 277850 and 277900.