annotate dmd/parse.h @ 1650:40bd4a0d4870

Update to work with LLVM 2.7. Removed use of dyn_cast, llvm no compiles without exceptions and rtti by default. We do need exceptions for the libconfig stuff, but rtti isn't necessary (anymore). Debug info needs to be rewritten, as in LLVM 2.7 the format has completely changed. To have something to look at while rewriting, the old code has been wrapped inside #ifndef DISABLE_DEBUG_INFO , this means that you have to define this to compile at the moment. Updated tango 0.99.9 patch to include updated EH runtime code, which is needed for LLVM 2.7 as well.
author Tomas Lindquist Olsen
date Wed, 19 May 2010 12:42:32 +0200
parents 207a8a438dea
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1606
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
1
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
2 // Compiler implementation of the D programming language
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
3 // Copyright (c) 1999-2009 by Digital Mars
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
4 // All Rights Reserved
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
5 // written by Walter Bright
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
6 // http://www.digitalmars.com
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
7 // License for redistribution is by either the Artistic License
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
8 // in artistic.txt, or the GNU General Public License in gnu.txt.
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
9 // See the included readme.txt for details.
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
10
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
11 #ifndef DMD_PARSE_H
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
12 #define DMD_PARSE_H
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
13
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
14 #ifdef __DMC__
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
15 #pragma once
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
16 #endif /* __DMC__ */
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
17
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
18 #include "arraytypes.h"
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
19 #include "lexer.h"
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
20 #include "enum.h"
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
21
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
22 struct Type;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
23 struct TypeQualified;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
24 struct Expression;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
25 struct Declaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
26 struct Statement;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
27 struct Import;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
28 struct Initializer;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
29 struct FuncDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
30 struct CtorDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
31 struct PostBlitDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
32 struct DtorDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
33 struct StaticCtorDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
34 struct StaticDtorDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
35 struct ConditionalDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
36 struct InvariantDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
37 struct UnitTestDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
38 struct NewDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
39 struct DeleteDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
40 struct Condition;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
41 struct Module;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
42 struct ModuleDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
43 struct TemplateDeclaration;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
44 struct TemplateInstance;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
45 struct StaticAssert;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
46
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
47 /************************************
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
48 * These control how parseStatement() works.
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
49 */
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
50
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
51 enum ParseStatementFlags
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
52 {
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
53 PSsemi = 1, // empty ';' statements are allowed
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
54 PSscope = 2, // start a new scope
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
55 PScurly = 4, // { } statement is required
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
56 PScurlyscope = 8, // { } starts a new scope
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
57 };
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
58
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
59
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
60 struct Parser : Lexer
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
61 {
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
62 ModuleDeclaration *md;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
63 enum LINK linkage;
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
64 Loc endloc; // set to location of last right curly
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
65 int inBrackets; // inside [] of array index or slice
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
66
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
67 Parser(Module *module, unsigned char *base, unsigned length, int doDocComment);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
68
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
69 Array *parseModule();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
70 Array *parseDeclDefs(int once);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
71 Array *parseAutoDeclarations(StorageClass storageClass, unsigned char *comment);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
72 Array *parseBlock();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
73 void composeStorageClass(StorageClass stc);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
74 Expression *parseConstraint();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
75 TemplateDeclaration *parseTemplateDeclaration();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
76 TemplateParameters *parseTemplateParameterList(int flag = 0);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
77 Dsymbol *parseMixin();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
78 Objects *parseTemplateArgumentList();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
79 Objects *parseTemplateArgumentList2();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
80 Objects *parseTemplateArgument();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
81 StaticAssert *parseStaticAssert();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
82 TypeQualified *parseTypeof();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
83 enum LINK parseLinkage();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
84 Condition *parseDebugCondition();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
85 Condition *parseVersionCondition();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
86 Condition *parseStaticIfCondition();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
87 Dsymbol *parseCtor();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
88 PostBlitDeclaration *parsePostBlit();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
89 DtorDeclaration *parseDtor();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
90 StaticCtorDeclaration *parseStaticCtor();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
91 StaticDtorDeclaration *parseStaticDtor();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
92 InvariantDeclaration *parseInvariant();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
93 UnitTestDeclaration *parseUnitTest();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
94 NewDeclaration *parseNew();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
95 DeleteDeclaration *parseDelete();
1607
207a8a438dea Merge DMD r253: refactor: Argument => Parameter
Leandro Lucarella <llucax@gmail.com>
parents: 1606
diff changeset
96 Parameters *parseParameters(int *pvarargs);
1606
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
97 EnumDeclaration *parseEnum();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
98 Dsymbol *parseAggregate();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
99 BaseClasses *parseBaseClasses();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
100 Import *parseImport(Array *decldefs, int isstatic);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
101 Type *parseType(Identifier **pident = NULL, TemplateParameters **tpl = NULL);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
102 Type *parseBasicType();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
103 Type *parseBasicType2(Type *t);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
104 Type *parseDeclarator(Type *t, Identifier **pident, TemplateParameters **tpl = NULL);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
105 Array *parseDeclarations();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
106 void parseContracts(FuncDeclaration *f);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
107 Statement *parseStatement(int flags);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
108 Initializer *parseInitializer();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
109 Expression *parseDefaultInitExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
110 void check(Loc loc, enum TOK value);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
111 void check(enum TOK value);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
112 void check(enum TOK value, const char *string);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
113 int isDeclaration(Token *t, int needId, enum TOK endtok, Token **pt);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
114 int isBasicType(Token **pt);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
115 int isDeclarator(Token **pt, int *haveId, enum TOK endtok);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
116 int isParameters(Token **pt);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
117 int isExpression(Token **pt);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
118 int isTemplateInstance(Token *t, Token **pt);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
119 int skipParens(Token *t, Token **pt);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
120
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
121 Expression *parseExpression();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
122 Expression *parsePrimaryExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
123 Expression *parseUnaryExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
124 Expression *parsePostExp(Expression *e);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
125 Expression *parseMulExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
126 Expression *parseAddExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
127 Expression *parseShiftExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
128 Expression *parseRelExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
129 Expression *parseEqualExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
130 Expression *parseCmpExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
131 Expression *parseAndExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
132 Expression *parseXorExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
133 Expression *parseOrExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
134 Expression *parseAndAndExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
135 Expression *parseOrOrExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
136 Expression *parseCondExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
137 Expression *parseAssignExp();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
138
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
139 Expressions *parseArguments();
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
140
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
141 Expression *parseNewExp(Expression *thisexp);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
142
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
143 void addComment(Dsymbol *s, unsigned char *blockComment);
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
144 };
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
145
1b24e9c7cc26 Use just \n as end of line
Leandro Lucarella <llucax@gmail.com>
parents: 1602
diff changeset
146 #endif /* DMD_PARSE_H */