From d16cebef5df2c38067bb0168819a4a4f6b443ee9 Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Wed, 10 Feb 2016 19:09:15 +0000 Subject: [PATCH] Silence some MSVC false positive warnings about integer zexts and falling off the end of a covered switch llvm-svn: 260411 --- clang/lib/CodeGen/MicrosoftCXXABI.cpp | 2 +- clang/lib/Sema/CodeCompleteConsumer.cpp | 2 +- clang/lib/Tooling/Core/QualTypeNames.cpp | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/clang/lib/CodeGen/MicrosoftCXXABI.cpp b/clang/lib/CodeGen/MicrosoftCXXABI.cpp index f47b120..2567aa9 100644 --- a/clang/lib/CodeGen/MicrosoftCXXABI.cpp +++ b/clang/lib/CodeGen/MicrosoftCXXABI.cpp @@ -2311,7 +2311,7 @@ struct ResetGuardBit final : EHScopeStack::Cleanup { CGBuilderTy &Builder = CGF.Builder; llvm::LoadInst *LI = Builder.CreateLoad(Guard); llvm::ConstantInt *Mask = - llvm::ConstantInt::get(CGF.IntTy, ~(1U << GuardNum)); + llvm::ConstantInt::get(CGF.IntTy, ~(1ULL << GuardNum)); Builder.CreateStore(Builder.CreateAnd(LI, Mask), Guard); } }; diff --git a/clang/lib/Sema/CodeCompleteConsumer.cpp b/clang/lib/Sema/CodeCompleteConsumer.cpp index 18e9a591..9a4f0d9 100644 --- a/clang/lib/Sema/CodeCompleteConsumer.cpp +++ b/clang/lib/Sema/CodeCompleteConsumer.cpp @@ -309,7 +309,7 @@ StringRef CodeCompletionTUInfo::getParentName(const DeclContext *DC) { if (!Interface) { // Assign an empty StringRef but with non-null data to distinguish // between empty because we didn't process the DeclContext yet. - CachedParentName = StringRef((const char *)~0U, 0); + CachedParentName = StringRef((const char *)(uintptr_t)~0U, 0); return StringRef(); } diff --git a/clang/lib/Tooling/Core/QualTypeNames.cpp b/clang/lib/Tooling/Core/QualTypeNames.cpp index 6c3ff14..59fae37 100644 --- a/clang/lib/Tooling/Core/QualTypeNames.cpp +++ b/clang/lib/Tooling/Core/QualTypeNames.cpp @@ -243,6 +243,7 @@ static NestedNameSpecifier *getFullyQualifiedNestedNameSpecifier( return Scope; } } + llvm_unreachable("bad NNS kind"); } /// \brief Create a nested name specifier for the declaring context of -- 2.7.4