diff options
author | Jordan Rose <jordan_rose@apple.com> | 2012-09-22 01:24:42 +0000 |
---|---|---|
committer | Jordan Rose <jordan_rose@apple.com> | 2012-09-22 01:24:42 +0000 |
commit | 615a092a511cd2dfe1a5364ebf5f80e55e33034d (patch) | |
tree | 8a1c03a4b5ff547f5c6ac1908678ca94731ebd99 /lib/Basic | |
parent | 991bcb4370fe849603346ebbddc8dd47bc29d235 (diff) |
Use llvm::getOrdinalSuffix to print ordinal numbers in diagnostics.
Just a refactoring of common infrastructure. No intended functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164443 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Basic')
-rw-r--r-- | lib/Basic/Diagnostic.cpp | 19 |
1 files changed, 2 insertions, 17 deletions
diff --git a/lib/Basic/Diagnostic.cpp b/lib/Basic/Diagnostic.cpp index 8065b2d98f..893eed041f 100644 --- a/lib/Basic/Diagnostic.cpp +++ b/lib/Basic/Diagnostic.cpp @@ -15,6 +15,7 @@ #include "clang/Basic/IdentifierTable.h" #include "clang/Basic/PartialDiagnostic.h" #include "llvm/ADT/SmallString.h" +#include "llvm/ADT/StringExtras.h" #include "llvm/Support/raw_ostream.h" #include "llvm/Support/CrashRecoveryContext.h" #include <cctype> @@ -515,23 +516,7 @@ static void HandleOrdinalModifier(unsigned ValNo, // We could use text forms for the first N ordinals, but the numeric // forms are actually nicer in diagnostics because they stand out. - Out << ValNo; - - // It is critically important that we do this perfectly for - // user-written sequences with over 100 elements. - switch (ValNo % 100) { - case 11: - case 12: - case 13: - Out << "th"; return; - default: - switch (ValNo % 10) { - case 1: Out << "st"; return; - case 2: Out << "nd"; return; - case 3: Out << "rd"; return; - default: Out << "th"; return; - } - } + Out << ValNo << llvm::getOrdinalSuffix(ValNo); } |