[PATCH] D72811: [WIP][OPENMP5.0] allow lvalue for motion clause
Chi Chun Chen via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Jan 24 13:04:37 PST 2020
cchen marked an inline comment as done.
cchen added inline comments.
================
Comment at: clang/lib/Sema/SemaOpenMP.cpp:15235
+ bool VisitUnaryOperator(UnaryOperator *UO) {
+ DerefCnt++;
+ CurComponents.emplace_back(UO, nullptr);
----------------
cchen wrote:
> ABataev wrote:
> > Need a check that this is a dereference op. Also, maybe allow using an addr_of operation?
> is addr_of operation allowed in lvalue?
>
> In this code:
> ```
> int arr[50];
>
> #pragma omp target map(&arr)
> {}
> ```
> We now reject `&arr` since `RE->IgnoreParenImpCasts()->isLValue()` return false. (RE is the expr of `&arr`)
BTW, `RE->isLValue()` also return false in this case.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D72811/new/
https://reviews.llvm.org/D72811
More information about the cfe-commits
mailing list