DMD diagnostic - any way to remove identical lines from final dmd error log?

Don Clugston dac at nospam.com
Tue Aug 14 01:48:13 PDT 2012


On 14/08/12 08:59, Don Clugston wrote:
> On 13/08/12 18:47, Dmitry Olshansky wrote:
>> I seriously consider writing a simple postprocessor for dmd's output.
>> Once dmd became able to recover from errors and crawl on it started to
>> produce horrific amounts of redundant text on failure.
>>
>> Observe for instance that there are only 6 + 2 = 8 lines of interest:
>
> Spurious or repeated error messages should be considered to be bugs.
> Please put test cases in Bugzilla. A long time ago, the compiler used to
> spew reams of garbage all the time. Now it rarely happens.
>
>> Other food for thought is to try to indicate explicitly which errors
>> are related vs unrelated, which are collateral, like failed template
>> instantiation that rolls out the whole path of failure (but one have to
>> read the text carefully to get where it starts).
>
> That's already happening. Supplemental messages don't have the word
> 'Error' at the start of the error message.

One fairly easy way to solve this, would be that once a template 
*instantiation* has failed, the template *definition* would be marked as 
doubtful, and any further instantiation using that definition would have 
all error messages suppressed. If an error occurred, a single error 
would be produced stating that the template instantiation failed.

The downside would be that if the template instantiation failed for a 
completely different reason the second time, its root cause error would 
not be shown. But this latest release is the only time such errors have 
been shown anyway.



More information about the Digitalmars-d mailing list