Something must be done about the obtuse error messages issued by the
GCC compiler, particularly when using C++ and STL classes. Take this,
for example, which is the output I got recently after a one-line change:

Andy Balaam has a humorous blog post where—almost as an aside—he generates a 1950-byte error message from a source program of only 181 bytes.

There is clearly a problem when someone starts an open source project just to post-process compiler error messages
so as to make them readable. I do use STLFilt, and it’s very helpful.
But it’s fixing a problem that shouldn’t exist in the first place,
because our compiler tools should be better at producing useful error
messages that are intelligible by mere mortals.

The problem was brought to the attention
of the GCC development team almost exactly five years ago today.
Unfortunately, they come down on the side of pedantic correctness
instead of producing a tool that might be more useful to their end
users.

As soon as I have a break on my current project, I’m hoping to investigate Clang/LLVM. It’s a new compiler technology, and I’m hopeful because they list expressive diagnostics as one of their goals. However, they do not yet support C++.