Thread overview
Seas of errors from DMD
Feb 19, 2012
bearophile
Feb 20, 2012
Don Clugston
Feb 20, 2012
Don
Feb 21, 2012
Don Clugston
Feb 21, 2012
Don Clugston
February 19, 2012
This is a recent "fix": http://d.puremagic.com/issues/show_bug.cgi?id=7481

but I suggest to revert it, or improve it significantly, because I am seeing avalanches of error messages, that slow down my compilation-fix-run cycle and are useless to me and unreadable.

A little example code:
http://codepad.org/UvlfYO1t

The bug is at line 46, the "in" before "T function":
void report(T)(in T[] r, in T function(T) pure f, ...

About half of the generated error messages, codepad shows only about the first 520 lines of errors, but it generates 1029 long lines of errors like this:
http://codepad.org/ayEabGIH

Bye,
bearophile
February 20, 2012
On 19/02/12 22:35, bearophile wrote:
> This is a recent "fix":
> http://d.puremagic.com/issues/show_bug.cgi?id=7481
>
> but I suggest to revert it, or improve it significantly, because I am seeing avalanches of error messages, that slow down my compilation-fix-run cycle and are useless to me and unreadable.

That is expected (and intended). It will flush out a lot of pre-existing bugs which have been hidden up to now. Note that inside an is(typeof()), all these errors HAVE always been generated! We want to get rid of them all.
This was deliberately introduced at the beginning of a release cycle, you won't see this behaviour in a release.
Please enter bug reports for anything you find.

>
> A little example code:
> http://codepad.org/UvlfYO1t
>
> The bug is at line 46, the "in" before "T function":
> void report(T)(in T[] r, in T function(T) pure f, ...
>
> About half of the generated error messages, codepad shows only about the first 520 lines of errors, but it generates 1029 long lines of errors like this:
> http://codepad.org/ayEabGIH
>
> Bye,
> bearophile

February 20, 2012
On 19.02.2012 22:35, bearophile wrote:
> This is a recent "fix":
> http://d.puremagic.com/issues/show_bug.cgi?id=7481
>
> but I suggest to revert it, or improve it significantly, because I am seeing avalanches of error messages, that slow down my compilation-fix-run cycle and are useless to me and unreadable.
>
> A little example code:
> http://codepad.org/UvlfYO1t
>
> The bug is at line 46, the "in" before "T function":
> void report(T)(in T[] r, in T function(T) pure f, ...
>
> About half of the generated error messages, codepad shows only about the first 520 lines of errors, but it generates 1029 long lines of errors like this:
> http://codepad.org/ayEabGIH
>
> Bye,
> bearophile

Cannot reproduce. I just get:
---
bug.d(67): Error: template bug.report(T) cannot deduce template function from argument types !()(real[],real function(real x) pure nothrow)
---

February 21, 2012
On 20/02/12 22:16, Don wrote:
> On 19.02.2012 22:35, bearophile wrote:
>> This is a recent "fix":
>> http://d.puremagic.com/issues/show_bug.cgi?id=7481
>>
>> but I suggest to revert it, or improve it significantly, because I am
>> seeing avalanches of error messages, that slow down my
>> compilation-fix-run cycle and are useless to me and unreadable.
>>
>> A little example code:
>> http://codepad.org/UvlfYO1t
>>
>> The bug is at line 46, the "in" before "T function":
>> void report(T)(in T[] r, in T function(T) pure f, ...
>>
>> About half of the generated error messages, codepad shows only about
>> the first 520 lines of errors, but it generates 1029 long lines of
>> errors like this:
>> http://codepad.org/ayEabGIH
>>
>> Bye,
>> bearophile
>
> Cannot reproduce. I just get:
> ---
> bug.d(67): Error: template bug.report(T) cannot deduce template function
> from argument types !()(real[],real function(real x) pure nothrow)
> ---
>
Never mind, I've figured it out now. The root cause is very simple.

February 21, 2012
On 19/02/12 22:35, bearophile wrote:
> This is a recent "fix":
> http://d.puremagic.com/issues/show_bug.cgi?id=7481
>
> but I suggest to revert it, or improve it significantly, because I am seeing avalanches of error messages, that slow down my compilation-fix-run cycle and are useless to me and unreadable.
>
> A little example code:
> http://codepad.org/UvlfYO1t
>
> The bug is at line 46, the "in" before "T function":
> void report(T)(in T[] r, in T function(T) pure f, ...
>
> About half of the generated error messages, codepad shows only about the first 520 lines of errors, but it generates 1029 long lines of errors like this:
> http://codepad.org/ayEabGIH
>
> Bye,
> bearophile

Bug 7557.