|
Boost : |
From: David Abrahams (dave_at_[hidden])
Date: 2004-02-09 16:19:37
Stefan Seefeld <seefeld_at_[hidden]> writes:
> Glen Knowles wrote:
>> From: David Abrahams [mailto:dave_at_[hidden]]
>> >> Of course you cannot portably pass all exceptions, but you may be able
>> >> to pass all the ones that use standard types.
>> >
>> >And what if the std library or somebody else throws exceptions
>> >*derived* from the standard types?
>> If it is not a recognized corba exception what the ACE TAO does is
>> eat it with a catch(...) and then throws a corba system exception on
>> the other side.
>
>
> yes, so all exceptions that are allowed to pass have to be explicitely
> declared
> as such. If it is not declared, a special standard exception will be
> thrown (or may be something equivalent to 'unexpected'). If it is
> derived from a declared one, it will be sliced.
Is everyone convinced that propagating the exception into the joining
thread is the right behavior or even semantically sensible?
-- Dave Abrahams Boost Consulting www.boost-consulting.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk