summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/Sema.cpp
diff options
context:
space:
mode:
authorErich Keane <erich.keane@intel.com>2017-10-25 20:23:13 +0000
committerErich Keane <erich.keane@intel.com>2017-10-25 20:23:13 +0000
commit818cf5bcb372211edd14b7ab2ae28d3116f58a3c (patch)
tree06d338999417f9c021c0bfe58889ffb56b68408f /clang/lib/Sema/Sema.cpp
parentcc7763ba92f5bbe658323705dc0bd89f05fe0c86 (diff)
downloadbcm5719-llvm-818cf5bcb372211edd14b7ab2ae28d3116f58a3c.tar.gz
bcm5719-llvm-818cf5bcb372211edd14b7ab2ae28d3116f58a3c.zip
Ignore implicity casts for zero-as-null-pointer-constant warning
The repro in https://bugs.llvm.org/show_bug.cgi?id=34362 caused the left nullptr to be cast to a int* implicitly, which resulted diagnosing this falsely. Differential Revision: https://reviews.llvm.org/D39301 llvm-svn: 316605
Diffstat (limited to 'clang/lib/Sema/Sema.cpp')
-rw-r--r--clang/lib/Sema/Sema.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/Sema.cpp b/clang/lib/Sema/Sema.cpp
index 548f336c3b4..a9d6cb4c585 100644
--- a/clang/lib/Sema/Sema.cpp
+++ b/clang/lib/Sema/Sema.cpp
@@ -438,7 +438,7 @@ void Sema::diagnoseNullableToNonnullConversion(QualType DstType,
void Sema::diagnoseZeroToNullptrConversion(CastKind Kind, const Expr* E) {
if (Kind != CK_NullToPointer && Kind != CK_NullToMemberPointer)
return;
- if (E->getType()->isNullPtrType())
+ if (E->IgnoreParenImpCasts()->getType()->isNullPtrType())
return;
// nullptr only exists from C++11 on, so don't warn on its absence earlier.
if (!getLangOpts().CPlusPlus11)
OpenPOWER on IntegriCloud