bearophile wrote:
I have added this bit of code to my dmd, it gives warnings in cases of integral
signed-unsigned comparisons:
https://github.com/D-Programming-Language/dmd/pull/119
Then I have compiled Phobos (with unittests) with the -wi switch, this has
generated some of those signed-unsigned warning messages, maybe this list is of
interest for someone:
http://codepad.org/Ku42j1SR
Note: that "ignored variadic arguments to the constructor" that lists no line
number is generated at line 1766 of template ConstructorGeneratingPolicy() inside
typecons.d Phobos module.
Bye,
bearophile
I've had a look at a dozen or so of these, and they were all real. I
didn't see any which require a cast to "make the compiler shut up".
That's pretty impressive. In C++ I find that such messages are nearly
always false positives.
The one case where it's a bit annoying is this:
int [] x = new int[6]; // or x = some array literal.
for (int i = 0; i < x.length; ++i) {...}
Here is a suggestion for how we could eliminate such false positives.
http://d.puremagic.com/issues/show_bug.cgi?id=6478