Bug 14926 – Programs compiled using dmd 2.068 are generating dummy profilegc.log files
Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86
OS
Linux
Creation time
2015-08-17T07:50:00Z
Last change time
2015-10-04T18:19:12Z
Assigned to
nobody
Creator
deadalnix
Comments
Comment #0 by deadalnix — 2015-08-17T07:50:18Z
It looks like every run of whatever I compiled generate a profilegc.log file, that only contains :
bytes allocated, type, function, file:line
And that's it. Flag used to compile are -w -debug -gc -unittest . I'm using the .deb package on debian.
Comment #1 by code — 2015-08-26T01:10:57Z
Can't reproduce this on my linux distribution.
What version of debian are you using?
On which of the flags does it depend?
Why are you using -gc instead of -g btw?
Comment #2 by code — 2015-08-28T15:18:15Z
Ping, any update on this?
Comment #3 by r.sagitario — 2015-08-28T22:36:41Z
I see it generated by the druntime unittests.
I guess that hints at the problem: if you link to a shared phobos/druntime library, the latter contains rt.profilegc. It's static destructors will run at program termination and write the log file.
Comment #4 by deadalnix — 2015-08-28T22:42:18Z
Ok first about the -gc
SDC was already using it when I started working on it. Not sure what is the difference with -g and never investigated the question that much. I have debug infos, that is this most important.
I'm using debian testing, and installed dmd via the .deb present on the download page. The setup is completely vanilla. I can provide you the versions of the softwares I'm using upon request.
I'm also using D on a OSX machine and the problem does not happen, so it seems to be linux specific (or even debian/ubuntu specific ?).
Rainer may have a point. I can do more testing over the weekend to find exactly what flags do or do not produce the file.