diff options
| author | 2017-01-14 19:55:43 +0000 | |
|---|---|---|
| committer | 2017-01-14 19:55:43 +0000 | |
| commit | bd3306aecb3a15e8967143b8cdbbccf2b1b19b74 (patch) | |
| tree | 309a8132b44564b9e634c0da6815187ce8eab27c /gnu/llvm/tools/clang/lib/Sema/ScopeInfo.cpp | |
| parent | killp -a should not kill the window if only one pane. (diff) | |
| download | wireguard-openbsd-bd3306aecb3a15e8967143b8cdbbccf2b1b19b74.tar.xz wireguard-openbsd-bd3306aecb3a15e8967143b8cdbbccf2b1b19b74.zip | |
Import LLVM 3.9.1 including clang and lld.
Diffstat (limited to 'gnu/llvm/tools/clang/lib/Sema/ScopeInfo.cpp')
| -rw-r--r-- | gnu/llvm/tools/clang/lib/Sema/ScopeInfo.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/gnu/llvm/tools/clang/lib/Sema/ScopeInfo.cpp b/gnu/llvm/tools/clang/lib/Sema/ScopeInfo.cpp index cbd7ef7abb4..4b2e13e20de 100644 --- a/gnu/llvm/tools/clang/lib/Sema/ScopeInfo.cpp +++ b/gnu/llvm/tools/clang/lib/Sema/ScopeInfo.cpp @@ -28,6 +28,7 @@ void FunctionScopeInfo::Clear() { HasBranchIntoScope = false; HasIndirectGoto = false; HasDroppedStmt = false; + HasOMPDeclareReductionCombiner = false; ObjCShouldCallSuper = false; ObjCIsDesignatedInit = false; ObjCWarnForNoDesignatedInitChain = false; @@ -85,11 +86,13 @@ FunctionScopeInfo::WeakObjectProfileTy::getBaseInfo(const Expr *E) { if (BaseProp) { D = getBestPropertyDecl(BaseProp); - const Expr *DoubleBase = BaseProp->getBase(); - if (const OpaqueValueExpr *OVE = dyn_cast<OpaqueValueExpr>(DoubleBase)) - DoubleBase = OVE->getSourceExpr(); + if (BaseProp->isObjectReceiver()) { + const Expr *DoubleBase = BaseProp->getBase(); + if (const OpaqueValueExpr *OVE = dyn_cast<OpaqueValueExpr>(DoubleBase)) + DoubleBase = OVE->getSourceExpr(); - IsExact = DoubleBase->isObjCSelfExpr(); + IsExact = DoubleBase->isObjCSelfExpr(); + } } break; } @@ -212,7 +215,7 @@ void FunctionScopeInfo::markSafeWeakUse(const Expr *E) { // Has there been a read from the object using this Expr? FunctionScopeInfo::WeakUseVector::reverse_iterator ThisUse = - std::find(Uses->second.rbegin(), Uses->second.rend(), WeakUseTy(E, true)); + llvm::find(llvm::reverse(Uses->second), WeakUseTy(E, true)); if (ThisUse == Uses->second.rend()) return; |
