diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2015-12-25 14:26:58 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2015-12-25 14:26:58 +0000 |
commit | 7e86edd64bfae4e324224452e4ea879b3371a4bd (patch) | |
tree | 31a414b9b5f25347b7ed9a8786c34bdb277d6127 /lib/Sema | |
parent | 36c5ade2f4674b544039d78db4c466756cf142b0 (diff) | |
download | src-7e86edd64bfae4e324224452e4ea879b3371a4bd.tar.gz src-7e86edd64bfae4e324224452e4ea879b3371a4bd.zip |
Import clang 3.7.1 release (r255217).vendor/clang/clang-release_371-r255217
Notes
Notes:
svn path=/vendor/clang/dist/; revision=292728
svn path=/vendor/clang/clang-release_371-r255217/; revision=292729; tag=vendor/clang/clang-release_371-r255217
Diffstat (limited to 'lib/Sema')
-rw-r--r-- | lib/Sema/SemaExprCXX.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/Sema/SemaExprCXX.cpp b/lib/Sema/SemaExprCXX.cpp index 01966d569a11..9ad5aa59b68a 100644 --- a/lib/Sema/SemaExprCXX.cpp +++ b/lib/Sema/SemaExprCXX.cpp @@ -2485,8 +2485,10 @@ bool MismatchingNewDeleteDetector::hasMatchingNewInCtor( MismatchingNewDeleteDetector::MismatchResult MismatchingNewDeleteDetector::analyzeInClassInitializer() { assert(Field != nullptr && "This should be called only for members"); - if (const CXXNewExpr *NE = - getNewExprFromInitListOrExpr(Field->getInClassInitializer())) { + const Expr *InitExpr = Field->getInClassInitializer(); + if (!InitExpr) + return EndOfTU ? NoMismatch : AnalyzeLater; + if (const CXXNewExpr *NE = getNewExprFromInitListOrExpr(InitExpr)) { if (NE->isArray() != IsArrayForm) { NewExprs.push_back(NE); return MemberInitMismatches; |