comparison dmd/module.h @ 580:7824c21a58e3

Restructure path handling a bit. Fixes #66.
author Christian Kamm <kamm incasoftware de>
date Sat, 06 Sep 2008 12:27:27 +0200
parents a34078905d01
children a30fc28e8f23
comparison
equal deleted inserted replaced
579:20c065c46b38 580:7824c21a58e3
63 63
64 64
65 const char *arg; // original argument name 65 const char *arg; // original argument name
66 ModuleDeclaration *md; // if !NULL, the contents of the ModuleDeclaration declaration 66 ModuleDeclaration *md; // if !NULL, the contents of the ModuleDeclaration declaration
67 File *srcfile; // input source file 67 File *srcfile; // input source file
68 File *objfile; // output .obj file 68
69 File *objfile; // output object file
70 File *docfile; // output doc file
71 File *hdrfile; // output hdr file
69 72
70 // LLVMDC
71 File *bcfile; // output .bc file
72 File *llfile; // output .ll file
73
74 File *hdrfile; // 'header' file
75 File *symfile; // output symbol file
76 File *docfile; // output documentation file
77 unsigned errors; // if any errors in file 73 unsigned errors; // if any errors in file
78 unsigned numlines; // number of lines in source file 74 unsigned numlines; // number of lines in source file
79 int isHtml; // if it is an HTML file 75 int isHtml; // if it is an HTML file
80 int isDocFile; // if it is a documentation input file, not D source 76 int isDocFile; // if it is a documentation input file, not D source
81 int needmoduleinfo; 77 int needmoduleinfo;
119 115
120 static Module *load(Loc loc, Array *packages, Identifier *ident); 116 static Module *load(Loc loc, Array *packages, Identifier *ident);
121 117
122 void toCBuffer(OutBuffer *buf, HdrGenState *hgs); 118 void toCBuffer(OutBuffer *buf, HdrGenState *hgs);
123 const char *kind(); 119 const char *kind();
124 void setDocfile(); // set docfile member
125 void read(Loc loc); // read file 120 void read(Loc loc); // read file
126 #if IN_GCC 121 #if IN_GCC
127 void parse(bool dump_source = false); // syntactic parse 122 void parse(bool dump_source = false); // syntactic parse
128 #else 123 #else
129 void parse(); // syntactic parse 124 void parse(); // syntactic parse
130 #endif 125 #endif
131 void semantic(); // semantic analysis 126 void semantic(); // semantic analysis
132 void semantic2(); // pass 2 semantic analysis 127 void semantic2(); // pass 2 semantic analysis
133 void semantic3(); // pass 3 semantic analysis 128 void semantic3(); // pass 3 semantic analysis
134 void inlineScan(); // scan for functions to inline 129 void inlineScan(); // scan for functions to inline
135 void setHdrfile(); // set hdrfile member
136 #ifdef _DH 130 #ifdef _DH
137 void genhdrfile(); // generate D import file 131 void genhdrfile(); // generate D import file
138 #endif 132 #endif
139 void genobjfile(int multiobj); 133 void genobjfile(int multiobj);
140 void gensymfile(); 134 // void gensymfile();
141 void gendocfile(); 135 void gendocfile();
142 int needModuleInfo(); 136 int needModuleInfo();
143 Dsymbol *search(Loc loc, Identifier *ident, int flags); 137 Dsymbol *search(Loc loc, Identifier *ident, int flags);
144 void deleteObjFile(); 138 void deleteObjFile();
145 void addDeferredSemantic(Dsymbol *s); 139 void addDeferredSemantic(Dsymbol *s);
171 165
172 Symbol *toSymbol(); 166 Symbol *toSymbol();
173 void genmoduleinfo(); 167 void genmoduleinfo();
174 168
175 // LLVMDC 169 // LLVMDC
170 void buildTargetFiles();
171 File* buildFilePath(char* forcename, char* path, char* ext);
176 Module *isModule() { return this; } 172 Module *isModule() { return this; }
177 173
178 bool llvmForceLogging; 174 bool llvmForceLogging;
179 }; 175 };
180 176