@@ -667,7 +667,10 @@ def OMP_CancellationPoint : Directive<"cancellation point"> {
667
667
let association = AS_None;
668
668
let category = CA_Executable;
669
669
}
670
- def OMP_Coexecute : Directive<"coexecute"> {}
670
+ def OMP_Coexecute : Directive<"coexecute"> {
671
+ let association = AS_Block;
672
+ let category = CA_Executable;
673
+ }
671
674
def OMP_Critical : Directive<"critical"> {
672
675
let allowedOnceClauses = [
673
676
VersionedClause<OMPC_Hint>,
@@ -718,7 +721,11 @@ def OMP_DeclareTarget : Directive<"declare target"> {
718
721
let association = AS_None;
719
722
let category = CA_Declarative;
720
723
}
721
- def OMP_EndCoexecute : Directive<"end coexecute"> {}
724
+ def OMP_EndCoexecute : Directive<"end coexecute"> {
725
+ let leafConstructs = OMP_Coexecute.leafConstructs;
726
+ let association = OMP_Coexecute.association;
727
+ let category = OMP_Coexecute.category;
728
+ }
722
729
def OMP_EndDeclareTarget : Directive<"end declare target"> {
723
730
let association = AS_Delimited;
724
731
let category = OMP_DeclareTarget.category;
@@ -2194,8 +2201,10 @@ def OMP_TargetTeamsCoexecute : Directive<"target teams coexecute"> {
2194
2201
VersionedClause<OMPC_NumTeams>,
2195
2202
VersionedClause<OMPC_ThreadLimit>,
2196
2203
VersionedClause<OMPC_OMPX_DynCGroupMem>,
2197
- VersionedClause<OMPC_OMX_Bare >,
2204
+ VersionedClause<OMPC_OMPX_Bare >,
2198
2205
];
2206
+ let leafConstructs = [OMP_Target, OMP_Teams, OMP_Coexecute];
2207
+ let category = CA_Executable;
2199
2208
}
2200
2209
def OMP_TargetTeamsDistribute : Directive<"target teams distribute"> {
2201
2210
let allowedClauses = [
@@ -2490,6 +2499,8 @@ def OMP_TeamsCoexecute : Directive<"teams coexecute"> {
2490
2499
VersionedClause<OMPC_NumTeams>,
2491
2500
VersionedClause<OMPC_ThreadLimit>
2492
2501
];
2502
+ let leafConstructs = [OMP_Target, OMP_Teams];
2503
+ let category = CA_Executable;
2493
2504
}
2494
2505
def OMP_TeamsDistribute : Directive<"teams distribute"> {
2495
2506
let allowedClauses = [
0 commit comments