31 changes: 29 additions & 2 deletions src/dcast.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,35 @@

module ddmd.dcast;

import core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.aliasthis, ddmd.arrayop, ddmd.arraytypes, ddmd.dclass, ddmd.declaration, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.impcnvtab, ddmd.init, ddmd.intrange, ddmd.mtype, ddmd.opover, ddmd.root.longdouble, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.root.rootobject, ddmd.tokens, ddmd.utf, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.arrayop;
import ddmd.arraytypes;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.impcnvtab;
import ddmd.init;
import ddmd.intrange;
import ddmd.mtype;
import ddmd.opover;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.root.rootobject;
import ddmd.tokens;
import ddmd.utf;
import ddmd.visitor;

enum LOG = false;

Expand Down
25 changes: 24 additions & 1 deletion src/dclass.d
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,30 @@
module ddmd.dclass;

import core.stdc.string;
import ddmd.aggregate, ddmd.arraytypes, ddmd.backend, ddmd.clone, ddmd.declaration, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.objc, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.root.rootobject, ddmd.statement, ddmd.target, ddmd.visitor;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.backend;
import ddmd.clone;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.objc;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.root.rootobject;
import ddmd.statement;
import ddmd.target;
import ddmd.visitor;

/**********************************************************
* fd is in the vtbl[] for this class.
Expand Down
35 changes: 34 additions & 1 deletion src/declaration.d
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,40 @@
module ddmd.declaration;

import core.stdc.stdio;
import ddmd.aggregate, ddmd.arraytypes, ddmd.attrib, ddmd.cppmangle, ddmd.ctfeexpr, ddmd.dcast, ddmd.dclass, ddmd.declaration, ddmd.delegatize, ddmd.dinterpret, ddmd.dmangle, ddmd.doc, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.inline, ddmd.intrange, ddmd.mtype, ddmd.opover, ddmd.root.outbuffer, ddmd.root.rootobject, ddmd.statement, ddmd.target, ddmd.tokens, ddmd.visitor;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.cppmangle;
import ddmd.ctfeexpr;
import ddmd.dcast;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.delegatize;
import ddmd.dinterpret;
import ddmd.dmangle;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.inline;
import ddmd.intrange;
import ddmd.mtype;
import ddmd.opover;
import ddmd.root.outbuffer;
import ddmd.root.rootobject;
import ddmd.statement;
import ddmd.target;
import ddmd.tokens;
import ddmd.visitor;

/************************************
* Check to see the aggregate type is nested and its context pointer is
Expand Down
11 changes: 10 additions & 1 deletion src/delegatize.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,16 @@

module ddmd.delegatize;

import ddmd.apply, ddmd.declaration, ddmd.dscope, ddmd.expression, ddmd.func, ddmd.globals, ddmd.mtype, ddmd.statement, ddmd.tokens, ddmd.visitor;
import ddmd.apply;
import ddmd.declaration;
import ddmd.dscope;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.mtype;
import ddmd.statement;
import ddmd.tokens;
import ddmd.visitor;

extern (C++) Expression toDelegate(Expression e, Type t, Scope* sc)
{
Expand Down
19 changes: 18 additions & 1 deletion src/denum.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,24 @@

module ddmd.denum;

import ddmd.access, ddmd.backend, ddmd.declaration, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dsymbol, ddmd.errors, ddmd.expression, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.mtype, ddmd.root.outbuffer, ddmd.tokens, ddmd.visitor;
import ddmd.access;
import ddmd.backend;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.errors;
import ddmd.expression;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.mtype;
import ddmd.root.outbuffer;
import ddmd.tokens;
import ddmd.visitor;

extern (C++) final class EnumDeclaration : ScopeDsymbol
{
Expand Down
17 changes: 16 additions & 1 deletion src/dimport.d
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,22 @@
module ddmd.dimport;

import core.stdc.string;
import ddmd.arraytypes, ddmd.attrib, ddmd.declaration, ddmd.dmodule, ddmd.dscope, ddmd.dsymbol, ddmd.errors, ddmd.expression, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.mars, ddmd.mtype, ddmd.root.outbuffer, ddmd.visitor;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.errors;
import ddmd.expression;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.mars;
import ddmd.mtype;
import ddmd.root.outbuffer;
import ddmd.visitor;

extern (C++) final class Import : Dsymbol
{
Expand Down
29 changes: 27 additions & 2 deletions src/dinterpret.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,33 @@

module ddmd.dinterpret;

import core.stdc.stdio, core.stdc.string;
import ddmd.apply, ddmd.arraytypes, ddmd.attrib, ddmd.builtin, ddmd.constfold, ddmd.ctfeexpr, ddmd.dclass, ddmd.declaration, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.init, ddmd.mtype, ddmd.root.array, ddmd.root.rootobject, ddmd.statement, ddmd.tokens, ddmd.utf, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.apply;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.builtin;
import ddmd.constfold;
import ddmd.ctfeexpr;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.mtype;
import ddmd.root.array;
import ddmd.root.rootobject;
import ddmd.statement;
import ddmd.tokens;
import ddmd.utf;
import ddmd.visitor;

private enum LOG = false;

Expand Down
10 changes: 8 additions & 2 deletions src/dmacro.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,14 @@

module ddmd.dmacro;

import core.stdc.ctype, core.stdc.string;
import ddmd.doc, ddmd.errors, ddmd.globals, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.utf;
import core.stdc.ctype;
import core.stdc.string;
import ddmd.doc;
import ddmd.errors;
import ddmd.globals;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.utf;

struct Macro
{
Expand Down
25 changes: 23 additions & 2 deletions src/dmangle.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,29 @@

module ddmd.dmangle;

import core.stdc.ctype, core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.arraytypes, ddmd.cppmangle, ddmd.dclass, ddmd.declaration, ddmd.dmodule, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.mtype, ddmd.root.longdouble, ddmd.root.outbuffer, ddmd.root.port, ddmd.utf, ddmd.visitor;
import core.stdc.ctype;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.cppmangle;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.mtype;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;
import ddmd.root.port;
import ddmd.utf;
import ddmd.visitor;

extern (C++) __gshared const(char)*[TMAX] mangleChar;

Expand Down
28 changes: 26 additions & 2 deletions src/dmodule.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,32 @@

module ddmd.dmodule;

import core.stdc.stdio, core.stdc.stdlib, core.stdc.string;
import ddmd.aggregate, ddmd.arraytypes, ddmd.backend, ddmd.dimport, ddmd.dmacro, ddmd.doc, ddmd.dscope, ddmd.dsymbol, ddmd.errors, ddmd.expression, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.lexer, ddmd.parse, ddmd.root.file, ddmd.root.filename, ddmd.root.outbuffer, ddmd.root.port, ddmd.root.rmem, ddmd.target, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.stdlib;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.backend;
import ddmd.dimport;
import ddmd.dmacro;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.errors;
import ddmd.expression;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.lexer;
import ddmd.parse;
import ddmd.root.file;
import ddmd.root.filename;
import ddmd.root.outbuffer;
import ddmd.root.port;
import ddmd.root.rmem;
import ddmd.target;
import ddmd.visitor;

/* =========================== ===================== */
/********************************************
Expand Down
37 changes: 35 additions & 2 deletions src/doc.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,41 @@

module ddmd.doc;

import core.stdc.ctype, core.stdc.stdlib, core.stdc.string, core.stdc.time;
import ddmd.aggregate, ddmd.arraytypes, ddmd.attrib, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dmacro, ddmd.dmodule, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.lexer, ddmd.mars, ddmd.mtype, ddmd.root.aav, ddmd.root.array, ddmd.root.file, ddmd.root.filename, ddmd.root.outbuffer, ddmd.root.port, ddmd.root.rmem, ddmd.tokens, ddmd.utf, ddmd.visitor;
import core.stdc.ctype;
import core.stdc.stdlib;
import core.stdc.string;
import core.stdc.time;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dmacro;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.lexer;
import ddmd.mars;
import ddmd.mtype;
import ddmd.root.aav;
import ddmd.root.array;
import ddmd.root.file;
import ddmd.root.filename;
import ddmd.root.outbuffer;
import ddmd.root.port;
import ddmd.root.rmem;
import ddmd.tokens;
import ddmd.utf;
import ddmd.visitor;

struct Escape
{
Expand Down
26 changes: 24 additions & 2 deletions src/dscope.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,30 @@

module ddmd.dscope;

import core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.arraytypes, ddmd.attrib, ddmd.dclass, ddmd.declaration, ddmd.dmodule, ddmd.doc, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.func, ddmd.globals, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.root.aav, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.root.speller, ddmd.root.stringtable, ddmd.statement;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.func;
import ddmd.globals;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.root.aav;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.root.speller;
import ddmd.root.stringtable;
import ddmd.statement;

extern (C++) bool mergeFieldInit(Loc loc, ref uint fieldInit, uint fi, bool mustInit)
{
Expand Down
25 changes: 24 additions & 1 deletion src/dstruct.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,30 @@

module ddmd.dstruct;

import ddmd.aggregate, ddmd.argtypes, ddmd.arraytypes, ddmd.clone, ddmd.declaration, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.mtype, ddmd.opover, ddmd.root.outbuffer, ddmd.statement, ddmd.tokens, ddmd.visitor;
import ddmd.aggregate;
import ddmd.argtypes;
import ddmd.arraytypes;
import ddmd.clone;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.mtype;
import ddmd.opover;
import ddmd.root.outbuffer;
import ddmd.statement;
import ddmd.tokens;
import ddmd.visitor;

/***************************************
* Search toString member function for TypeInfo_Struct.
Expand Down
40 changes: 38 additions & 2 deletions src/dsymbol.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,44 @@

module ddmd.dsymbol;

import core.stdc.stdarg, core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.aliasthis, ddmd.arraytypes, ddmd.attrib, ddmd.backend, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dstruct, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.lexer, ddmd.mtype, ddmd.nspace, ddmd.opover, ddmd.root.aav, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.root.rootobject, ddmd.root.speller, ddmd.root.stringtable, ddmd.statement, ddmd.tokens, ddmd.visitor;
import core.stdc.stdarg;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.backend;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.lexer;
import ddmd.mtype;
import ddmd.nspace;
import ddmd.opover;
import ddmd.root.aav;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.root.rootobject;
import ddmd.root.speller;
import ddmd.root.stringtable;
import ddmd.statement;
import ddmd.tokens;
import ddmd.visitor;

struct Ungag
{
Expand Down
34 changes: 32 additions & 2 deletions src/dtemplate.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,38 @@

module ddmd.dtemplate;

import core.stdc.stdio, core.stdc.stdlib, core.stdc.string;
import ddmd.aggregate, ddmd.aliasthis, ddmd.arraytypes, ddmd.attrib, ddmd.backend, ddmd.dcast, ddmd.dclass, ddmd.declaration, ddmd.dmangle, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dsymbol, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.mtype, ddmd.opover, ddmd.root.aav, ddmd.root.array, ddmd.root.outbuffer, ddmd.root.rootobject, ddmd.tokens, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.stdlib;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.backend;
import ddmd.dcast;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.dmangle;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.mtype;
import ddmd.opover;
import ddmd.root.aav;
import ddmd.root.array;
import ddmd.root.outbuffer;
import ddmd.root.rootobject;
import ddmd.tokens;
import ddmd.visitor;

private enum LOG = false;

Expand Down
12 changes: 11 additions & 1 deletion src/dversion.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,17 @@

module ddmd.dversion;

import ddmd.arraytypes, ddmd.cond, ddmd.dmodule, ddmd.dmodule, ddmd.dscope, ddmd.dsymbol, ddmd.globals, ddmd.hdrgen, ddmd.identifier, ddmd.root.outbuffer, ddmd.visitor;
import ddmd.arraytypes;
import ddmd.cond;
import ddmd.dmodule;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.identifier;
import ddmd.root.outbuffer;
import ddmd.visitor;

extern (C++) final class DebugSymbol : Dsymbol
{
Expand Down
11 changes: 9 additions & 2 deletions src/errors.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,15 @@

module ddmd.errors;

import core.stdc.stdarg, core.stdc.stdio, core.stdc.stdlib, core.stdc.string, core.sys.posix.unistd, core.sys.windows.windows;
import ddmd.globals, ddmd.root.outbuffer, ddmd.root.rmem;
import core.stdc.stdarg;
import core.stdc.stdio;
import core.stdc.stdlib;
import core.stdc.string;
import core.sys.posix.unistd;
import core.sys.windows.windows;
import ddmd.globals;
import ddmd.root.outbuffer;
import ddmd.root.rmem;

version (Windows) extern (C) int isatty(int);
version (Windows) alias _isatty = isatty;
Expand Down
13 changes: 12 additions & 1 deletion src/escape.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,18 @@

module ddmd.escape;

import ddmd.declaration, ddmd.dscope, ddmd.dsymbol, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.init, ddmd.mtype, ddmd.root.rootobject, ddmd.tokens, ddmd.visitor;
import ddmd.declaration;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.init;
import ddmd.mtype;
import ddmd.root.rootobject;
import ddmd.tokens;
import ddmd.visitor;

/************************************
* Detect cases where pointers to the stack can 'escape' the
Expand Down
64 changes: 62 additions & 2 deletions src/expression.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,68 @@

module ddmd.expression;

import core.stdc.stdarg, core.stdc.stdio, core.stdc.string;
import ddmd.access, ddmd.aggregate, ddmd.aliasthis, ddmd.apply, ddmd.argtypes, ddmd.arrayop, ddmd.arraytypes, ddmd.attrib, ddmd.backend, ddmd.canthrow, ddmd.clone, ddmd.complex, ddmd.constfold, ddmd.ctfeexpr, ddmd.dcast, ddmd.dclass, ddmd.declaration, ddmd.delegatize, ddmd.denum, ddmd.dimport, ddmd.dinterpret, ddmd.dmangle, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.imphint, ddmd.init, ddmd.inline, ddmd.intrange, ddmd.mars, ddmd.mtype, ddmd.nspace, ddmd.opover, ddmd.optimize, ddmd.parse, ddmd.root.aav, ddmd.root.file, ddmd.root.filename, ddmd.root.longdouble, ddmd.root.outbuffer, ddmd.root.port, ddmd.root.rmem, ddmd.root.rootobject, ddmd.sideeffect, ddmd.statement, ddmd.target, ddmd.tokens, ddmd.traits, ddmd.utf, ddmd.visitor;
import core.stdc.stdarg;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.access;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.apply;
import ddmd.argtypes;
import ddmd.arrayop;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.backend;
import ddmd.canthrow;
import ddmd.clone;
import ddmd.complex;
import ddmd.constfold;
import ddmd.ctfeexpr;
import ddmd.dcast;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.delegatize;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dinterpret;
import ddmd.dmangle;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.imphint;
import ddmd.init;
import ddmd.inline;
import ddmd.intrange;
import ddmd.mars;
import ddmd.mtype;
import ddmd.nspace;
import ddmd.opover;
import ddmd.optimize;
import ddmd.parse;
import ddmd.root.aav;
import ddmd.root.file;
import ddmd.root.filename;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;
import ddmd.root.port;
import ddmd.root.rmem;
import ddmd.root.rootobject;
import ddmd.sideeffect;
import ddmd.statement;
import ddmd.target;
import ddmd.tokens;
import ddmd.traits;
import ddmd.utf;
import ddmd.visitor;

enum LOGSEMANTIC = false;
void emplaceExp(T : Expression, Args...)(void* p, Args args)
Expand Down
41 changes: 39 additions & 2 deletions src/func.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,45 @@

module ddmd.func;

import core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.arraytypes, ddmd.attrib, ddmd.backend, ddmd.builtin, ddmd.ctfeexpr, ddmd.dclass, ddmd.declaration, ddmd.dinterpret, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.escape, ddmd.expression, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.inline, ddmd.mars, ddmd.mtype, ddmd.nogc, ddmd.objc, ddmd.opover, ddmd.root.filename, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.root.rootobject, ddmd.statement, ddmd.target, ddmd.tokens, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.backend;
import ddmd.builtin;
import ddmd.ctfeexpr;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.dinterpret;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.escape;
import ddmd.expression;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.inline;
import ddmd.mars;
import ddmd.mtype;
import ddmd.nogc;
import ddmd.objc;
import ddmd.opover;
import ddmd.root.filename;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.root.rootobject;
import ddmd.statement;
import ddmd.target;
import ddmd.tokens;
import ddmd.visitor;

extern extern (C++) RET retStyle(TypeFunction tf);

Expand Down
8 changes: 6 additions & 2 deletions src/globals.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,12 @@

module ddmd.globals;

import core.stdc.stdint, core.stdc.stdio, core.stdc.string;
import ddmd.root.array, ddmd.root.filename, ddmd.root.outbuffer;
import core.stdc.stdint;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.root.array;
import ddmd.root.filename;
import ddmd.root.outbuffer;

template xversion(string s)
{
Expand Down
10 changes: 9 additions & 1 deletion src/gluestub.d
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,15 @@

module ddmd.gluestub;

import ddmd.backend, ddmd.aggregate, ddmd.dmodule, ddmd.lib, ddmd.root.file, ddmd.statement, ddmd.dscope, ddmd.mtype, ddmd.dsymbol;
import ddmd.backend;
import ddmd.aggregate;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.lib;
import ddmd.mtype;
import ddmd.root.file;
import ddmd.statement;

// tocsym

Expand Down
42 changes: 40 additions & 2 deletions src/hdrgen.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,46 @@

module ddmd.hdrgen;

import core.stdc.ctype, core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.aliasthis, ddmd.arraytypes, ddmd.attrib, ddmd.complex, ddmd.cond, ddmd.ctfeexpr, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.dversion, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.init, ddmd.mars, ddmd.mtype, ddmd.nspace, ddmd.parse, ddmd.root.longdouble, ddmd.root.outbuffer, ddmd.root.port, ddmd.root.rootobject, ddmd.statement, ddmd.staticassert, ddmd.target, ddmd.tokens, ddmd.visitor;
import core.stdc.ctype;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.complex;
import ddmd.cond;
import ddmd.ctfeexpr;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.dversion;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.mars;
import ddmd.mtype;
import ddmd.nspace;
import ddmd.parse;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;
import ddmd.root.port;
import ddmd.root.rootobject;
import ddmd.statement;
import ddmd.staticassert;
import ddmd.target;
import ddmd.tokens;
import ddmd.visitor;

struct HdrGenState
{
Expand Down
10 changes: 8 additions & 2 deletions src/identifier.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,14 @@

module ddmd.identifier;

import core.stdc.stdio, core.stdc.string;
import ddmd.globals, ddmd.id, ddmd.root.outbuffer, ddmd.root.rootobject, ddmd.root.stringtable, ddmd.tokens;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.globals;
import ddmd.id;
import ddmd.root.outbuffer;
import ddmd.root.rootobject;
import ddmd.root.stringtable;
import ddmd.tokens;

extern (C++) final class Identifier : RootObject
{
Expand Down
22 changes: 21 additions & 1 deletion src/init.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,27 @@

module ddmd.init;

import ddmd.aggregate, ddmd.arraytypes, ddmd.dcast, ddmd.declaration, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.root.outbuffer, ddmd.root.rootobject, ddmd.statement, ddmd.tokens, ddmd.visitor;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.dcast;
import ddmd.declaration;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.root.outbuffer;
import ddmd.root.rootobject;
import ddmd.statement;
import ddmd.tokens;
import ddmd.visitor;

enum NeedInterpret : int
{
Expand Down
25 changes: 23 additions & 2 deletions src/inline.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,29 @@

module ddmd.inline;

import core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.apply, ddmd.arraytypes, ddmd.attrib, ddmd.declaration, ddmd.dmodule, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.init, ddmd.mtype, ddmd.opover, ddmd.statement, ddmd.tokens, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.apply;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.mtype;
import ddmd.opover;
import ddmd.statement;
import ddmd.tokens;
import ddmd.visitor;

private enum LOG = false;
enum CANINLINE_LOG = false;
Expand Down
23 changes: 21 additions & 2 deletions src/json.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,27 @@

module ddmd.json;

import core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.arraytypes, ddmd.attrib, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dmodule, ddmd.dsymbol, ddmd.dtemplate, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.root.outbuffer, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dmodule;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.root.outbuffer;
import ddmd.visitor;

extern (C++) final class ToJsonVisitor : Visitor
{
Expand Down
20 changes: 18 additions & 2 deletions src/lexer.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,24 @@

module ddmd.lexer;

import core.stdc.ctype, core.stdc.errno, core.stdc.stdarg, core.stdc.stdio, core.stdc.string, core.stdc.time;
import ddmd.entity, ddmd.errors, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.root.longdouble, ddmd.root.outbuffer, ddmd.root.port, ddmd.root.rmem, ddmd.root.stringtable, ddmd.tokens, ddmd.utf;
import core.stdc.ctype;
import core.stdc.errno;
import core.stdc.stdarg;
import core.stdc.stdio;
import core.stdc.string;
import core.stdc.time;
import ddmd.entity;
import ddmd.errors;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;
import ddmd.root.port;
import ddmd.root.rmem;
import ddmd.root.stringtable;
import ddmd.tokens;
import ddmd.utf;

enum LS = 0x2028;
// UTF line separator
Expand Down
15 changes: 13 additions & 2 deletions src/libomf.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,19 @@

module ddmd.libomf;

import core.stdc.stdio, core.stdc.string, core.stdc.stdlib, core.stdc.stdarg;
import ddmd.globals, ddmd.lib, ddmd.mars, ddmd.root.array, ddmd.root.file, ddmd.root.filename, ddmd.root.outbuffer, ddmd.root.stringtable, ddmd.errors;
import core.stdc.stdio;
import core.stdc.string;
import core.stdc.stdlib;
import core.stdc.stdarg;
import ddmd.globals;
import ddmd.lib;
import ddmd.mars;
import ddmd.root.array;
import ddmd.root.file;
import ddmd.root.filename;
import ddmd.root.outbuffer;
import ddmd.root.stringtable;
import ddmd.errors;

enum LOG = false;

Expand Down
17 changes: 15 additions & 2 deletions src/link.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,21 @@

module ddmd.link;

import core.stdc.ctype, core.stdc.stdio, core.stdc.stdlib, core.stdc.string, core.sys.posix.stdio, core.sys.posix.stdlib, core.sys.posix.sys.wait, core.sys.posix.unistd;
import ddmd.errors, ddmd.globals, ddmd.mars, ddmd.root.file, ddmd.root.filename, ddmd.root.outbuffer, ddmd.root.rmem;
import core.stdc.ctype;
import core.stdc.stdio;
import core.stdc.stdlib;
import core.stdc.string;
import core.sys.posix.stdio;
import core.sys.posix.stdlib;
import core.sys.posix.sys.wait;
import core.sys.posix.unistd;
import ddmd.errors;
import ddmd.globals;
import ddmd.mars;
import ddmd.root.file;
import ddmd.root.filename;
import ddmd.root.outbuffer;
import ddmd.root.rmem;

version (Posix) extern (C) int pipe(int*);
version (Windows) extern (C) int putenv(const char*);
Expand Down
44 changes: 42 additions & 2 deletions src/mars.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,48 @@

module ddmd.mars;

import core.stdc.ctype, core.stdc.errno, core.stdc.limits, core.stdc.stdint, core.stdc.stdio, core.stdc.stdlib, core.stdc.string;
import ddmd.arraytypes, ddmd.backend, ddmd.builtin, ddmd.cond, ddmd.dinifile, ddmd.dinterpret, ddmd.dmodule, ddmd.doc, ddmd.dscope, ddmd.dsymbol, ddmd.dunittest, ddmd.errors, ddmd.expression, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.inline, ddmd.json, ddmd.lexer, ddmd.lib, ddmd.link, ddmd.mtype, ddmd.objc, ddmd.parse, ddmd.root.file, ddmd.root.filename, ddmd.root.man, ddmd.root.outbuffer, ddmd.root.response, ddmd.root.rmem, ddmd.root.stringtable, ddmd.target, ddmd.tokens, ddmd.traits;
import core.stdc.ctype;
import core.stdc.errno;
import core.stdc.limits;
import core.stdc.stdint;
import core.stdc.stdio;
import core.stdc.stdlib;
import core.stdc.string;
import ddmd.arraytypes;
import ddmd.backend;
import ddmd.builtin;
import ddmd.cond;
import ddmd.dinifile;
import ddmd.dinterpret;
import ddmd.dmodule;
import ddmd.doc;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.dunittest;
import ddmd.errors;
import ddmd.expression;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.inline;
import ddmd.json;
import ddmd.lexer;
import ddmd.lib;
import ddmd.link;
import ddmd.mtype;
import ddmd.objc;
import ddmd.parse;
import ddmd.root.file;
import ddmd.root.filename;
import ddmd.root.man;
import ddmd.root.outbuffer;
import ddmd.root.response;
import ddmd.root.rmem;
import ddmd.root.stringtable;
import ddmd.target;
import ddmd.tokens;
import ddmd.traits;

/** Normalize path by turning forward slashes into backslashes */
extern (C++) const(char)* toWinPath(const(char)* src)
Expand Down
48 changes: 46 additions & 2 deletions src/mtype.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,52 @@

