@@ -721,10 +721,20 @@ From make(const parser::OmpClause::From &inp,
721
721
// Full: empty
722
722
723
723
Grainsize make (const parser::OmpClause::Grainsize &inp,
724
- semantics::SemanticsContext &semaCtx) {
725
- // inp.v -> parser::ScalarIntExpr
726
- return Grainsize{{/* Prescriptiveness=*/ std::nullopt ,
727
- /* GrainSize=*/ makeExpr (inp.v , semaCtx)}};
724
+ semantics::SemanticsContext &semaCtx) {
725
+ // inp.v -> parser::OmpGrainsizeClause
726
+ using wrapped = parser::OmpGrainsizeClause;
727
+
728
+ CLAUSET_ENUM_CONVERT ( //
729
+ convert, parser::OmpGrainsizeClause::Prescriptiveness, Grainsize::Prescriptiveness,
730
+ // clang-format off
731
+ MS (Strict, Strict)
732
+ // clang-format on
733
+ );
734
+ auto &t0 = std::get<std::optional<wrapped::Prescriptiveness>>(inp.v .t );
735
+ auto &t1 = std::get<parser::ScalarIntExpr>(inp.v .t );
736
+ return Grainsize{{/* Prescriptiveness=*/ maybeApply (convert, t0),
737
+ /* Grainsize=*/ makeExpr (t1, semaCtx)}};
728
738
}
729
739
730
740
HasDeviceAddr make (const parser::OmpClause::HasDeviceAddr &inp,
@@ -971,9 +981,20 @@ Novariants make(const parser::OmpClause::Novariants &inp,
971
981
972
982
NumTasks make (const parser::OmpClause::NumTasks &inp,
973
983
semantics::SemanticsContext &semaCtx) {
974
- // inp.v -> parser::ScalarIntExpr
975
- return NumTasks{{/* Prescriptiveness=*/ std::nullopt ,
976
- /* NumTasks=*/ makeExpr (inp.v , semaCtx)}};
984
+ // inp.v -> parser::OmpNumTasksClause
985
+ using wrapped = parser::OmpNumTasksClause;
986
+
987
+ CLAUSET_ENUM_CONVERT ( //
988
+ convert, parser::OmpNumTasksClause::Prescriptiveness,
989
+ NumTasks::Prescriptiveness,
990
+ // clang-format off
991
+ MS (Strict, Strict)
992
+ // clang-format on
993
+ );
994
+ auto &t0 = std::get<std::optional<wrapped::Prescriptiveness>>(inp.v .t );
995
+ auto &t1 = std::get<parser::ScalarIntExpr>(inp.v .t );
996
+ return NumTasks{{/* Prescriptiveness=*/ maybeApply (convert, t0),
997
+ /* NumTasks=*/ makeExpr (t1, semaCtx)}};
977
998
}
978
999
979
1000
NumTeams make (const parser::OmpClause::NumTeams &inp,
0 commit comments