ABataev added inline comments.
================ Comment at: clang/lib/Sema/SemaOpenMP.cpp:6124 BindKind = BC->getBindKind(); + // First check CancelRegion which is then used in checkNestingOfRegions. ---------------- Remove this new line ================ Comment at: clang/lib/Sema/SemaOpenMP.cpp:6181-6189 + DSAStack->setCurrentDirective(OMPD_for); + break; + case OMPC_BIND_teams: + Kind = OMPD_distribute; + DSAStack->setCurrentDirective(OMPD_distribute); + break; + case OMPC_BIND_thread: ---------------- 1. You're overriding the directive kind here and do not restore it then. It may cause the compiler crash. 2. I think you need to here to create a new OpenMP region rather than overriding the existing one. ================ Comment at: clang/test/OpenMP/loop_bind_codegen.cpp:1 +// Copyright 2020 Hewlett Packard Enterprise Development LP + ---------------- Remove this ================ Comment at: clang/test/OpenMP/loop_bind_codegen.cpp:51-56 +void thread_loop2() { + #pragma omp loop bind(thread) + for (int j = 0 ; j < NNN ; j++) { + aaa[j] = j*NNN; + } +} ---------------- I think it should trigger the assert in setCurrentDirective CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144634/new/ https://reviews.llvm.org/D144634 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits