Code coverage and std.c.*
Unknown W. Brackets
unknown at simplemachines.org
Fri Feb 24 00:15:04 PST 2006
It looks as if this may have been a problem with the Linux version of
phobos, as packaged. On Windows, it compiles fine.
However, running the example I posted seems to give me an error (invalid
UTF-8 sequence.)
C:\test>dmd -run dummy.d
1140768677
C:\test>dmd -cov -run dummy.d
1140768681
Error: 4invalid UTF-8 sequence
A blank dummy.lst file is created, but nothing appears within it.
Strange.
-[Unknown]
> Perhaps it's just me, but it seems like code coverage (-cov) and
> std.c.time (and friends) just don't see eye to eye. Examples work best
> here.
>
> Consider the following:
>
> import std.c.time;
>
> int main()
> {
> printf("%d\n", time(null));
>
> return 0;
> }
>
> This compiles just fine with any of:
>
> dmd -run test.d
> dmd test.d && ./test
>
> Which is exactly right. But now try adding -cov (same affect with
> either of above, using -run for simplicity):
>
> dmd -cov -run test.d
>
> Instead of the expected:
>
> gcc test.o -o test -lphobos -lpthread -lm
> 1140329968
>
> I get:
>
> test.o(.data+0x38): undefined reference to `_ModuleInfo_3std1c4time'
> collect2: ld returned 1 exit status
> --- errorlevel 1
>
> However, if I use instead, let's say, std.date, it works fine. But if
> it's std.c.anything, it gives the same general error.
>
> Surely just changing an import from "std.date" to "std.c.stdio" should
> not stop the code coverage testing from working, should it?
>
> Thanks,
> -[Unknown]
More information about the Digitalmars-d-bugs
mailing list