Skip to content

Commit 9b3bf72

Browse files
committed
[OPENMP50]Allow use of array shaping expression in a list.
Need to allow arrayshaping expression in a list of expressions, so use ParseAssignmentExpression() when try to parse the base of the shaping operation.
1 parent 1c0dd57 commit 9b3bf72

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

clang/lib/Parse/ParseExpr.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -3001,7 +3001,7 @@ Parser::ParseParenExpression(ParenParseOption &ExprType, bool stopIfCastExpr,
30013001
// Match the ')'.
30023002
T.consumeClose();
30033003
RParenLoc = T.getCloseLocation();
3004-
Result = Actions.CorrectDelayedTyposInExpr(ParseExpression());
3004+
Result = Actions.CorrectDelayedTyposInExpr(ParseAssignmentExpression());
30053005
if (ErrorFound) {
30063006
Result = ExprError();
30073007
} else if (!Result.isInvalid()) {

clang/test/OpenMP/task_ast_print.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -164,8 +164,8 @@ int main(int argc, char **argv) {
164164
#pragma omp threadprivate(a)
165165
Enum ee;
166166
// CHECK: Enum ee;
167-
#pragma omp task untied mergeable depend(out:argv[:a][1], (arr)[0:],([argc][10])argv) if(task: argc > 0) priority(f) depend(depobj:y)
168-
// CHECK-NEXT: #pragma omp task untied mergeable depend(out : argv[:a][1],(arr)[0:],([argc][10])argv) if(task: argc > 0) priority(f) depend(depobj : y)
167+
#pragma omp task untied mergeable depend(out:argv[:a][1], (arr)[0:],([argc][10])argv,b) if(task: argc > 0) priority(f) depend(depobj:y)
168+
// CHECK-NEXT: #pragma omp task untied mergeable depend(out : argv[:a][1],(arr)[0:],([argc][10])argv,b) if(task: argc > 0) priority(f) depend(depobj : y)
169169
a = 2;
170170
// CHECK-NEXT: a = 2;
171171
#pragma omp taskgroup task_reduction(min: arr1)

0 commit comments

Comments
 (0)