https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80662

--- Comment #7 from Jonathan Wakely <redi at gcc dot gnu.org> ---
EDG matches GCC with --g++ (which is what ICC uses) but in it's strict mode it
says they're ambiguous:

"s.C", line 13: error: more than one operator "<<" matches these operands:
            function template "void operator<<(C &&, const T &)" (declared at
                      line 4)
            function template "void my_stream::operator<<(T &&)" (declared at
                      line 8)
            operand types are: my_stream << const char [12]
      my_stream{} << "hello world";
                  ^

1 error detected in the compilation of "s.C".


So the EDG team identified this as a G++ bug/oddity and emulated it for --g++
mode.

Reply via email to