|
Boost : |
From: Gavin Lambert (boost_at_[hidden])
Date: 2020-06-01 23:35:55
On 31/05/2020 03:19, Emil Dotchevski wrote:
> - At try_catch: a local tuple<slot<E>...> is initialized, where E... is
> basically the argument types of all the error handlers, with duplicates
> removed. Each slot<E> zeroes an int, and a TLS pointer for each of E... is
> set to point the corresponding slot<E>... . When exiting the try_catch,
> this is undone.
Speaking of removing duplicates... how are nested errors intended to be
managed? I don't see any mention of this in the docs (but have possibly
overlooked it).
With exceptions we now have nested_exception, but they both might wish
to transport a filename, for example, and these may be different at each
level.
At a particular catch site it may need to inspect or report both
filenames (but they have to remain as separate entities associated with
each error context, not merged into an e_relevant_file_names or similar).
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk