www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Strange dmd -cov bug

I'm seeing a very strange bug with dmd -cov. I started using -cov
yesterday and looking at the .lst files in order to improve unittest
coverage in my code, and then I found a block of code that displayed
000000 in the .lst file, yet there's a unittest that directly triggers
it!

In order to prove that the code actually ran, I added writeln's in that
block of code as well as the accompanying unittest, and sure enough, it
*did* run, and it did so within that unittest. However, the .lst file
still shows up with 000000.

The odd thing is, this only happens when I build the full program; when
I tried isolating that particular module from the rest of the program,
the problem went away.

Any ideas what might have gone wrong? Could it be possible that there's
memory corruption somewhere else in my program that's screwing up the
coverage data at runtime?


T

-- 
He who sacrifices functionality for ease of use, loses both and deserves
neither. -- Slashdotter
Nov 27 2013