[flang-commits] [flang] [Flang][OpenMP] Fix nested PARALLEL SECTIONS validation (PR #179419)
via flang-commits
flang-commits at lists.llvm.org
Sun Feb 15 23:26:39 PST 2026
================
@@ -633,11 +633,29 @@ void OmpStructureChecker::CheckMultListItems() {
CheckMultipleOccurrence(listVars, nameList, clause->source, "LINEAR");
}
}
+bool OmpStructureChecker::IsCombinedParallelWorksharing(
+ llvm::omp::Directive directive) const {
+ // Combined parallel-worksharing constructs create their own parallel region
+ // They should not be subject to worksharing nesting restrictions
+ switch (directive) {
+ case llvm::omp::OMPD_parallel_do:
+ case llvm::omp::OMPD_parallel_do_simd:
+ case llvm::omp::OMPD_parallel_sections:
+ case llvm::omp::OMPD_parallel_workshare:
+ return true;
+ default:
+ return false;
+ }
+}
bool OmpStructureChecker::HasInvalidWorksharingNesting(
- const parser::CharBlock &source, const OmpDirectiveSet &set) {
+ const parser::CharBlock &source, const OmpDirectiveSet &set,
+ llvm::omp::Directive directive) {
----------------
blazie2004 wrote:
resolved
https://github.com/llvm/llvm-project/pull/179419
More information about the flang-commits
mailing list