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/idioms.h"
18#include "flang/Common/indirection.h"
19#include "flang/Support/Fortran.h"
20#include "llvm/Frontend/OpenMP/OMP.h"
21#include "llvm/Support/raw_ostream.h"
31class ParseTreeDumper {
33 explicit ParseTreeDumper(llvm::raw_ostream &out,
35 : out_(out), asFortran_{asFortran} {}
37 static constexpr const char *GetNodeName(
const char *) {
return "char *"; }
38#define NODE_NAME(T, N) \
39 static constexpr const char *GetNodeName(const T &) { return N; }
40#define NODE_ENUM(T, E) \
41 static std::string GetNodeName(const T::E &x) { \
42 return #E " = "s + std::string{T::EnumToString(x)}; \
44#define NODE(T1, T2) NODE_NAME(T1::T2, #T2)
45 NODE_NAME(
bool,
"bool")
50 NODE_ENUM(
common, CUDADataAttr)
51 NODE_ENUM(
common, CUDASubprogramAttrs)
52 NODE_ENUM(
common, OmpMemoryOrderType)
53 NODE_ENUM(
common, OpenACCDeviceType)
54 NODE(format, ControlEditDesc)
56 NODE(format, DerivedTypeDataEditDesc)
57 NODE(format, FormatItem)
58 NODE(format, FormatSpecification)
59 NODE(format, IntrinsicTypeDataEditDesc)
73#define GEN_FLANG_DUMP_PARSE_TREE_CLAUSES
74#include "llvm/Frontend/OpenACC/ACC.inc"
77 static std::string GetNodeName(
const llvm::acc::DefaultValue &x) {
79 "llvm::acc::DefaultValue = ", llvm::acc::getOpenACCDefaultValueName(x))
97 NODE(
parser, AccObjectList)
112 static std::string GetNodeName(
const llvm::acc::Directive &x) {
114 "llvm::acc::Directive = ", llvm::acc::getOpenACCDirectiveName(x))
137 NODE(
parser, AllocatableStmt)
143 NODE(
parser, AltReturnSpec)
145 NODE(
parser, ArrayConstructor)
154 NODE(
parser, AssumedImpliedSpec)
155 NODE(
parser, AssumedRankSpec)
156 NODE(
parser, AssumedShapeSpec)
158 NODE(
parser, Asynchronous)
159 NODE(
parser, AsynchronousStmt)
161 NODE(
parser, BOZLiteralConstant)
162 NODE(
parser, BackspaceStmt)
164 NODE(
parser, BasedPointerStmt)
174 NODE(
parser, BlockDataStmt)
175 NODE(
parser, BlockSpecificationPart)
201 NODE(
parser, CodimensionStmt)
227 NODE(
parser, ComponentDataSource)
241 NODE(
parser, ContainsStmt)
243 NODE(
parser, ContiguousStmt)
244 NODE(
parser, ContinueStmt)
273 NODE(
parser, DeferredCoshapeSpecList)
274 NODE(
parser, DeferredShapeSpecList)
275 NODE(
parser, DefinedOpName)
288 NODE(
parser, ElsewhereStmt)
289 NODE(
parser, EndAssociateStmt)
290 NODE(
parser, EndBlockDataStmt)
291 NODE(
parser, EndBlockStmt)
293 NODE(
parser, EndCriticalStmt)
296 NODE(
parser, EndForallStmt)
297 NODE(
parser, EndFunctionStmt)
299 NODE(
parser, EndInterfaceStmt)
301 NODE(
parser, EndModuleStmt)
302 NODE(
parser, EndMpSubprogramStmt)
303 NODE(
parser, EndProgramStmt)
304 NODE(
parser, EndSelectStmt)
305 NODE(
parser, EndSubmoduleStmt)
306 NODE(
parser, EndSubroutineStmt)
308 NODE(
parser, EndWhereStmt)
315 NODE(
parser, EnumeratorDefStmt)
317 NODE(
parser, EquivalenceObject)
318 NODE(
parser, EquivalenceStmt)
320 NODE(
parser, ErrorRecovery)
325 NODE(
parser, ExecutionPart)
331 NODE(
Expr, Parentheses)
332 NODE(
Expr, UnaryPlus)
335 NODE(
Expr, PercentLoc)
336 NODE(
Expr, DefinedUnary)
353 NODE(
Expr, DefinedBinary)
354 NODE(
Expr, ComplexConstructor)
356 NODE(
parser, ExternalStmt)
357 NODE(
parser, FailImageStmt)
358 NODE(
parser, FileUnitNumber)
359 NODE(
parser, FinalProcedureStmt)
395 NODE(
parser, ImplicitPart)
400 NODE(
parser, ImpliedShapeSpec)
414 NODE(
parser, IntegerTypeSpec)
427 NODE(
parser, IntrinsicStmt)
464 NODE_NAME(LoopControl::Bounds,
"LoopBounds")
465 NODE_NAME(AcImpliedDoControl::Bounds,
"LoopBounds")
466 NODE_NAME(DataImpliedDo::Bounds,
"LoopBounds")
471 NODE(
Map, EndMapStmt)
478 NODE(
parser, MpSubprogramStmt)
481 NODE(
parser, NamedConstant)
491 NODE(
parser, OldParameterStmt)
493 static std::string GetNodeName(
const llvm::omp::Directive &x) {
494 return llvm::Twine(
"llvm::omp::Directive = ",
495 llvm::omp::getOpenMPDirectiveName(x, llvm::omp::FallbackVersion))
498 static std::string GetNodeName(
const llvm::omp::Clause &x) {
500 "llvm::omp::Clause = ", llvm::omp::getOpenMPClauseName(x))
642 NODE(
parser, OmpNoOpenMPClause)
643 NODE(
parser, OmpNoOpenMPRoutinesClause)
644 NODE(
parser, OmpNoParallelismClause)
723#define GEN_FLANG_DUMP_PARSE_TREE_CLAUSES
724#include "llvm/Frontend/OpenMP/OMP.inc"
769 NODE(
parser, OptionalStmt)
774 NODE(
parser, ParameterStmt)
813 NODE(
parser, ProtectedStmt)
838 NODE(
parser, SequenceStmt)
844 NODE(
parser, SpecificationExpr)
848 NODE(
parser, StatVariable)
872 NODE(
parser, SyncMemoryStmt)
891 NODE(
common, TypeParamAttr)
897 NODE(
Union, EndUnionStmt)
898 NODE(
Union, UnionStmt)
901 NODE(
parser, UnsignedTypeSpec)
903 NODE_ENUM(
UseStmt, ModuleNature)
910 NODE(
parser, IntrinsicVectorTypeSpec)
914 NODE(
parser, VolatileStmt)
927 template <
typename T>
bool Pre(
const T &x) {
928 std::string fortran{AsFortran<T>(x)};
929 if (fortran.empty() && (UnionTrait<T> || WrapperTrait<T>)) {
930 Prefix(GetNodeName(x));
933 out_ << GetNodeName(x);
934 if (!fortran.empty()) {
935 out_ <<
" = '" << fortran <<
'\'';
943 template <
typename T>
void Post(
const T &x) {
944 if (AsFortran<T>(x).empty() && (UnionTrait<T> || WrapperTrait<T>)) {
953 bool Pre(
const CharBlock &) {
return true; }
956 template <
typename T>
bool Pre(
const Statement<T> &) {
return true; }
957 template <
typename T>
void Post(
const Statement<T> &) {}
966 template <
typename A>
bool Pre(
const Scalar<A> &) {
970 template <
typename A>
void Post(
const Scalar<A> &) { EndLineIfNonempty(); }
972 template <
typename A>
bool Pre(
const Constant<A> &) {
976 template <
typename A>
void Post(
const Constant<A> &) { EndLineIfNonempty(); }
978 template <
typename A>
bool Pre(
const Integer<A> &) {
982 template <
typename A>
void Post(
const Integer<A> &) { EndLineIfNonempty(); }
984 template <
typename A>
bool Pre(
const Logical<A> &) {
988 template <
typename A>
void Post(
const Logical<A> &) { EndLineIfNonempty(); }
991 Prefix(
"DefaultChar");
998 template <
typename... A>
bool Pre(
const std::tuple<A...> &) {
return true; }
999 template <
typename... A>
void Post(
const std::tuple<A...> &) {}
1001 template <
typename... A>
bool Pre(
const std::variant<A...> &) {
return true; }
1002 template <
typename... A>
void Post(
const std::variant<A...> &) {}
1006 template <
typename T> std::string AsFortran(
const T &x) {
1008 llvm::raw_string_ostream ss{buf};
1010 if (asFortran_ && x.typedExpr) {
1011 asFortran_->expr(ss, *x.typedExpr);
1013 }
else if constexpr (std::is_same_v<T, AssignmentStmt> ||
1014 std::is_same_v<T, PointerAssignmentStmt>) {
1015 if (asFortran_ && x.typedAssignment) {
1016 asFortran_->assignment(ss, *x.typedAssignment);
1018 }
else if constexpr (std::is_same_v<T, CallStmt>) {
1019 if (asFortran_ && x.typedCall) {
1020 asFortran_->call(ss, *x.typedCall);
1022 }
else if constexpr (std::is_same_v<T, IntLiteralConstant> ||
1023 std::is_same_v<T, SignedIntLiteralConstant> ||
1024 std::is_same_v<T, UnsignedLiteralConstant>) {
1025 ss << std::get<CharBlock>(x.t);
1026 }
else if constexpr (std::is_same_v<T, RealLiteralConstant::Real>) {
1028 }
else if constexpr (std::is_same_v<T, std::string> ||
1029 std::is_same_v<T, std::int64_t> || std::is_same_v<T, std::uint64_t>) {
1035 if constexpr (std::is_same_v<T, Name>) {
1036 return x.source.ToString();
1037#ifdef SHOW_ALL_SOURCE_MEMBERS
1039 return x.source.ToString();
1041 }
else if constexpr (std::is_same_v<T, int>) {
1042 return std::to_string(x);
1043 }
else if constexpr (std::is_same_v<T, bool>) {
1044 return x ?
"true" :
"false";
1050 void IndentEmptyLine() {
1051 if (emptyline_ && indent_ > 0) {
1052 for (
int i{0}; i < indent_; ++i) {
1059 void Prefix(
const char *str) {
1061 out_ << str <<
" -> ";
1065 void Prefix(
const std::string &str) {
1067 out_ << str <<
" -> ";
1076 void EndLineIfNonempty() {
1084 llvm::raw_ostream &out_;
1086 bool emptyline_{
false};
1089template <
typename T>
1090llvm::raw_ostream &DumpTree(llvm::raw_ostream &out,
const T &x,
Definition indirection.h:31
Definition char-block.h:28
Definition dump-parse-tree.h:31
Definition bit-population-count.h:20
Definition check-expression.h:19
Definition parse-tree.h:1304
Definition parse-tree.h:1311
Definition parse-tree.h:1270
Definition parse-tree.h:1258
Definition parse-tree.h:5588
Definition parse-tree.h:5564
Definition parse-tree.h:5580
Definition parse-tree.h:5572
Definition parse-tree.h:5549
Definition parse-tree.h:5613
Definition parse-tree.h:5543
Definition parse-tree.h:5419
Definition parse-tree.h:5392
Definition parse-tree.h:5520
Definition parse-tree.h:5505
Definition parse-tree.h:5500
Definition parse-tree.h:5408
Definition parse-tree.h:5430
Definition parse-tree.h:5413
Definition parse-tree.h:5425
Definition parse-tree.h:5457
Definition parse-tree.h:5451
Definition parse-tree.h:5555
Definition parse-tree.h:5619
Definition parse-tree.h:5496
Definition parse-tree.h:5487
Definition parse-tree.h:5397
Definition parse-tree.h:5436
Definition parse-tree.h:5441
Definition parse-tree.h:5384
Definition parse-tree.h:5480
Definition parse-tree.h:5476
Definition parse-tree.h:5472
Definition parse-tree.h:5402
Definition parse-tree.h:5468
Definition parse-tree.h:5462
Definition parse-tree.h:5446
Definition parse-tree.h:910
Definition parse-tree.h:1428
Definition parse-tree.h:492
Definition parse-tree.h:3256
Definition parse-tree.h:3246
Definition parse-tree.h:1983
Definition parse-tree.h:1948
Definition parse-tree.h:1927
Definition parse-tree.h:1939
Definition parse-tree.h:1994
Definition parse-tree.h:1956
Definition parse-tree.h:3468
Definition parse-tree.h:1915
Definition parse-tree.h:1359
Definition parse-tree.h:3473
Definition parse-tree.h:3478
Definition parse-tree.h:2020
Definition parse-tree.h:2177
Definition parse-tree.h:2168
Definition parse-tree.h:2161
Definition parse-tree.h:1341
Definition parse-tree.h:1389
Definition parse-tree.h:3418
Definition parse-tree.h:1128
Definition parse-tree.h:1450
Definition parse-tree.h:1457
Definition parse-tree.h:2199
Definition parse-tree.h:3031
Definition parse-tree.h:2032
Definition parse-tree.h:3412
Definition parse-tree.h:5689
Definition parse-tree.h:5683
Definition parse-tree.h:3280
Definition parse-tree.h:3263
Definition parse-tree.h:2441
Definition parse-tree.h:2423
Definition parse-tree.h:2429
Definition parse-tree.h:2409
Definition parse-tree.h:2230
Definition parse-tree.h:2215
Definition parse-tree.h:664
Definition parse-tree.h:1844
Definition parse-tree.h:869
Definition parse-tree.h:680
Definition parse-tree.h:2699
Definition parse-tree.h:2207
Definition parse-tree.h:985
Definition parse-tree.h:1463
Definition parse-tree.h:1906
Definition parse-tree.h:1627
Definition parse-tree.h:1635
Definition parse-tree.h:3367
Definition parse-tree.h:855
Definition parse-tree.h:847
Definition parse-tree.h:996
Definition parse-tree.h:1009
Definition parse-tree.h:1040
Definition parse-tree.h:1117
Definition parse-tree.h:1062
Definition parse-tree.h:1221
Definition parse-tree.h:2528
Definition parse-tree.h:2255
Definition parse-tree.h:2677
Definition parse-tree.h:2675
Definition parse-tree.h:301
Definition parse-tree.h:2246
Definition parse-tree.h:2237
Definition parse-tree.h:1070
Definition parse-tree.h:1517
Definition parse-tree.h:1529
Definition parse-tree.h:1822
Definition parse-tree.h:1488
Definition parse-tree.h:1537
Definition parse-tree.h:1503
Definition parse-tree.h:1543
Definition parse-tree.h:1509
Definition parse-tree.h:2014
Definition parse-tree.h:433
Definition parse-tree.h:769
Definition parse-tree.h:325
Definition parse-tree.h:606
Definition parse-tree.h:1206
Definition parse-tree.h:751
Definition parse-tree.h:927
Definition parse-tree.h:1861
Definition parse-tree.h:1554
Definition parse-tree.h:2342
Definition parse-tree.h:3164
Definition parse-tree.h:2362
Definition parse-tree.h:2224
Definition parse-tree.h:1404
Definition parse-tree.h:3336
Definition parse-tree.h:1250
Definition parse-tree.h:1236
Definition parse-tree.h:2582
Definition parse-tree.h:2588
Definition parse-tree.h:2596
Definition parse-tree.h:525
Definition parse-tree.h:548
Definition parse-tree.h:979
Definition parse-tree.h:966
Definition parse-tree.h:1704
Definition parse-tree.h:1056
Definition parse-tree.h:2118
Definition parse-tree.h:2134
Definition parse-tree.h:2112
Definition parse-tree.h:2147
Definition parse-tree.h:2124
Definition parse-tree.h:3268
Definition parse-tree.h:3153
Definition parse-tree.h:3302
Definition parse-tree.h:3044
Definition parse-tree.h:3059
Definition parse-tree.h:876
Definition parse-tree.h:2376
Definition parse-tree.h:2392
Definition parse-tree.h:2355
Definition parse-tree.h:1688
Definition parse-tree.h:1698
Definition parse-tree.h:415
Definition parse-tree.h:1611
Definition parse-tree.h:1620
Definition parse-tree.h:619
Definition parse-tree.h:1027
Definition parse-tree.h:2893
Definition parse-tree.h:2901
Definition parse-tree.h:2906
Definition parse-tree.h:2891
Definition parse-tree.h:2919
Definition parse-tree.h:803
Definition parse-tree.h:309
Definition parse-tree.h:1367
Definition parse-tree.h:1563
Definition parse-tree.h:3220
Definition parse-tree.h:3185
Definition parse-tree.h:3210
Definition parse-tree.h:3065
Definition parse-tree.h:471
Definition parse-tree.h:459
Definition parse-tree.h:701
Definition parse-tree.h:2735
Definition parse-tree.h:2733
Definition parse-tree.h:2647
Definition parse-tree.h:790
Definition parse-tree.h:652
Definition parse-tree.h:2319
Definition parse-tree.h:1320
Definition parse-tree.h:670
Definition parse-tree.h:1605
Definition parse-tree.h:901
Definition parse-tree.h:2287
Definition parse-tree.h:2622
Definition parse-tree.h:883
Definition parse-tree.h:317
Definition parse-tree.h:2307
Definition parse-tree.h:2940
Definition parse-tree.h:3434
Definition parse-tree.h:2079
Definition parse-tree.h:2964
Definition parse-tree.h:2954
Definition parse-tree.h:2975
Definition parse-tree.h:581
Definition parse-tree.h:1326
Definition parse-tree.h:632
Definition parse-tree.h:2325
Definition parse-tree.h:2550
Definition parse-tree.h:1437
Definition parse-tree.h:4253
Definition parse-tree.h:4259
Definition parse-tree.h:4257
Definition parse-tree.h:4272
Definition parse-tree.h:4279
Definition parse-tree.h:4287
Definition parse-tree.h:4302
Definition parse-tree.h:5200
Definition parse-tree.h:4309
Definition parse-tree.h:4318
Definition parse-tree.h:4330
Definition parse-tree.h:4994
Definition parse-tree.h:5337
Definition parse-tree.h:5065
Definition parse-tree.h:4341
Definition parse-tree.h:5004
Definition parse-tree.h:4347
Definition parse-tree.h:4965
Definition parse-tree.h:4949
Definition parse-tree.h:3603
Definition parse-tree.h:4356
Definition parse-tree.h:5108
Definition parse-tree.h:4373
Definition parse-tree.h:4391
Definition parse-tree.h:4450
Definition parse-tree.h:4448
Definition parse-tree.h:4472
Definition parse-tree.h:4480
Definition parse-tree.h:4490
Definition parse-tree.h:4500
Definition parse-tree.h:4508
Definition parse-tree.h:3504
Definition parse-tree.h:4972
Definition parse-tree.h:4463
Definition parse-tree.h:4430
Definition parse-tree.h:4523
Definition parse-tree.h:4518
Definition parse-tree.h:4999
Definition parse-tree.h:5341
Definition parse-tree.h:5070
Definition parse-tree.h:4534
Definition parse-tree.h:5032
Definition parse-tree.h:4542
Definition parse-tree.h:4555
Definition parse-tree.h:4566
Definition parse-tree.h:4576
Definition parse-tree.h:4584
Definition parse-tree.h:4589
Definition parse-tree.h:4597
Definition parse-tree.h:4613
Definition parse-tree.h:4623
Definition parse-tree.h:4602
Definition parse-tree.h:4935
Definition parse-tree.h:4630
Definition parse-tree.h:3615
Definition parse-tree.h:4403
Definition parse-tree.h:4421
Definition parse-tree.h:4412
Definition parse-tree.h:4639
Definition parse-tree.h:4654
Definition parse-tree.h:4665
Definition parse-tree.h:4690
Definition parse-tree.h:4702
Definition parse-tree.h:4711
Definition parse-tree.h:5026
Definition parse-tree.h:4735
Definition parse-tree.h:3549
Definition parse-tree.h:3540
Definition parse-tree.h:3537
Definition parse-tree.h:4746
Definition parse-tree.h:4759
Definition parse-tree.h:4771
Definition parse-tree.h:4782
Definition parse-tree.h:3593
Definition parse-tree.h:4792
Definition parse-tree.h:4801
Definition parse-tree.h:4813
Definition parse-tree.h:4824
Definition parse-tree.h:4831
Definition parse-tree.h:3553
Definition parse-tree.h:3575
Definition parse-tree.h:3562
Definition parse-tree.h:4840
Definition parse-tree.h:4849
Definition parse-tree.h:4864
Definition parse-tree.h:4874
Definition parse-tree.h:3529
Definition parse-tree.h:3522
Definition parse-tree.h:4883
Definition parse-tree.h:4892
Definition parse-tree.h:4908
Definition parse-tree.h:4944
Definition parse-tree.h:4919
Definition parse-tree.h:3075
Definition parse-tree.h:5595
Definition parse-tree.h:5602
Definition parse-tree.h:5531
Definition parse-tree.h:5624
Definition parse-tree.h:5663
Definition parse-tree.h:5634
Definition parse-tree.h:5652
Definition parse-tree.h:5643
Definition parse-tree.h:5525
Definition parse-tree.h:5657
Definition parse-tree.h:5607
Definition parse-tree.h:5537
Definition parse-tree.h:5226
Definition parse-tree.h:5059
Definition parse-tree.h:5231
Definition parse-tree.h:5268
Definition parse-tree.h:5261
Definition parse-tree.h:5372
Definition parse-tree.h:5216
Definition parse-tree.h:5047
Definition parse-tree.h:5204
Definition parse-tree.h:5128
Definition parse-tree.h:5137
Definition parse-tree.h:5145
Definition parse-tree.h:5120
Definition parse-tree.h:5279
Definition parse-tree.h:5293
Definition parse-tree.h:5309
Definition parse-tree.h:5155
Definition parse-tree.h:5317
Definition parse-tree.h:5346
Definition parse-tree.h:5161
Definition parse-tree.h:5079
Definition parse-tree.h:5085
Definition parse-tree.h:5322
Definition parse-tree.h:5328
Definition parse-tree.h:5167
Definition parse-tree.h:5036
Definition parse-tree.h:374
Definition parse-tree.h:2811
Definition parse-tree.h:2774
Definition parse-tree.h:3000
Definition parse-tree.h:2044
Definition parse-tree.h:1573
Definition parse-tree.h:2003
Definition parse-tree.h:2837
Definition parse-tree.h:3120
Definition parse-tree.h:2795
Definition parse-tree.h:940
Definition parse-tree.h:3098
Definition parse-tree.h:1081
Definition parse-tree.h:1109
Definition parse-tree.h:1901
Definition parse-tree.h:1101
Definition parse-tree.h:1095
Definition parse-tree.h:1088
Definition parse-tree.h:3108
Definition parse-tree.h:3235
Definition parse-tree.h:3203
Definition parse-tree.h:565
Definition parse-tree.h:2758
Definition parse-tree.h:822
Definition parse-tree.h:2276
Definition parse-tree.h:2986
Definition parse-tree.h:1586
Definition parse-tree.h:293
Definition parse-tree.h:1673
Definition parse-tree.h:2399
Definition parse-tree.h:2464
Definition parse-tree.h:2476
Definition parse-tree.h:2455
Definition parse-tree.h:2510
Definition parse-tree.h:2490
Definition parse-tree.h:2155
Definition parse-tree.h:3328
Definition parse-tree.h:861
Definition parse-tree.h:796
Definition parse-tree.h:836
Definition parse-tree.h:396
Definition parse-tree.h:447
Definition parse-tree.h:1972
Definition parse-tree.h:357
Definition parse-tree.h:3346
Definition parse-tree.h:2542
Definition parse-tree.h:1891
Definition parse-tree.h:1227
Definition parse-tree.h:3455
Definition parse-tree.h:3427
Definition parse-tree.h:3450
Definition parse-tree.h:3006
Definition parse-tree.h:3017
Definition parse-tree.h:3172
Definition parse-tree.h:3312
Definition parse-tree.h:1664
Definition parse-tree.h:1853
Definition parse-tree.h:1655
Definition parse-tree.h:1839
Definition parse-tree.h:3139
Definition parse-tree.h:2560
Definition parse-tree.h:2573
Definition parse-tree.h:918
Definition parse-tree.h:1170
Definition parse-tree.h:1183
Definition parse-tree.h:1136
Definition parse-tree.h:1192
Definition parse-tree.h:1146
Definition parse-tree.h:1418
Definition parse-tree.h:2499
Definition parse-tree.h:946
Definition parse-tree.h:954
Definition parse-tree.h:745
Definition parse-tree.h:643
Definition parse-tree.h:758
Definition parse-tree.h:3443
Definition parse-tree.h:352
Definition parse-tree.h:2632
Definition parse-tree.h:809
Definition parse-tree.h:3084
Definition parse-tree.h:1869
Definition parse-tree.h:731
Definition parse-tree.h:736
Definition parse-tree.h:280
Definition parse-tree.h:2821
Definition parse-tree.h:2070
Definition parse-tree.h:2063
Definition parse-tree.h:2094
Definition parse-tree.h:2057
Definition parse-tree.h:2780
Definition parse-tree.h:3677
Definition parse-tree.h:3668
Definition parse-tree.h:3638
Definition parse-tree.h:3627
Definition parse-tree.h:3622
Definition parse-tree.h:3648
Definition parse-tree.h:3661
Definition parse-tree.h:3832
Definition parse-tree.h:3849
Definition parse-tree.h:3841
Definition parse-tree.h:3865
Definition parse-tree.h:3857
Definition parse-tree.h:3877
Definition parse-tree.h:3889
Definition parse-tree.h:3899
Definition parse-tree.h:3910
Definition parse-tree.h:3923
Definition parse-tree.h:3935
Definition parse-tree.h:3956
Definition parse-tree.h:3965
Definition parse-tree.h:3998
Definition parse-tree.h:4009
Definition parse-tree.h:4027
Definition parse-tree.h:4018
Definition parse-tree.h:4036
Definition parse-tree.h:4048
Definition parse-tree.h:4058
Definition parse-tree.h:4066
Definition parse-tree.h:4075
Definition parse-tree.h:4110
Definition parse-tree.h:4097
Definition parse-tree.h:4084
Definition parse-tree.h:4134
Definition parse-tree.h:4125
Definition parse-tree.h:4143
Definition parse-tree.h:4156
Definition parse-tree.h:4165
Definition parse-tree.h:4175
Definition parse-tree.h:4185
Definition parse-tree.h:4194
Definition parse-tree.h:4202
Definition parse-tree.h:4212
Definition parse-tree.h:4223
Definition parse-tree.h:4236
Definition parse-tree.h:3808
Definition parse-tree.h:3715
Definition parse-tree.h:3698
Definition parse-tree.h:3739
Definition parse-tree.h:3705
Definition parse-tree.h:3766
Definition parse-tree.h:3778
Definition parse-tree.h:3791
Definition parse-tree.h:3800