Simplifing tuples
Theodore Papadopoulo
Theodore.Papadopoulo@sophia.inria.fr
Mon Oct 11 16:32:00 GMT 2004
bkoz@redhat.com said:
> I'm more in favor of compile-time construction via metaprogramming
> (only as complicated as is absolutely necessary, of course...). In the
> long run, this seems like the more robust solution. Also, one without
> build dependencies. It seems like either way you'll have some
> complexity, it's just where you choose to put it.
> Auto-generating header files seems like the wrong approach to me.
I agree with that.
I really believe that the problem of error message related to
metaprogramming should be solved in another way (maybe allowing the
library writer to interfere with the error system to better define
the error messages or better hide some implementation details)...
That would help a lot of other projects and improve the usability of
the C++ compiler.
That being said, I'm not quite sure what form this should take.
In my (naive) opinion, there should be a way for implementers to
specify that for regular users, messages coming from some classes should be
omitted. In many cases (notably recursive classes), the user is
mostly interested in the final error and the error at some hi-level
point of instantiation, the rest is just machinery.
Of course, power users might need all the messages so this should be
controlled by a flag.
I understand that extensions are not very welcome (and I understand
why), but I believe that at least this should be discussed because
otherwise the C++ error messages will always be a pain to
read/understand.
Maybe Chris should post the current ugly error messages and people
should discuss about what information is important and how to provide
optimal/better messages in such cases. With a few such cases, maybe we can
come up with a clearer idea on how to improve the messages and how to
support such a thing (if support is needed).
Theo.
--------------------------------------------------------------------
Theodore Papadopoulo
Email: Theodore.Papadopoulo@sophia.inria.fr Tel: (33) 04 92 38 76 01
--------------------------------------------------------------------
More information about the Libstdc++
mailing list