Bug 4495 – The -Hd (import file generation directory) option for DMD doesn't work correctly in 2.047.
Status
RESOLVED
Resolution
DUPLICATE
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2010-07-23T13:08:00Z
Last change time
2012-11-02T05:59:22Z
Assigned to
nobody
Creator
jaysistar
Comments
Comment #0 by jaysistar — 2010-07-23T13:08:05Z
When compiling a library, if more than 1 .d file is specified with directories in the path of the .d files and the -Hd
option is used, then DMD 2.047 does not take the directories in the paths in to account when generating the .di
files. For example:
Directory of files:
file1.d
dir1/file2.d
dir2/file3.d
The DMD command line:
dmd -lib -oflibfile.a -Hdimport file1.d dir1/file2.d dir2/file3.d
Expected results:
libfile.a
import/file1.di
import/dir1/file2.di
import/dir2/file3.di
Actual results with DMD 2.047:
libfile.a
import/file1.di
import/file2.di
import/file3.di
Therefore, the compiler cannot find the correct path to the .di file when compiling an application using this library because if "import dir2.file2" were used in the application, the compiler would look for a file in [imports path]/dir2/file2.di, but it would (correctly) not look for that import as [imports path]/file2.di, which is where DMD 2.047 outputs it.
Comment #1 by andrej.mitrovich — 2012-11-02T05:59:22Z
*** This issue has been marked as a duplicate of issue 8808 ***