https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87080
Bug ID: 87080 Summary: ice in cp_get_fndecl_from_callee, at cp/cvt.c:965 Product: gcc Version: 8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- The following C++ code, on recent gcc trunk, and flag -Wall, does this: $ ~/gcc/results/bin/g++ -c -Wall bug459.cc bug459.cc: In function ‘a fn2()’: bug459.cc:7:17: internal compiler error: in cp_get_fndecl_from_callee, at cp/cvt.c:965 7 | return c() << d; | ^ 0x5b0ede cp_get_fndecl_from_callee(tree_node*, bool) ../../trunk/gcc/cp/cvt.c:965 0x5b0ede cp_get_callee_fndecl_nofold(tree_node*) ../../trunk/gcc/cp/cvt.c:992 0xca6670 is_std_move_p ../../trunk/gcc/cp/typeck.c:9147 0xca6670 maybe_warn_pessimizing_move ../../trunk/gcc/cp/typeck.c:9204 class a { template <typename b> a &operator<<(b); }; a c(); template <typename> a fn2() { int d; return c() << d; }