Implement a %plural modifier for complex plural forms in diagnostics. Use it in the overload diagnostics.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59871 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDeclCXX.cpp b/lib/Sema/SemaDeclCXX.cpp
index cf1f017..d65d6ff 100644
--- a/lib/Sema/SemaDeclCXX.cpp
+++ b/lib/Sema/SemaDeclCXX.cpp
@@ -1440,13 +1440,9 @@
return cast<CXXConstructorDecl>(Best->Function);
case OR_No_Viable_Function:
- if (CandidateSet.empty())
- Diag(Loc, diag::err_ovl_no_viable_function_in_init) << InitEntity <<Range;
- else {
- Diag(Loc, diag::err_ovl_no_viable_function_in_init_with_cands)
- << InitEntity << Range;
- PrintOverloadCandidates(CandidateSet, /*OnlyViable=*/false);
- }
+ Diag(Loc, diag::err_ovl_no_viable_function_in_init)
+ << InitEntity << (unsigned)CandidateSet.size() << Range;
+ PrintOverloadCandidates(CandidateSet, /*OnlyViable=*/false);
return 0;
case OR_Ambiguous: