@@ -347,14 +347,15 @@ bool ClauseProcessor::processDistSchedule(
347347bool ClauseProcessor::processExclusive (
348348 mlir::Location currentLocation,
349349 mlir::omp::ExclusiveClauseOps &result) const {
350- return findRepeatableClause<omp::clause::Exclusive>(
351- [&](const omp::clause::Exclusive &clause, const parser::CharBlock &) {
352- for (const Object &object : clause.v ) {
353- const semantics::Symbol *symbol = object.sym ();
354- mlir::Value symVal = converter.getSymbolAddress (*symbol);
355- result.exclusiveVars .push_back (symVal);
356- }
357- });
350+ if (auto *clause = findUniqueClause<omp::clause::Exclusive>()) {
351+ for (const Object &object : clause->v ) {
352+ const semantics::Symbol *symbol = object.sym ();
353+ mlir::Value symVal = converter.getSymbolAddress (*symbol);
354+ result.exclusiveVars .push_back (symVal);
355+ }
356+ return true ;
357+ }
358+ return false ;
358359}
359360
360361bool ClauseProcessor::processFilter (lower::StatementContext &stmtCtx,
@@ -396,14 +397,15 @@ bool ClauseProcessor::processHint(mlir::omp::HintClauseOps &result) const {
396397bool ClauseProcessor::processInclusive (
397398 mlir::Location currentLocation,
398399 mlir::omp::InclusiveClauseOps &result) const {
399- return findRepeatableClause<omp::clause::Inclusive>(
400- [&](const omp::clause::Inclusive &clause, const parser::CharBlock &) {
401- for (const Object &object : clause.v ) {
402- const semantics::Symbol *symbol = object.sym ();
403- mlir::Value symVal = converter.getSymbolAddress (*symbol);
404- result.inclusiveVars .push_back (symVal);
405- }
406- });
400+ if (auto *clause = findUniqueClause<omp::clause::Inclusive>()) {
401+ for (const Object &object : clause->v ) {
402+ const semantics::Symbol *symbol = object.sym ();
403+ mlir::Value symVal = converter.getSymbolAddress (*symbol);
404+ result.inclusiveVars .push_back (symVal);
405+ }
406+ return true ;
407+ }
408+ return false ;
407409}
408410
409411bool ClauseProcessor::processMergeable (
@@ -1163,7 +1165,7 @@ bool ClauseProcessor::processReduction(
11631165 ReductionProcessor rp;
11641166 rp.addDeclareReduction (
11651167 currentLocation, converter, clause, reductionVars, reduceVarByRef,
1166- reductionDeclSymbols, reductionSyms, & result.reductionMod );
1168+ reductionDeclSymbols, reductionSyms, result.reductionMod );
11671169 // Copy local lists into the output.
11681170 llvm::copy (reductionVars, std::back_inserter (result.reductionVars ));
11691171 llvm::copy (reduceVarByRef, std::back_inserter (result.reductionByref ));
0 commit comments