https://gcc.gnu.org/bugzilla/show_bug.cgi?id=21802
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ppalka at gcc dot gnu.org --- Comment #10 from Patrick Palka <ppalka at gcc dot gnu.org> --- Yes, it looks like a bug. Could you please file a separate bug report? You can use this as the minimal reproducer: struct A { }; A operator+ (A &) { return A (); } A operator+ (const A &) { return A (); } template <typename T> void foo () { +A (); } void bar () { foo<int> (); }