module ddmd.mtype;

import core.checkedint, core.stdc.float_, core.stdc.stdarg, core.stdc.stdio, core.stdc.stdlib, core.stdc.string;
import ddmd.access, ddmd.aggregate, ddmd.aliasthis, ddmd.argtypes, ddmd.arraytypes, ddmd.attrib, ddmd.backend, ddmd.complex, ddmd.ctfeexpr, ddmd.dcast, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dmangle, ddmd.dmodule, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.imphint, ddmd.init, ddmd.opover, ddmd.root.longdouble, ddmd.root.outbuffer, ddmd.root.port, ddmd.root.rmem, ddmd.root.rootobject, ddmd.root.stringtable, ddmd.sideeffect, ddmd.target, ddmd.tokens, ddmd.visitor;
import core.checkedint;
import core.stdc.float_;
import core.stdc.stdarg;
import core.stdc.stdio;
import core.stdc.stdlib;
import core.stdc.string;
import ddmd.access;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.argtypes;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.backend;
import ddmd.complex;
import ddmd.ctfeexpr;
import ddmd.dcast;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dmangle;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.imphint;
import ddmd.init;
import ddmd.opover;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;
import ddmd.root.port;
import ddmd.root.rmem;
import ddmd.root.rootobject;
import ddmd.root.stringtable;
import ddmd.sideeffect;
import ddmd.target;
import ddmd.tokens;
import ddmd.visitor;

