diff options
author | Jeffrey Yasskin <jyasskin@google.com> | 2011-08-13 05:47:04 +0000 |
---|---|---|
committer | Jeffrey Yasskin <jyasskin@google.com> | 2011-08-13 05:47:04 +0000 |
commit | 9a56e37927fdfdcac59a9a24ad5a73e15e37f989 (patch) | |
tree | 0cfb1f736034e3b67541865025c776e7a112f4e3 /clang/lib/Basic/DiagnosticIDs.cpp | |
parent | d1de7764be8af9c2dccd44d404f0fb187c6d47f3 (diff) | |
download | bcm5719-llvm-9a56e37927fdfdcac59a9a24ad5a73e15e37f989.tar.gz bcm5719-llvm-9a56e37927fdfdcac59a9a24ad5a73e15e37f989.zip |
Fix C++0x narrowing conversion errors in Clang.
llvm-svn: 137552
Diffstat (limited to 'clang/lib/Basic/DiagnosticIDs.cpp')
-rw-r--r-- | clang/lib/Basic/DiagnosticIDs.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/clang/lib/Basic/DiagnosticIDs.cpp b/clang/lib/Basic/DiagnosticIDs.cpp index 66b16a9ba1c..907e826a33c 100644 --- a/clang/lib/Basic/DiagnosticIDs.cpp +++ b/clang/lib/Basic/DiagnosticIDs.cpp @@ -166,7 +166,8 @@ static const StaticDiagInfoRec *GetDiagInfo(unsigned DiagID) { #endif // Search the diagnostic table with a binary search. - StaticDiagInfoRec Find = { DiagID, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,0,0,0 }; + StaticDiagInfoRec Find = { static_cast<unsigned short>(DiagID), + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; const StaticDiagInfoRec *Found = std::lower_bound(StaticDiagInfo, StaticDiagInfo + StaticDiagInfoSize, Find); @@ -269,7 +270,10 @@ unsigned DiagnosticIDs::getIdFromName(StringRef Name) { if (Name.empty()) { return diag::DIAG_UPPER_LIMIT; } - StaticDiagNameIndexRec Find = { Name.data(), 0, Name.size() }; + assert(Name.size() == static_cast<uint8_t>(Name.size()) && + "Name is too long"); + StaticDiagNameIndexRec Find = { Name.data(), 0, + static_cast<uint8_t>(Name.size()) }; const StaticDiagNameIndexRec *Found = std::lower_bound( StaticDiagNameIndex, StaticDiagNameIndexEnd, Find); |