9#ifndef FORTRAN_PARSER_DUMP_PARSE_TREE_H_
10#define FORTRAN_PARSER_DUMP_PARSE_TREE_H_
12#include "format-specification.h"
13#include "parse-tree-visitor.h"
14#include "parse-tree.h"
17#include "flang/Common/enum-set.h"
18#include "flang/Common/idioms.h"
19#include "flang/Common/indirection.h"
20#include "flang/Support/Fortran.h"
21#include "llvm/ADT/StringExtras.h"
22#include "llvm/Frontend/OpenMP/OMP.h"
23#include "llvm/Support/raw_ostream.h"
33class ParseTreeDumper {
35 explicit ParseTreeDumper(llvm::raw_ostream &out,
37 : out_(out), asFortran_{asFortran} {}
39 static constexpr const char *GetNodeName(
const char *) {
return "char *"; }
41 template <
typename T,
typename E,
size_t B>
43 llvm::ListSeparator sep;
45 llvm::raw_string_ostream stream(s);
46 x.IterateOverMembers([&](E e) { stream << sep << T::EnumToString(e); });
49#define NODE_ENUMSET(T, S) \
50 static std::string GetNodeName(const T::S &x) { \
51 return #S " = {"s + GetMemberNames<T>(x) + "}"s; \
53#define NODE_NAME(T, N) \
54 static constexpr const char *GetNodeName(const T &) { return N; }
55#define NODE_ENUM(T, E) \
56 static std::string GetNodeName(const T::E &x) { \
57 return #E " = "s + std::string{T::EnumToString(x)}; \
59#define NODE(T1, T2) NODE_NAME(T1::T2, #T2)
60 NODE_NAME(
bool,
"bool")
65 NODE_ENUM(
common, CUDADataAttr)
66 NODE_ENUM(
common, CUDASubprogramAttrs)
67 NODE_ENUM(
common, ImportKind)
68 NODE_ENUM(
common, OmpDependenceKind)
69 NODE_ENUM(
common, OmpMemoryOrderType)
70 NODE_ENUM(
common, OpenACCDeviceType)
71 NODE(format, ControlEditDesc)
73 NODE(format, DerivedTypeDataEditDesc)
74 NODE(format, FormatItem)
75 NODE(format, FormatSpecification)
76 NODE(format, IntrinsicTypeDataEditDesc)
90#define GEN_FLANG_DUMP_PARSE_TREE_CLAUSES
91#include "llvm/Frontend/OpenACC/ACC.inc"
94 static std::string GetNodeName(
const llvm::acc::DefaultValue &x) {
96 "llvm::acc::DefaultValue = ", llvm::acc::getOpenACCDefaultValueName(x))
104 NODE(
parser, AccEndAtomic)
114 NODE(
parser, AccObjectList)
129 static std::string GetNodeName(
const llvm::acc::Directive &x) {
131 "llvm::acc::Directive = ", llvm::acc::getOpenACCDirectiveName(x))
154 NODE(
parser, AllocatableStmt)
160 NODE(
parser, AltReturnSpec)
162 NODE(
parser, ArrayConstructor)
171 NODE(
parser, AssumedImpliedSpec)
172 NODE(
parser, AssumedRankSpec)
173 NODE(
parser, AssumedShapeSpec)
175 NODE(
parser, Asynchronous)
176 NODE(
parser, AsynchronousStmt)
178 NODE(
parser, BOZLiteralConstant)
179 NODE(
parser, BackspaceStmt)
181 NODE(
parser, BasedPointerStmt)
191 NODE(
parser, BlockDataStmt)
192 NODE(
parser, BlockSpecificationPart)
218 NODE(
parser, CodimensionStmt)
248 NODE(
parser, ComponentDataSource)
261 NODE(
parser, ConditionalArgNil)
267 NODE(
parser, ContainsStmt)
269 NODE(
parser, ContiguousStmt)
270 NODE(
parser, ContinueStmt)
299 NODE(
parser, DeferredCoshapeSpecList)
300 NODE(
parser, DeferredShapeSpecList)
301 NODE(
parser, DefinedOpName)
314 NODE(
parser, ElsewhereStmt)
315 NODE(
parser, EndAssociateStmt)
316 NODE(
parser, EndBlockDataStmt)
317 NODE(
parser, EndBlockStmt)
319 NODE(
parser, EndCriticalStmt)
322 NODE(
parser, EndForallStmt)
323 NODE(
parser, EndFunctionStmt)
325 NODE(
parser, EndInterfaceStmt)
327 NODE(
parser, EndModuleStmt)
328 NODE(
parser, EndMpSubprogramStmt)
329 NODE(
parser, EndProgramStmt)
330 NODE(
parser, EndSelectStmt)
331 NODE(
parser, EndSubmoduleStmt)
332 NODE(
parser, EndSubroutineStmt)
334 NODE(
parser, EndWhereStmt)
341 NODE(
parser, EnumeratorDefStmt)
343 NODE(
parser, EquivalenceObject)
344 NODE(
parser, EquivalenceStmt)
346 NODE(
parser, ErrorRecovery)
351 NODE(
parser, ExecutionPart)
357 NODE(
Expr, Parentheses)
358 NODE(
Expr, UnaryPlus)
361 NODE(
Expr, PercentLoc)
362 NODE(
Expr, DefinedUnary)
379 NODE(
Expr, DefinedBinary)
380 NODE(
Expr, ComplexConstructor)
382 NODE(
parser, ExternalStmt)
383 NODE(
parser, FailImageStmt)
384 NODE(
parser, FileUnitNumber)
385 NODE(
parser, FinalProcedureStmt)
421 NODE(
parser, ImplicitPart)
426 NODE(
parser, ImpliedShapeSpec)
440 NODE(
parser, IntegerTypeSpec)
453 NODE(
parser, IntrinsicStmt)
490 NODE_NAME(LoopControl::Bounds,
"LoopBounds")
491 NODE_NAME(AcImpliedDoControl::Bounds,
"LoopBounds")
492 NODE_NAME(DataImpliedDo::Bounds,
"LoopBounds")
497 NODE(
Map, EndMapStmt)
504 NODE(
parser, MpSubprogramStmt)
507 NODE(
parser, NamedConstant)
517 NODE(
parser, OldParameterStmt)
519 static std::string GetNodeName(
const llvm::omp::Directive &x) {
520 return llvm::Twine(
"llvm::omp::Directive = ",
521 llvm::omp::getOpenMPDirectiveName(x, llvm::omp::FallbackVersion))
524 static std::string GetNodeName(
const llvm::omp::Clause &x) {
526 "llvm::omp::Clause = ", llvm::omp::getOpenMPClauseName(x))
677 NODE(
parser, OmpNoOpenMPClause)
678 NODE(
parser, OmpNoOpenMPRoutinesClause)
679 NODE(
parser, OmpNoParallelismClause)
770#define GEN_FLANG_DUMP_PARSE_TREE_CLAUSES
771#include "llvm/Frontend/OpenMP/OMP.inc"
807 NODE(
parser, OptionalStmt)
812 NODE(
parser, ParameterStmt)
852 NODE(
parser, ProtectedStmt)
878 NODE(
parser, SequenceStmt)
884 NODE(
parser, SpecificationExpr)
888 NODE(
parser, StatVariable)
912 NODE(
parser, SyncMemoryStmt)
931 NODE(
common, TypeParamAttr)
937 NODE(
Union, EndUnionStmt)
938 NODE(
Union, UnionStmt)
941 NODE(
parser, UnsignedTypeSpec)
943 NODE_ENUM(
UseStmt, ModuleNature)
950 NODE(
parser, IntrinsicVectorTypeSpec)
954 NODE(
parser, VolatileStmt)
967 template <
typename T>
bool Pre(
const T &x) {
968 std::string fortran{AsFortran<T>(x)};
969 if (fortran.empty() && (UnionTrait<T> || WrapperTrait<T>)) {
970 Prefix(GetNodeName(x));
973 out_ << GetNodeName(x);
974 if (!fortran.empty()) {
975 out_ <<
" = '" << fortran <<
'\'';
983 template <
typename T>
void Post(
const T &x) {
984 if (AsFortran<T>(x).empty() && (UnionTrait<T> || WrapperTrait<T>)) {
993 bool Pre(
const CharBlock &) {
return true; }
996 template <
typename T>
bool Pre(
const Statement<T> &) {
return true; }
997 template <
typename T>
void Post(
const Statement<T> &) {}
1006 template <
typename A>
bool Pre(
const Scalar<A> &) {
1010 template <
typename A>
void Post(
const Scalar<A> &) { EndLineIfNonempty(); }
1012 template <
typename A>
bool Pre(
const Constant<A> &) {
1016 template <
typename A>
void Post(
const Constant<A> &) { EndLineIfNonempty(); }
1018 template <
typename A>
bool Pre(
const Integer<A> &) {
1022 template <
typename A>
void Post(
const Integer<A> &) { EndLineIfNonempty(); }
1024 template <
typename A>
bool Pre(
const Logical<A> &) {
1028 template <
typename A>
void Post(
const Logical<A> &) { EndLineIfNonempty(); }
1031 Prefix(
"DefaultChar");
1035 EndLineIfNonempty();
1038 template <
typename... A>
bool Pre(
const std::tuple<A...> &) {
return true; }
1039 template <
typename... A>
void Post(
const std::tuple<A...> &) {}
1041 template <
typename... A>
bool Pre(
const std::variant<A...> &) {
return true; }
1042 template <
typename... A>
void Post(
const std::variant<A...> &) {}
1046 template <
typename T> std::string AsFortran(
const T &x) {
1048 llvm::raw_string_ostream ss{buf};
1050 if (asFortran_ && x.typedExpr) {
1051 asFortran_->expr(ss, *x.typedExpr);
1053 }
else if constexpr (std::is_same_v<T, AssignmentStmt> ||
1054 std::is_same_v<T, PointerAssignmentStmt>) {
1055 if (asFortran_ && x.typedAssignment) {
1056 asFortran_->assignment(ss, *x.typedAssignment);
1058 }
else if constexpr (std::is_same_v<T, CallStmt>) {
1059 if (asFortran_ && x.typedCall) {
1060 asFortran_->call(ss, *x.typedCall);
1062 }
else if constexpr (std::is_same_v<T, IntLiteralConstant> ||
1063 std::is_same_v<T, SignedIntLiteralConstant> ||
1064 std::is_same_v<T, UnsignedLiteralConstant>) {
1065 ss << std::get<CharBlock>(x.t);
1066 }
else if constexpr (std::is_same_v<T, RealLiteralConstant::Real>) {
1068 }
else if constexpr (std::is_same_v<T, std::string> ||
1069 std::is_same_v<T, std::int64_t> || std::is_same_v<T, std::uint64_t>) {
1075 if constexpr (std::is_same_v<T, Name>) {
1076 return x.source.ToString();
1077#ifdef SHOW_ALL_SOURCE_MEMBERS
1079 return x.source.ToString();
1081 }
else if constexpr (std::is_same_v<T, int>) {
1082 return std::to_string(x);
1083 }
else if constexpr (std::is_same_v<T, bool>) {
1084 return x ?
"true" :
"false";
1090 void IndentEmptyLine() {
1091 if (emptyline_ && indent_ > 0) {
1092 for (
int i{0}; i < indent_; ++i) {
1099 void Prefix(
const char *str) {
1101 out_ << str <<
" -> ";
1105 void Prefix(
const std::string &str) {
1107 out_ << str <<
" -> ";
1116 void EndLineIfNonempty() {
1124 llvm::raw_ostream &out_;
1126 bool emptyline_{
false};
1129template <
typename T>
1130llvm::raw_ostream &DumpTree(llvm::raw_ostream &out,
const T &x,
Definition indirection.h:31
Definition char-block.h:28
Definition dump-parse-tree.h:33
Definition bit-population-count.h:20
Definition check-expression.h:19
Definition parse-tree.h:1277
Definition parse-tree.h:1284
Definition parse-tree.h:1248
Definition parse-tree.h:1236
Definition parse-tree.h:5704
Definition parse-tree.h:5680
Definition parse-tree.h:5696
Definition parse-tree.h:5688
Definition parse-tree.h:5665
Definition parse-tree.h:5729
Definition parse-tree.h:5659
Definition parse-tree.h:5535
Definition parse-tree.h:5508
Definition parse-tree.h:5636
Definition parse-tree.h:5621
Definition parse-tree.h:5616
Definition parse-tree.h:5524
Definition parse-tree.h:5546
Definition parse-tree.h:5529
Definition parse-tree.h:5541
Definition parse-tree.h:5573
Definition parse-tree.h:5567
Definition parse-tree.h:5671
Definition parse-tree.h:5735
Definition parse-tree.h:5612
Definition parse-tree.h:5603
Definition parse-tree.h:5513
Definition parse-tree.h:5552
Definition parse-tree.h:5557
Definition parse-tree.h:5500
Definition parse-tree.h:5596
Definition parse-tree.h:5592
Definition parse-tree.h:5588
Definition parse-tree.h:5518
Definition parse-tree.h:5584
Definition parse-tree.h:5578
Definition parse-tree.h:5562
Definition parse-tree.h:897
Definition parse-tree.h:1406
Definition parse-tree.h:498
Definition parse-tree.h:3274
Definition parse-tree.h:3263
Definition parse-tree.h:1968
Definition parse-tree.h:1933
Definition parse-tree.h:1912
Definition parse-tree.h:1924
Definition parse-tree.h:1979
Definition parse-tree.h:1941
Definition parse-tree.h:3496
Definition parse-tree.h:1898
Definition parse-tree.h:1332
Definition parse-tree.h:3501
Definition parse-tree.h:3506
Definition parse-tree.h:2005
Definition parse-tree.h:2160
Definition parse-tree.h:2151
Definition parse-tree.h:2144
Definition parse-tree.h:1314
Definition parse-tree.h:1367
Definition parse-tree.h:3446
Definition parse-tree.h:1115
Definition parse-tree.h:1428
Definition parse-tree.h:1435
Definition parse-tree.h:2182
Definition parse-tree.h:3020
Definition parse-tree.h:2015
Definition parse-tree.h:3440
Definition parse-tree.h:5805
Definition parse-tree.h:5799
Definition parse-tree.h:3298
Definition parse-tree.h:3281
Definition parse-tree.h:2423
Definition parse-tree.h:2405
Definition parse-tree.h:2411
Definition parse-tree.h:2392
Definition parse-tree.h:2213
Definition parse-tree.h:2198
Definition parse-tree.h:672
Definition parse-tree.h:1830
Definition parse-tree.h:856
Definition parse-tree.h:688
Definition parse-tree.h:2682
Definition parse-tree.h:2190
Definition parse-tree.h:972
Definition parse-tree.h:1441
Definition parse-tree.h:1892
Definition parse-tree.h:1608
Definition parse-tree.h:1616
Definition parse-tree.h:3399
Definition parse-tree.h:3385
Definition parse-tree.h:842
Definition parse-tree.h:834
Definition parse-tree.h:983
Definition parse-tree.h:996
Definition parse-tree.h:1027
Definition parse-tree.h:1104
Definition parse-tree.h:1049
Definition parse-tree.h:1199
Definition parse-tree.h:2510
Definition parse-tree.h:2238
Definition parse-tree.h:3255
Definition parse-tree.h:3242
Definition parse-tree.h:1687
Definition parse-tree.h:2660
Definition parse-tree.h:2658
Definition parse-tree.h:305
Definition parse-tree.h:2229
Definition parse-tree.h:2220
Definition parse-tree.h:1057
Definition parse-tree.h:1498
Definition parse-tree.h:1510
Definition parse-tree.h:1808
Definition parse-tree.h:1469
Definition parse-tree.h:1518
Definition parse-tree.h:1484
Definition parse-tree.h:1524
Definition parse-tree.h:1490
Definition parse-tree.h:1999
Definition parse-tree.h:439
Definition parse-tree.h:766
Definition parse-tree.h:329
Definition parse-tree.h:614
Definition parse-tree.h:1184
Definition parse-tree.h:748
Definition parse-tree.h:914
Definition parse-tree.h:1847
Definition parse-tree.h:1535
Definition parse-tree.h:2325
Definition parse-tree.h:3151
Definition parse-tree.h:2345
Definition parse-tree.h:2207
Definition parse-tree.h:1382
Definition parse-tree.h:3352
Definition parse-tree.h:1228
Definition parse-tree.h:1214
Definition parse-tree.h:2564
Definition parse-tree.h:2570
Definition parse-tree.h:2578
Definition parse-tree.h:531
Definition parse-tree.h:556
Definition parse-tree.h:966
Definition parse-tree.h:953
Definition parse-tree.h:1695
Definition parse-tree.h:1043
Definition parse-tree.h:2101
Definition parse-tree.h:2117
Definition parse-tree.h:2095
Definition parse-tree.h:2130
Definition parse-tree.h:2107
Definition parse-tree.h:3286
Definition parse-tree.h:3140
Definition parse-tree.h:3318
Definition parse-tree.h:3033
Definition parse-tree.h:3048
Definition parse-tree.h:863
Definition parse-tree.h:2359
Definition parse-tree.h:2375
Definition parse-tree.h:2338
Definition parse-tree.h:1668
Definition parse-tree.h:1678
Definition parse-tree.h:421
Definition parse-tree.h:1592
Definition parse-tree.h:1601
Definition parse-tree.h:627
Definition parse-tree.h:1014
Definition parse-tree.h:2881
Definition parse-tree.h:2890
Definition parse-tree.h:2895
Definition parse-tree.h:2879
Definition parse-tree.h:2908
Definition parse-tree.h:792
Definition parse-tree.h:313
Definition parse-tree.h:1340
Definition parse-tree.h:1544
Definition parse-tree.h:3210
Definition parse-tree.h:3172
Definition parse-tree.h:3198
Definition parse-tree.h:3054
Definition parse-tree.h:477
Definition parse-tree.h:465
Definition parse-tree.h:706
Definition parse-tree.h:2720
Definition parse-tree.h:2718
Definition parse-tree.h:2629
Definition parse-tree.h:779
Definition parse-tree.h:660
Definition parse-tree.h:2302
Definition parse-tree.h:1293
Definition parse-tree.h:678
Definition parse-tree.h:1586
Definition parse-tree.h:888
Definition parse-tree.h:2270
Definition parse-tree.h:2604
Definition parse-tree.h:870
Definition parse-tree.h:321
Definition parse-tree.h:2290
Definition parse-tree.h:2929
Definition parse-tree.h:3462
Definition parse-tree.h:2062
Definition parse-tree.h:2953
Definition parse-tree.h:2943
Definition parse-tree.h:2964
Definition parse-tree.h:589
Definition parse-tree.h:1299
Definition parse-tree.h:640
Definition parse-tree.h:2308
Definition parse-tree.h:2532
Definition parse-tree.h:1415
Definition parse-tree.h:4327
Definition parse-tree.h:4333
Definition parse-tree.h:4331
Definition parse-tree.h:4346
Definition parse-tree.h:4353
Definition parse-tree.h:4361
Definition parse-tree.h:4376
Definition parse-tree.h:5323
Definition parse-tree.h:4383
Definition parse-tree.h:5181
Definition parse-tree.h:5170
Definition parse-tree.h:4392
Definition parse-tree.h:4404
Definition parse-tree.h:5112
Definition parse-tree.h:5187
Definition parse-tree.h:4415
Definition parse-tree.h:5122
Definition parse-tree.h:4421
Definition parse-tree.h:5081
Definition parse-tree.h:5065
Definition parse-tree.h:4430
Definition parse-tree.h:3631
Definition parse-tree.h:4438
Definition parse-tree.h:5250
Definition parse-tree.h:5259
Definition parse-tree.h:5267
Definition parse-tree.h:5242
Definition parse-tree.h:5230
Definition parse-tree.h:4455
Definition parse-tree.h:4473
Definition parse-tree.h:4532
Definition parse-tree.h:4530
Definition parse-tree.h:4554
Definition parse-tree.h:4562
Definition parse-tree.h:4572
Definition parse-tree.h:4582
Definition parse-tree.h:4590
Definition parse-tree.h:3532
Definition parse-tree.h:5088
Definition parse-tree.h:4545
Definition parse-tree.h:4512
Definition parse-tree.h:4605
Definition parse-tree.h:4600
Definition parse-tree.h:5117
Definition parse-tree.h:5192
Definition parse-tree.h:4616
Definition parse-tree.h:5155
Definition parse-tree.h:4624
Definition parse-tree.h:4637
Definition parse-tree.h:4648
Definition parse-tree.h:4658
Definition parse-tree.h:4666
Definition parse-tree.h:5276
Definition parse-tree.h:4671
Definition parse-tree.h:4679
Definition parse-tree.h:4695
Definition parse-tree.h:4718
Definition parse-tree.h:4684
Definition parse-tree.h:4708
Definition parse-tree.h:4725
Definition parse-tree.h:3643
Definition parse-tree.h:4485
Definition parse-tree.h:4503
Definition parse-tree.h:4494
Definition parse-tree.h:4734
Definition parse-tree.h:4749
Definition parse-tree.h:4760
Definition parse-tree.h:4785
Definition parse-tree.h:4797
Definition parse-tree.h:4806
Definition parse-tree.h:5149
Definition parse-tree.h:4830
Definition parse-tree.h:4842
Definition parse-tree.h:4854
Definition parse-tree.h:3577
Definition parse-tree.h:3568
Definition parse-tree.h:3565
Definition parse-tree.h:4865
Definition parse-tree.h:4878
Definition parse-tree.h:4890
Definition parse-tree.h:4901
Definition parse-tree.h:3621
Definition parse-tree.h:4911
Definition parse-tree.h:5283
Definition parse-tree.h:4920
Definition parse-tree.h:4932
Definition parse-tree.h:5201
Definition parse-tree.h:4943
Definition parse-tree.h:4950
Definition parse-tree.h:3581
Definition parse-tree.h:3603
Definition parse-tree.h:3590
Definition parse-tree.h:4959
Definition parse-tree.h:4970
Definition parse-tree.h:5289
Definition parse-tree.h:4979
Definition parse-tree.h:4994
Definition parse-tree.h:5004
Definition parse-tree.h:3557
Definition parse-tree.h:3550
Definition parse-tree.h:5013
Definition parse-tree.h:5022
Definition parse-tree.h:5038
Definition parse-tree.h:5060
Definition parse-tree.h:5159
Definition parse-tree.h:5049
Definition parse-tree.h:3064
Definition parse-tree.h:5711
Definition parse-tree.h:5718
Definition parse-tree.h:5647
Definition parse-tree.h:5740
Definition parse-tree.h:5779
Definition parse-tree.h:5750
Definition parse-tree.h:5768
Definition parse-tree.h:5759
Definition parse-tree.h:5641
Definition parse-tree.h:5773
Definition parse-tree.h:5723
Definition parse-tree.h:5653
Definition parse-tree.h:5349
Definition parse-tree.h:5354
Definition parse-tree.h:5391
Definition parse-tree.h:5384
Definition parse-tree.h:5475
Definition parse-tree.h:5339
Definition parse-tree.h:5327
Definition parse-tree.h:5402
Definition parse-tree.h:5416
Definition parse-tree.h:5432
Definition parse-tree.h:5440
Definition parse-tree.h:5493
Definition parse-tree.h:5461
Definition parse-tree.h:5487
Definition parse-tree.h:5207
Definition parse-tree.h:5445
Definition parse-tree.h:5451
Definition parse-tree.h:378
Definition parse-tree.h:2798
Definition parse-tree.h:2761
Definition parse-tree.h:2989
Definition parse-tree.h:2027
Definition parse-tree.h:1554
Definition parse-tree.h:1988
Definition parse-tree.h:2824
Definition parse-tree.h:3109
Definition parse-tree.h:2782
Definition parse-tree.h:927
Definition parse-tree.h:3087
Definition parse-tree.h:1068
Definition parse-tree.h:1096
Definition parse-tree.h:1887
Definition parse-tree.h:1088
Definition parse-tree.h:1082
Definition parse-tree.h:1075
Definition parse-tree.h:3097
Definition parse-tree.h:3225
Definition parse-tree.h:3190
Definition parse-tree.h:573
Definition parse-tree.h:2745
Definition parse-tree.h:811
Definition parse-tree.h:2259
Definition parse-tree.h:2975
Definition parse-tree.h:1567
Definition parse-tree.h:297
Definition parse-tree.h:1653
Definition parse-tree.h:2382
Definition parse-tree.h:2446
Definition parse-tree.h:2458
Definition parse-tree.h:2437
Definition parse-tree.h:2492
Definition parse-tree.h:2472
Definition parse-tree.h:2138
Definition parse-tree.h:3344
Definition parse-tree.h:848
Definition parse-tree.h:785
Definition parse-tree.h:823
Definition parse-tree.h:400
Definition parse-tree.h:453
Definition parse-tree.h:1957
Definition parse-tree.h:361
Definition parse-tree.h:3362
Definition parse-tree.h:2524
Definition parse-tree.h:1877
Definition parse-tree.h:1205
Definition parse-tree.h:3483
Definition parse-tree.h:3455
Definition parse-tree.h:3478
Definition parse-tree.h:2995
Definition parse-tree.h:3006
Definition parse-tree.h:3159
Definition parse-tree.h:3328
Definition parse-tree.h:1644
Definition parse-tree.h:1839
Definition parse-tree.h:1635
Definition parse-tree.h:1825
Definition parse-tree.h:3129
Definition parse-tree.h:2542
Definition parse-tree.h:2555
Definition parse-tree.h:905
Definition parse-tree.h:1148
Definition parse-tree.h:1161
Definition parse-tree.h:1123
Definition parse-tree.h:1170
Definition parse-tree.h:1133
Definition parse-tree.h:1396
Definition parse-tree.h:2481
Definition parse-tree.h:933
Definition parse-tree.h:941
Definition parse-tree.h:742
Definition parse-tree.h:651
Definition parse-tree.h:755
Definition parse-tree.h:3471
Definition parse-tree.h:356
Definition parse-tree.h:2614
Definition parse-tree.h:798
Definition parse-tree.h:3073
Definition parse-tree.h:1855
Definition parse-tree.h:728
Definition parse-tree.h:733
Definition parse-tree.h:284
Definition parse-tree.h:2808
Definition parse-tree.h:2053
Definition parse-tree.h:2046
Definition parse-tree.h:2077
Definition parse-tree.h:2040
Definition parse-tree.h:2767
Definition parse-tree.h:3705
Definition parse-tree.h:3696
Definition parse-tree.h:3666
Definition parse-tree.h:3655
Definition parse-tree.h:3650
Definition parse-tree.h:3676
Definition parse-tree.h:3689
Definition parse-tree.h:3860
Definition parse-tree.h:3877
Definition parse-tree.h:3869
Definition parse-tree.h:3893
Definition parse-tree.h:3885
Definition parse-tree.h:3905
Definition parse-tree.h:3917
Definition parse-tree.h:3927
Definition parse-tree.h:3938
Definition parse-tree.h:3951
Definition parse-tree.h:3963
Definition parse-tree.h:3984
Definition parse-tree.h:3995
Definition parse-tree.h:4005
Definition parse-tree.h:4014
Definition parse-tree.h:4046
Definition parse-tree.h:4057
Definition parse-tree.h:4068
Definition parse-tree.h:4080
Definition parse-tree.h:4090
Definition parse-tree.h:4098
Definition parse-tree.h:4107
Definition parse-tree.h:4116
Definition parse-tree.h:4150
Definition parse-tree.h:4137
Definition parse-tree.h:4124
Definition parse-tree.h:4174
Definition parse-tree.h:4165
Definition parse-tree.h:4208
Definition parse-tree.h:4184
Definition parse-tree.h:4197
Definition parse-tree.h:4217
Definition parse-tree.h:4230
Definition parse-tree.h:4239
Definition parse-tree.h:4249
Definition parse-tree.h:4259
Definition parse-tree.h:4268
Definition parse-tree.h:4276
Definition parse-tree.h:4286
Definition parse-tree.h:4297
Definition parse-tree.h:4310
Definition parse-tree.h:3836
Definition parse-tree.h:3743
Definition parse-tree.h:3726
Definition parse-tree.h:3767
Definition parse-tree.h:3733
Definition parse-tree.h:3794
Definition parse-tree.h:3806
Definition parse-tree.h:3819
Definition parse-tree.h:3828