@@ -361,8 +361,7 @@ struct DefinedOperator {
361
361
using WrapperTrait = std::true_type;
362
362
Object v;
363
363
};
364
- ENUM_CLASS (IntrinsicOperator, Power, Multiply, Divide, Add, Subtract, Concat,
365
- LT, LE, EQ, NE, GE, GT, NOT, AND, OR, EQV, NEQV)
364
+ using IntrinsicOperator = Fortran::parser::DefinedOperator::IntrinsicOperator;
366
365
using UnionTrait = std::true_type;
367
366
std::variant<DefinedOpName, IntrinsicOperator> u;
368
367
};
@@ -554,10 +553,10 @@ Copyprivate make(const parser::OmpClause::Copyprivate &inp,
554
553
}
555
554
556
555
struct Defaultmap {
557
- ENUM_CLASS ( ImplicitBehavior, Alloc, To, From, Tofrom, Firstprivate, None,
558
- Default)
559
- ENUM_CLASS ( VariableCategory, Scalar, Aggregate, Allocatable, Pointer)
560
- using TupleTrait = std::true_type ;
556
+ using ImplicitBehavior =
557
+ Fortran::parser::OmpDefaultmapClause::ImplicitBehavior;
558
+ using VariableCategory =
559
+ Fortran::parser::OmpDefaultmapClause::VariableCategory ;
561
560
std::tuple<ImplicitBehavior, std::optional<VariableCategory>> t;
562
561
};
563
562
@@ -576,7 +575,7 @@ Defaultmap make(const parser::OmpClause::Defaultmap &inp,
576
575
}
577
576
578
577
struct Default {
579
- ENUM_CLASS ( Type, Private, Firstprivate, Shared, None)
578
+ using Type = Fortran::parser::OmpDefaultClause::Type;
580
579
using WrapperTrait = std::true_type;
581
580
Type v;
582
581
};
@@ -597,7 +596,7 @@ struct Depend {
597
596
using WrapperTrait = std::true_type;
598
597
List<Vec> v;
599
598
};
600
- ENUM_CLASS ( Type, In, Out, Inout, Source, Sink)
599
+ using Type = Fortran::parser::OmpDependenceType::Type;
601
600
struct InOut {
602
601
using TupleTrait = std::true_type;
603
602
std::tuple<Type, ObjectList> t;
@@ -644,7 +643,7 @@ Depend make(const parser::OmpClause::Depend &inp,
644
643
}
645
644
646
645
struct Device {
647
- ENUM_CLASS ( DeviceModifier, Ancestor, Device_Num)
646
+ using DeviceModifier = Fortran::parser::OmpDeviceClause::DeviceModifier;
648
647
using TupleTrait = std::true_type;
649
648
std::tuple<std::optional<DeviceModifier>, SomeExpr> t;
650
649
};
@@ -663,7 +662,7 @@ Device make(const parser::OmpClause::Device &inp,
663
662
}
664
663
665
664
struct DeviceType {
666
- ENUM_CLASS ( Type, Any, Host, Nohost)
665
+ using Type = Fortran::parser::OmpDeviceTypeClause::Type;
667
666
using WrapperTrait = std::true_type;
668
667
Type v;
669
668
};
@@ -774,9 +773,8 @@ Hint make(const parser::OmpClause::Hint &inp,
774
773
}
775
774
776
775
struct If {
777
- ENUM_CLASS (DirectiveNameModifier, Parallel, Simd, Target, TargetData,
778
- TargetEnterData, TargetExitData, TargetUpdate, Task, Taskloop,
779
- Teams)
776
+ using DirectiveNameModifier =
777
+ Fortran::parser::OmpIfClause::DirectiveNameModifier;
780
778
using TupleTrait = std::true_type;
781
779
std::tuple<std::optional<DirectiveNameModifier>, SomeExpr> t;
782
780
};
@@ -831,7 +829,7 @@ Lastprivate make(const parser::OmpClause::Lastprivate &inp,
831
829
832
830
struct Linear {
833
831
struct Modifier {
834
- ENUM_CLASS ( Type, Ref, Val, Uval)
832
+ using Type = Fortran::parser::OmpLinearModifier::Type;
835
833
using WrapperTrait = std::true_type;
836
834
Type v;
837
835
};
@@ -876,7 +874,7 @@ struct Map {
876
874
struct Always {
877
875
using EmptyTrait = std::true_type;
878
876
};
879
- ENUM_CLASS ( Type, To, From, Tofrom, Alloc, Release, Delete)
877
+ using Type = Fortran::parser::OmpMapType::Type;
880
878
using TupleTrait = std::true_type;
881
879
std::tuple<std::optional<Always>, Type> t;
882
880
};
@@ -990,8 +988,8 @@ Ordered make(const parser::OmpClause::Ordered &inp,
990
988
}
991
989
992
990
struct Order {
993
- ENUM_CLASS ( Kind, Reproducible, Unconstrained)
994
- ENUM_CLASS ( Type, Concurrent)
991
+ using Kind = Fortran::parser::OmpOrderModifier::Kind;
992
+ using Type = Fortran::parser::OmpOrderClause::Type;
995
993
using TupleTrait = std::true_type;
996
994
std::tuple<std::optional<Kind>, Type> t;
997
995
};
@@ -1043,7 +1041,7 @@ Private make(const parser::OmpClause::Private &inp,
1043
1041
}
1044
1042
1045
1043
struct ProcBind {
1046
- ENUM_CLASS ( Type, Close, Master, Spread, Primary)
1044
+ using Type = Fortran::parser::OmpProcBindClause::Type;
1047
1045
using WrapperTrait = std::true_type;
1048
1046
Type v;
1049
1047
};
@@ -1079,12 +1077,12 @@ Safelen make(const parser::OmpClause::Safelen &inp,
1079
1077
}
1080
1078
1081
1079
struct Schedule {
1082
- ENUM_CLASS ( ModType, Monotonic, Nonmonotonic, Simd)
1080
+ using ModType = Fortran::parser::OmpScheduleModifierType::ModType;
1083
1081
struct ScheduleModifier {
1084
1082
using TupleTrait = std::true_type;
1085
1083
std::tuple<ModType, std::optional<ModType>> t;
1086
1084
};
1087
- ENUM_CLASS ( ScheduleType, Static, Dynamic, Guided, Auto, Runtime)
1085
+ using ScheduleType = Fortran::parser::OmpScheduleClause::ScheduleType;
1088
1086
using TupleTrait = std::true_type;
1089
1087
std::tuple<std::optional<ScheduleModifier>, ScheduleType, MaybeExpr> t;
1090
1088
};
0 commit comments