Bumping the inline namespace version to v2 to avoid ODR violations.
The pre_exit code remains at v1 (it must be bumped more carefully).
The portable default executor is moving to v2 - which may lead to more than one thread pool for the portable instance. Pinning the version here is more difficult.
Removed dead reset() operations in future shared_baseDocumented (and assert) precondition that future::exception() is only invoked on a ready exception.
Made more of the tuple meta-facilities public to avoid detail:: namespace usage in unit tests.
Restructured unit tests to avoid sleep-wait-loops.
Bumping the inline namespace version to v2 to avoid ODR violations. The
pre_exit
code remains atv1
(it must be bumped more carefully). The portable default executor is moving tov2
- which may lead to more than one thread pool for the portable instance. Pinning the version here is more difficult. Removed deadreset()
operations in futureshared_base
Documented (and assert) precondition thatfuture::exception()
is only invoked on a ready exception. Made more of the tuple meta-facilities public to avoiddetail:: namespace
usage in unit tests. Restructured unit tests to avoid sleep-wait-loops.