module testasm; void main() { asm { mov ecx, 1; } } > rdmd testasm.d > // no error > dmd testasm.d testasm.d(5): undefined identifier 'ecx'
The problem is ASM errors are written to stdout instead of stderr. Lines printed to stdout are redirected to testasm.d.deps. The function 'asmerr' in 'iasm.c' should be changed to print to stderr instead of stdout.
https://github.com/D-Programming-Language/dmd/pull/742
Commit pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/e2a2f7eea93cb7bf461348e3405946c6cb5fcf16 Merge pull request #742 from yebblies/issue5879 Issue 5879 - Not all frontend errors use stderr
https://github.com/D-Programming-Language/dmd/commit/4f70b83c09fa3793348f38b3f53e413e64f97c8c