diff options
author | Alexey Bataev <a.bataev@hotmail.com> | 2019-05-09 18:14:57 +0000 |
---|---|---|
committer | Alexey Bataev <a.bataev@hotmail.com> | 2019-05-09 18:14:57 +0000 |
commit | 41ebe0ce64bfc5ea208fc391b6dabd39bf670cec (patch) | |
tree | 68165d28219aeb3f7e72cd0c432551535546982e /clang/lib/Sema/SemaExpr.cpp | |
parent | e406f0eec64f5b6ceb38a2afdd119c41f9905f42 (diff) | |
download | bcm5719-llvm-41ebe0ce64bfc5ea208fc391b6dabd39bf670cec.tar.gz bcm5719-llvm-41ebe0ce64bfc5ea208fc391b6dabd39bf670cec.zip |
[OPENMP]Fix PR41768: check DSA for globals with default(none) clauses.
If the default(none) was specified for the construct, we might miss
diagnostic for the globals without explicitly specified data-sharing
attributes. Patch fixes this problem.
llvm-svn: 360362
Diffstat (limited to 'clang/lib/Sema/SemaExpr.cpp')
-rw-r--r-- | clang/lib/Sema/SemaExpr.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp index 31d00dc2ed2..f0058381a1b 100644 --- a/clang/lib/Sema/SemaExpr.cpp +++ b/clang/lib/Sema/SemaExpr.cpp @@ -15474,7 +15474,9 @@ bool Sema::tryCaptureVariable( // Capture global variables if it is required to use private copy of this // variable. bool IsGlobal = !Var->hasLocalStorage(); - if (IsGlobal && !(LangOpts.OpenMP && isOpenMPCapturedDecl(Var))) + if (IsGlobal && + !(LangOpts.OpenMP && isOpenMPCapturedDecl(Var, /*CheckScopeInfo=*/true, + MaxFunctionScopesIndex))) return true; Var = Var->getCanonicalDecl(); |