enum LOGDOTEXP = 0;
// log ::dotExp()
Expand Down
15 changes: 14 additions & 1 deletion src/nogc.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,20 @@

module ddmd.nogc;

import ddmd.apply, ddmd.declaration, ddmd.dscope, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.init, ddmd.mtype, ddmd.sapply, ddmd.statement, ddmd.tokens, ddmd.visitor;
import ddmd.apply;
import ddmd.declaration;
import ddmd.dscope;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.mtype;
import ddmd.sapply;
import ddmd.statement;
import ddmd.tokens;
import ddmd.visitor;

/**************************************
* Look for GC-allocations
Expand Down
10 changes: 9 additions & 1 deletion src/nspace.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,15 @@

module ddmd.nspace;

import ddmd.aggregate, ddmd.arraytypes, ddmd.dscope, ddmd.dsymbol, ddmd.globals, ddmd.hdrgen, ddmd.identifier, ddmd.root.outbuffer, ddmd.visitor;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.identifier;
import ddmd.root.outbuffer;
import ddmd.visitor;

private enum LOG = false;

Expand Down
16 changes: 15 additions & 1 deletion src/objc.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,21 @@

module ddmd.objc;

import ddmd.arraytypes, ddmd.cond, ddmd.dclass, ddmd.dmangle, ddmd.dmodule, ddmd.dscope, ddmd.dstruct, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.root.outbuffer, ddmd.root.stringtable;
import ddmd.arraytypes;
import ddmd.cond;
import ddmd.dclass;
import ddmd.dmangle;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.root.outbuffer;
import ddmd.root.stringtable;

extern(C++) void objc_initSymbols();

Expand Down
8 changes: 7 additions & 1 deletion src/objc_stubs.d
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@
module ddmd.objc;

import core.stdc.stdio;
import ddmd.dclass, ddmd.dscope, ddmd.dstruct, ddmd.func, ddmd.globals, ddmd.id, ddmd.root.stringtable;
import ddmd.dclass;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.root.stringtable;

struct ObjcSelector
{
Expand Down
23 changes: 21 additions & 2 deletions src/opover.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,27 @@

module ddmd.opover;

import core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.aliasthis, ddmd.arraytypes, ddmd.dclass, ddmd.declaration, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.statement, ddmd.tokens, ddmd.visitor;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.arraytypes;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.statement;
import ddmd.tokens;
import ddmd.visitor;

/******************************** Expression **************************/
/***********************************
Expand Down
13 changes: 12 additions & 1 deletion src/optimize.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,18 @@

module ddmd.optimize;

import ddmd.constfold, ddmd.ctfeexpr, ddmd.dclass, ddmd.declaration, ddmd.expression, ddmd.globals, ddmd.init, ddmd.mtype, ddmd.root.longdouble, ddmd.sideeffect, ddmd.tokens, ddmd.visitor;
import ddmd.constfold;
import ddmd.ctfeexpr;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.expression;
import ddmd.globals;
import ddmd.init;
import ddmd.mtype;
import ddmd.root.longdouble;
import ddmd.sideeffect;
import ddmd.tokens;
import ddmd.visitor;

/*************************************
* If variable has a const initializer,
Expand Down
36 changes: 34 additions & 2 deletions src/parse.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,40 @@

module ddmd.parse;

import core.stdc.stdio, core.stdc.string;
import ddmd.aggregate, ddmd.aliasthis, ddmd.arraytypes, ddmd.attrib, ddmd.cond, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dmodule, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.dtemplate, ddmd.dversion, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.lexer, ddmd.mtype, ddmd.nspace, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.root.rootobject, ddmd.statement, ddmd.staticassert, ddmd.tokens;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.cond;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dmodule;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.dtemplate;
import ddmd.dversion;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.lexer;
import ddmd.mtype;
import ddmd.nspace;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.root.rootobject;
import ddmd.statement;
import ddmd.staticassert;
import ddmd.tokens;

// How multiple declarations are parsed.
// If 1, treat as C.
Expand Down
3 changes: 2 additions & 1 deletion src/sapply.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@

module ddmd.sapply;

import ddmd.statement, ddmd.visitor;
import ddmd.statement;
import ddmd.visitor;

/**************************************
* A Statement tree walker that will visit each Statement s in the tree,
Expand Down
8 changes: 6 additions & 2 deletions src/scanomf.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,12 @@

module ddmd.scanomf;

import core.stdc.string, core.stdc.stdlib;
import ddmd.globals, ddmd.root.outbuffer, ddmd.arraytypes, ddmd.errors;
import core.stdc.string;
import core.stdc.stdlib;
import ddmd.globals;
import ddmd.root.outbuffer;
import ddmd.arraytypes;
import ddmd.errors;

enum LOG = false;

Expand Down
9 changes: 8 additions & 1 deletion src/sideeffect.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,14 @@

module ddmd.sideeffect;

import ddmd.apply, ddmd.declaration, ddmd.expression, ddmd.func, ddmd.globals, ddmd.mtype, ddmd.tokens, ddmd.visitor;
import ddmd.apply;
import ddmd.declaration;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.mtype;
import ddmd.tokens;
import ddmd.visitor;

/**************************************************
* Front-end expression rewriting should create temporary variables for
Expand Down
46 changes: 44 additions & 2 deletions src/statement.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,50 @@

module ddmd.statement;

import core.stdc.stdarg, core.stdc.stdio;
import ddmd.aggregate, ddmd.arrayop, ddmd.arraytypes, ddmd.attrib, ddmd.backend, ddmd.canthrow, ddmd.clone, ddmd.cond, ddmd.ctfeexpr, ddmd.dcast, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dinterpret, ddmd.dscope, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.escape, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.init, ddmd.inline, ddmd.intrange, ddmd.mtype, ddmd.mtype, ddmd.nogc, ddmd.opover, ddmd.parse, ddmd.root.outbuffer, ddmd.root.rootobject, ddmd.sapply, ddmd.sideeffect, ddmd.staticassert, ddmd.target, ddmd.tokens, ddmd.visitor;
import core.stdc.stdarg;
import core.stdc.stdio;
import ddmd.aggregate;
import ddmd.arrayop;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.backend;
import ddmd.canthrow;
import ddmd.clone;
import ddmd.cond;
import ddmd.ctfeexpr;
import ddmd.dcast;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dinterpret;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.escape;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.init;
import ddmd.inline;
import ddmd.intrange;
import ddmd.mtype;
import ddmd.mtype;
import ddmd.nogc;
import ddmd.opover;
import ddmd.parse;
import ddmd.root.outbuffer;
import ddmd.root.rootobject;
import ddmd.sapply;
import ddmd.sideeffect;
import ddmd.staticassert;
import ddmd.target;
import ddmd.tokens;
import ddmd.visitor;

extern extern (C++) Statement asmSemantic(AsmStatement s, Scope* sc);

Expand Down
13 changes: 12 additions & 1 deletion src/staticassert.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,18 @@

module ddmd.staticassert;

import ddmd.dscope, ddmd.dsymbol, ddmd.errors, ddmd.expression, ddmd.globals, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.root.outbuffer, ddmd.visitor;
import ddmd.dscope;
import ddmd.dsymbol;
import ddmd.errors;
import ddmd.expression;
import ddmd.globals;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.root.outbuffer;
import ddmd.visitor;

extern (C++) final class StaticAssert : Dsymbol
{
Expand Down
8 changes: 7 additions & 1 deletion src/target.d
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@
module ddmd.target;

import core.stdc.string;
import ddmd.dmodule, ddmd.expression, ddmd.globals, ddmd.identifier, ddmd.mtype, ddmd.root.longdouble, ddmd.root.outbuffer;
import ddmd.dmodule;
import ddmd.expression;
import ddmd.globals;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;

struct Target
{
Expand Down
12 changes: 10 additions & 2 deletions src/tokens.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,16 @@

module ddmd.tokens;

import core.stdc.ctype, core.stdc.stdio, core.stdc.string;
import ddmd.globals, ddmd.id, ddmd.identifier, ddmd.root.longdouble, ddmd.root.outbuffer, ddmd.root.rmem, ddmd.utf;
import core.stdc.ctype;
import core.stdc.stdio;
import core.stdc.string;
import ddmd.globals;
import ddmd.id;
import ddmd.identifier;
import ddmd.root.longdouble;
import ddmd.root.outbuffer;
import ddmd.root.rmem;
import ddmd.utf;

enum TOK : int
{
Expand Down
29 changes: 28 additions & 1 deletion src/traits.d
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,34 @@
module ddmd.traits;

import core.stdc.string;
import ddmd.aggregate, ddmd.arraytypes, ddmd.attrib, ddmd.canthrow, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.errors, ddmd.expression, ddmd.func, ddmd.globals, ddmd.hdrgen, ddmd.id, ddmd.identifier, ddmd.mtype, ddmd.nogc, ddmd.root.aav, ddmd.root.array, ddmd.root.rootobject, ddmd.root.speller, ddmd.root.stringtable, ddmd.tokens, ddmd.visitor;
import ddmd.aggregate;
import ddmd.arraytypes;
import ddmd.attrib;
import ddmd.canthrow;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.errors;
import ddmd.expression;
import ddmd.func;
import ddmd.globals;
import ddmd.hdrgen;
import ddmd.id;
import ddmd.identifier;
import ddmd.mtype;
import ddmd.nogc;
import ddmd.root.aav;
import ddmd.root.array;
import ddmd.root.rootobject;
import ddmd.root.speller;
import ddmd.root.stringtable;
import ddmd.tokens;
import ddmd.visitor;

enum LOGSEMANTIC = false;

Expand Down
9 changes: 8 additions & 1 deletion src/typinf.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,14 @@

module ddmd.typinf;

import ddmd.declaration, ddmd.dmodule, ddmd.dscope, ddmd.dstruct, ddmd.dsymbol, ddmd.errors, ddmd.globals, ddmd.mtype;
import ddmd.declaration;
import ddmd.dmodule;
import ddmd.dscope;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.errors;
import ddmd.globals;
import ddmd.mtype;

extern (C++) void toObjFile(Dsymbol ds, bool multiobj);

Expand Down
22 changes: 21 additions & 1 deletion src/visitor.d
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,27 @@

module ddmd.visitor;

import ddmd.aggregate, ddmd.aliasthis, ddmd.attrib, ddmd.cond, ddmd.ctfeexpr, ddmd.dclass, ddmd.declaration, ddmd.denum, ddmd.dimport, ddmd.dmodule, ddmd.dstruct, ddmd.dsymbol, ddmd.dtemplate, ddmd.dversion, ddmd.expression, ddmd.func, ddmd.init, ddmd.mtype, ddmd.nspace, ddmd.statement, ddmd.staticassert;
import ddmd.aggregate;
import ddmd.aliasthis;
import ddmd.attrib;
import ddmd.cond;
import ddmd.ctfeexpr;
import ddmd.dclass;
import ddmd.declaration;
import ddmd.denum;
import ddmd.dimport;
import ddmd.dmodule;
import ddmd.dstruct;
import ddmd.dsymbol;
import ddmd.dtemplate;
import ddmd.dversion;
import ddmd.expression;
import ddmd.func;
import ddmd.init;
import ddmd.mtype;
import ddmd.nspace;
import ddmd.statement;
import ddmd.staticassert;

extern (C++) class Visitor
{
Expand Down