This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/84920] Better handling of unmatched/ambiguous calls


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

Eric Gallager <egallager at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2018-06-18
                 CC|                            |egallager at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #2 from Eric Gallager <egallager at gcc dot gnu.org> ---
(In reply to David Malcolm from comment #0)
> As reported by user "jcoffland" on Hacker News:
> https://news.ycombinator.com/item?id=16598071
> 
> > One improvement I'd like to see is a simplified error message
> > for mismatched overloaded calls. If you make an overloaded call
> > for which the is no matching conversion or if the conversation is
> > ambiguous the compiler will "helpfully" dump a list of possibly
> > matching overloaded function signatures. The list can be hundreds
> > of lines long.
> >
> > For example, when you try to pipe a class to std::cout that
> > doesn't have an std::ostream &operator<<(std::ostream &, const X &).
> > Perhaps instead of dumping the complete function signatures it
> > could show one function signature followed by a list of types
> > accepted as the second parameter. Since the signatures are
> > otherwise the same. Such improvements could also reduce
> > template error spew.
> 
> I hope to have a look at this in the GCC 9 timeframe, so filing this here.

OK, changing status to ASSIGNED then

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]