@@ -2363,11 +2363,8 @@ void OmpStructureChecker::Leave(const parser::OmpClauseList &) {
23632363void OmpStructureChecker::Enter (const parser::OmpClause &x) {
23642364 SetContextClause (x);
23652365
2366- llvm::omp::Clause clauseId = std::visit (
2367- [this ](auto &&s) { return GetClauseKindForParserClass (s); }, x.u );
2368-
23692366 // The visitors for these clauses do their own checks.
2370- switch (clauseId ) {
2367+ switch (x. Id () ) {
23712368 case llvm::omp::Clause::OMPC_copyprivate:
23722369 case llvm::omp::Clause::OMPC_enter:
23732370 case llvm::omp::Clause::OMPC_lastprivate:
@@ -3244,7 +3241,7 @@ void OmpStructureChecker::Enter(const parser::OmpClause::Lastprivate &x) {
32443241 DirectivesClauseTriple dirClauseTriple;
32453242 SymbolSourceMap currSymbols;
32463243 GetSymbolsInObjectList (objectList, currSymbols);
3247- CheckDefinableObjects (currSymbols, GetClauseKindForParserClass (x) );
3244+ CheckDefinableObjects (currSymbols, llvm::omp::Clause::OMPC_lastprivate );
32483245 CheckCopyingPolymorphicAllocatable (
32493246 currSymbols, llvm::omp::Clause::OMPC_lastprivate);
32503247
@@ -3257,7 +3254,7 @@ void OmpStructureChecker::Enter(const parser::OmpClause::Lastprivate &x) {
32573254 llvm::omp::Directive::OMPD_parallel, llvm::omp::privateReductionSet));
32583255
32593256 CheckPrivateSymbolsInOuterCxt (
3260- currSymbols, dirClauseTriple, GetClauseKindForParserClass (x) );
3257+ currSymbols, dirClauseTriple, llvm::omp::Clause::OMPC_lastprivate );
32613258
32623259 using LastprivateModifier = parser::OmpLastprivateClause::LastprivateModifier;
32633260 const auto &maybeMod{std::get<std::optional<LastprivateModifier>>(x.v .t )};
0 commit comments