From: "Jeff Garland" <[EMAIL PROTECTED]>
> > Whether the right solution is to fix what() or to introduce a separate
> > function is another matter, of course.
>
> Given that there is lots of existing practice that doesn't meet
> your 'well-defined' standard, it seems that the only option is
> to introduce a separate function.

The wonderful thing about leaving what() implementation-defined is that it
can be tightened to be well-defined for all standard exception classes
without breaking any code, as any code that depends on particular what()
string is already broken. :-)

> Of course, typeinfo might
> be another way, but that's broken for cross-platform
> developments :-(

typeinfo::name() isn't a good general solution, although it's a very good
default. In particular, I'd expect

char const * errno_exception::what() const throw();

to return f.ex. "ENOMEM" and not "errno_exception".

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to