An example of Clang error messages
bearophile
bearophileHUGS at lycos.com
Fri Mar 5 10:42:51 PST 2010
Walter Bright:
> Here's what DMC does:
>
> x = (a + b) * (c + d) / (e + f);
> ^
> test.cpp(6) : Error: illegal operand types
> Had: Foo
> and: int
>
> and here's what DMD does:
>
> test.d(6): Error: incompatible types for ((c) + (d)): 'Foo' and 'int'
[What DMD currently does (plus the last thing you have very quickly implemented, I have asked for that feature of Mathematica lot of time ago) is enough for me.]
For a human those two error messages give about the same information. But for a IDE that has to parse the error messages to show something graphically the error message with the "^" can be better.
Regarding the excessive amount of lines of error messages shown on the command line when you use the "^", with DMD I usually only read the first error message or the few first ones, ignoring the successive error messages, because the successive ones are usually useless. With GCC I sometimes use a compilation flag (-Wfatal-errors) that when present makes the compiler show only the first of few first error messages.
Bye,
bearophile
More information about the Digitalmars-d
mailing list