diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2014-02-02 05:26:43 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2014-02-02 05:26:43 +0000 |
commit | 3e3305dabaa26116be315cc758fc4d9ec3a7aba1 (patch) | |
tree | 143b54ce4f56c6065ecc2234f25597574fb992bf /clang/lib/Sema/SemaOverload.cpp | |
parent | 17455633c77d7bbdf7eaec852a4b6daef54b5f7f (diff) | |
download | bcm5719-llvm-3e3305dabaa26116be315cc758fc4d9ec3a7aba1.tar.gz bcm5719-llvm-3e3305dabaa26116be315cc758fc4d9ec3a7aba1.zip |
[Sema] Follow-up on r200521 for the -Wnon-literal-null-conversion warning and revert its behavior for C++.
llvm-svn: 200622
Diffstat (limited to 'clang/lib/Sema/SemaOverload.cpp')
-rw-r--r-- | clang/lib/Sema/SemaOverload.cpp | 16 |
1 files changed, 1 insertions, 15 deletions
diff --git a/clang/lib/Sema/SemaOverload.cpp b/clang/lib/Sema/SemaOverload.cpp index 9d70d9f3e48..8e52e620a77 100644 --- a/clang/lib/Sema/SemaOverload.cpp +++ b/clang/lib/Sema/SemaOverload.cpp @@ -2622,19 +2622,6 @@ bool Sema::FunctionParamTypesAreEqual(const FunctionProtoType *OldType, return true; } -static Expr *ignoreIntegerCasts(Expr *E) { - while (true) { - if (ExplicitCastExpr *ECE = dyn_cast<ExplicitCastExpr>(E)) { - if (ECE->getType()->isIntegerType()) { - E = ECE->getSubExpr(); - continue; - } - } - - return E; - } -} - /// CheckPointerConversion - Check the pointer conversion from the /// expression From to the type ToType. This routine checks for /// ambiguous or inaccessible derived-to-base pointer @@ -2651,8 +2638,7 @@ bool Sema::CheckPointerConversion(Expr *From, QualType ToType, Kind = CK_BitCast; if (!IsCStyleOrFunctionalCast && !FromType->isAnyPointerType() && - ignoreIntegerCasts(From)-> - isNullPointerConstant(Context, Expr::NPC_ValueDependentIsNotNull) == + From->isNullPointerConstant(Context, Expr::NPC_ValueDependentIsNotNull) == Expr::NPCK_ZeroExpression) { if (Context.hasSameUnqualifiedType(From->getType(), Context.BoolTy)) DiagRuntimeBehavior(From->getExprLoc(), From, |