On 08/05/12 09:56, Andrej Mitrovic wrote:
On 4/30/12, Andrej Mitrovic<andrej.mitrov...@gmail.com> wrote:
Personally my gripe with compilation times is that I get very used to
having fast build times where I can go through an edit+compile+run
cycle really fast, but after a while build times get slower
Also since 2.059 error reporting is *completely* broken. I have to
wait 5 seconds just to get this error message itself to print to the
screen:
http://pastebin.com/y93GEPAf
500 lines of errors even though only the first line is an actual
error. What in the actual fuck are all those other error messages? The
only problem was this line in a main file:
CppGen gen;
and CppGen was undefined because I've missed an import.
And if I remove the only import left (std.range), I get much less
garbage but I still get unrelated errors:
main.d(80): Error: undefined identifier CppGen
D:\DMD\dmd2\windows\bin\..\..\src\phobos\std\conv.d(244): Error:
template std.conv.toImpl does not match any function template
declaration
D:\DMD\dmd2\windows\bin\..\..\src\phobos\std\conv.d(244): Error:
template std.conv.toImpl cannot deduce template function from argument
types !(string)(long)
D:\DMD\dmd2\windows\bin\..\..\src\phobos\std\conv.d(244): Error:
template instance toImpl!(string) errors instantiating template
loader\gcc.d(167): Error: template instance
std.conv.to!(string).to!(long) error instantiating
2.058 error reporting worked fine, I don't know what someone did to
screw this up so massively.
That bug was fixed in git not long after release. Unfortunately it seems
that there are not enough people doing beta testing.
As for why it happened -- previously the compiler used a hack to prevent
the flood of error messages (and the hack didn't work properly in the
case where errors were gagged, like in is(typeof()) ). Now it does it
properly.