Sema: print qualified name for overload candidates
authorSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 22 Dec 2016 04:26:57 +0000 (04:26 +0000)
committerSaleem Abdulrasool <compnerd@compnerd.org>
Thu, 22 Dec 2016 04:26:57 +0000 (04:26 +0000)
commit78704fb6dcf2d0dfc5d6112ef381620c82e9a514
tree800c41399202e9c9e862732dc91c860be3bf992a
parent9d3248b76560a0449a24f15a9b50a6ce80ea8925
Sema: print qualified name for overload candidates

Print the fully qualified names for the overload candidates.  This makes
it easier to tell what the ambiguity is.  Especially if a template
is instantiated after a using namespace, it will not inherit the
namespace where it was declared.  The specialization will give a message
about a partial order being ambiguous for the same (unqualified) name,
which does not help identify the failure.

Addresses PR31450!

llvm-svn: 290315
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/lib/Sema/SemaOverload.cpp
clang/lib/Sema/SemaTemplateDeduction.cpp
clang/test/SemaCXX/template-ambiguous-overload.cpp [new file with mode: 0644]