Commit e3d4b1ba authored by Nathan Bronson's avatar Nathan Bronson Committed by Facebook Github Bot

remove closure from assert

Summary:
Somebody reported compilation issues with the closure in post()'s
assert, resulting in "error: lambda-expression in unevaluated context".
While I haven't been able to reproduce the problem locally, it is easy
enough to work around in this case.

Reviewed By: djwatson, mcallahan

Differential Revision: D6759739

fbshipit-source-id: 9f8082a1e20cd9ddf626cb176542e4e861a7e702
parent 729928e7
......@@ -123,10 +123,9 @@ class Baton {
if (!MayBlock) {
/// Spin-only version
///
assert([&] {
auto state = state_.load(std::memory_order_relaxed);
return (state == INIT || state == EARLY_DELIVERY);
}());
assert(
((1 << state_.load(std::memory_order_relaxed)) &
((1 << INIT) | (1 << EARLY_DELIVERY))) != 0);
state_.store(EARLY_DELIVERY, std::memory_order_release);
return;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment