From: Douglas Gregor (gregod_at_[hidden])
Date: 2002-03-26 09:20:50
On Tuesday 26 March 2002 05:16 am, you wrote:
> > Simple summary: STLfilt works right now, and doesn't change the language
> > but what I'm proposing can help make much nicer error messages.
> The problem is, that you can't change the compiler/language.
Yes, you can. We all seem to agree that there is a need for better error
messages, and it seems that there is no portable solution within the
language. That's reason enough to consider an extension.
> But you can
> write a macro to output strings from the code as a warning from the
> compiler. These warnings can be used to generate good error messages.
> Sure the tool I wrote is not yet ready for these kind of things, there
> are several extension that could be useful: Regular expressions that are
> applied to several lines at once (allowing to summarize the call stack
> and spread errors - that is errors that can only be detected when
> looking at several lines of output at once). Maybe includes for the
> rulesets would be useful. You may have a look for yourself and see if
> you like it...
> Regards, Daniel
The macro solution is not feasible, because macros can only be triggered by
preprocessor operations. The really ugly STL and Boost error messages come
from template instantiation, which we can't override within the current
I agree with Emily's conclusion: "Compiler supported error messages _and_
STLfilt (or <whatever>filt), please!"
As for the Booster - the name really has to change, but otherwise I like it.
I still wonder if the compilers themselves could do a better job at, e.g.,
using user typedef names and suppressing default arguments.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk