On Tuesday, 29 December 2020 at 16:13:53 UTC, Raikia wrote:
Hey all,
[...]
$ strings -a program.exe | grep 'dmd2'
C:\D\dmd2\windows\bin\..\..\src\phobos\std\file.d
C:\D\dmd2\windows\bin\..\..\src\phobos\std\utf.d
C:\D\dmd2\windows\bin\..\..\src\phobos\std\base64.d
This problem is more egregious when I am using a home folder,
like "C:\Users\<my name>\" instead of "C:\D\". Am I missing
something? Is there a way to compile D without leaking
metadata like this in a production release binary?
I believe those are because of Exception constructors that use
the __FILE__ special keyword. You might patch the final
executable and replace the string content with spaces or 'x's.