How to prevent DMD from changing the executable files at each compilation ?

Ecstatic Coder ecstatic.coder at
Sun Sep 29 11:15:43 UTC 2019

Every time I compile the same code with DMD, I get a slightly 
different ".exe" file on Windows.

fc /b basil.exe basil_old_1.exe
00000118: 9F 55
00000119: 8C 89
00156554: 9F 55
00156555: 8C 89

fc /b basil.exe basil_old_2.exe
00000118: 9F 1B
00000119: 8C 8A
00156554: 9F 1B
00156555: 8C 8A

This problem is D specific, as for instance Go will generate the 
same executable each time.

So before I implement a tool for this, is there an easy way to 
prevent DMD from "timestamping" its generated binaries, so that 
they become more "git-friendly" ?

More information about the Digitalmars-d mailing list