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++/85110] Missing underlines for some bad arguments


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

David Malcolm <dmalcolm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2018-03-28
           Assignee|unassigned at gcc dot gnu.org      |dmalcolm at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from David Malcolm <dmalcolm at gcc dot gnu.org> ---
In build_new_function_call, we have:

  cand = perform_overload_resolution (fn, *args, &candidates, &any_viable_p,
                                      complain);

  if (!cand)
    {
      if (complain & tf_error)
        {
          // If there is a single (non-viable) function candidate,
          // let the error be diagnosed by cp_build_function_call_vec.
          if (!any_viable_p && candidates && ! candidates->next
              && (TREE_CODE (candidates->fn) == FUNCTION_DECL))
                    return cp_build_function_call_vec (candidates->fn, args,
complain);
                    ******************************* CASE 1
****************************

          // Otherwise, emit notes for non-viable candidates.
          print_error_for_call_failure (fn, *args, candidates);
        }
      [...snip...]

    }
  else
    {
      [...snip...]
      ************************CASE 2 ************************************
      result = build_over_call (cand, flags, complain);
    }


"CASE 2" is handled by r256448, where perform_overload_resolution has returned
a non-NULL candidate, but there's a failure in convert_like_real.

This new PR (and the example in comment #0) covers "CASE 1" above.

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