July 23, 2010
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.