Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

`result<void, int>.value()` compiles without tripping fail_to_compile_observers #182

Closed
ned14 opened this issue Apr 8, 2019 · 1 comment

Comments

@ned14
Copy link
Owner

commented Apr 8, 2019

Thanks to Ben Craig for discovering this one.

Repro:

#include <outcome.hpp>

namespace outcome = OUTCOME_V2_NAMESPACE;

outcome::result<void, int> foo(outcome::result<void, int> r)
{
    // This trait is wrong, which causes the bug
    static_assert(!outcome::trait::is_exception_ptr_available<int>::value);
    r.value();
    return outcome::success();
}

@ned14 ned14 added the bug label Apr 8, 2019

@ned14 ned14 added this to the Boost 1.71 cutoff milestone Jun 17, 2019

ned14 added a commit that referenced this issue Jun 17, 2019
Fix issue #182 where `trait::is_exception_ptr_available<T>` was alway…
…s true,

thus causing much weirdness, like not printing diagnostics and trying to feed
everything to `make_exception_ptr()`.
@ned14

This comment has been minimized.

Copy link
Owner Author

commented Jun 17, 2019

Fixed

@ned14 ned14 closed this Jun 17, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
1 participant
You can’t perform that action at this time.