November 22, 2015
https://issues.dlang.org/show_bug.cgi?id=15374

          Issue ID: 15374
           Summary: [internal] Nothing should import ddmd.mars
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: blocker
          Priority: P1
         Component: dmd
          Assignee: nobody@puremagic.com
          Reporter: ibuclaw@gdcproject.org

These modules all import ddmd.mars.

ddmd.attrib
ddmd.cond
ddmd.dimport
ddmd.doc
ddmd.expression
ddmd.func
ddmd.hdrgen

Because these four functions are defined there:

readFile
writeFile
ensurePathToNameExists
escapePath


As ddmd.mars is the main function, nothing should be importing it.  These helper/utility functions should either be moved elsewhere or put in it's own module.

This is a foreseeable blocker for switching to the new D frontend, as the main function is defined elsewhere in GDC, possibly LDC too?

--