Mercurial > projects > ddmd
comparison dmd/Module.d @ 178:e3afd1303184
Many small bugs fixed
Made all classes derive from TObject to detect memory leaks (functionality is disabled for now)
Began work on overriding backend memory allocations (to avoid memory leaks)
author | korDen |
---|---|
date | Sun, 17 Oct 2010 07:42:00 +0400 |
parents | fa9a71a9f5a8 |
children | cd48cb899aee |
comparison
equal
deleted
inserted
replaced
177:1475fd394c9e | 178:e3afd1303184 |
---|---|
209 uint debuglevel; // debug level | 209 uint debuglevel; // debug level |
210 Vector!string debugids; // debug identifiers | 210 Vector!string debugids; // debug identifiers |
211 Vector!string debugidsNot; // forward referenced debug identifiers | 211 Vector!string debugidsNot; // forward referenced debug identifiers |
212 | 212 |
213 uint versionlevel; // version level | 213 uint versionlevel; // version level |
214 Array versionids; // version identifiers | 214 Vector!(string) versionids; // version identifiers |
215 Array versionidsNot; // forward referenced version identifiers | 215 Vector!(string) versionidsNot; // forward referenced version identifiers |
216 | 216 |
217 Macro macrotable; // document comment macros | 217 Macro macrotable; // document comment macros |
218 Escape escapetable; // document comment escapes | 218 Escape escapetable; // document comment escapes |
219 bool safe; // TRUE if module is marked as 'safe' | 219 bool safe; // TRUE if module is marked as 'safe' |
220 | 220 |
221 this(string filename, Identifier ident, int doDocComment, int doHdrGen) | 221 this(string filename, Identifier ident, int doDocComment, int doHdrGen) |
222 { | 222 { |
223 register(); | |
224 | |
223 super(ident); | 225 super(ident); |
226 | |
227 versionids = new Vector!string; | |
228 versionidsNot = new Vector!string; | |
229 | |
224 FileName objfilename; | 230 FileName objfilename; |
225 | 231 |
226 aimports = new Array(); | 232 aimports = new Array(); |
227 | 233 |
228 //writefln("Module.Module(filename = '%s', ident = '%s')", filename, ident.toChars()); | 234 //writefln("Module.Module(filename = '%s', ident = '%s')", filename, ident.toChars()); |
352 } | 358 } |
353 } | 359 } |
354 } | 360 } |
355 | 361 |
356 if (result) { | 362 if (result) { |
357 writeln("loading ", result); | |
358 m.srcfile = new File(result); | 363 m.srcfile = new File(result); |
359 } | 364 } |
360 | 365 |
361 if (global.params.verbose) | 366 if (global.params.verbose) |
362 { | 367 { |
363 writef("import "); | 368 write("import "); |
364 if (packages) | 369 if (packages) |
365 { | 370 { |
366 foreach (pid; packages) | 371 foreach (pid; packages) |
367 { | 372 { |
368 writef("%s.", pid.toChars()); | 373 writef("%s.", pid.toChars()); |