From ca6361d9a70f1336c65956f049167135c2a417a8 Mon Sep 17 00:00:00 2001 From: Brian Norris Date: Tue, 18 Sep 2012 18:37:22 -0700 Subject: [PATCH] action: THREAD_JOIN can synchronize against execution order synchronize_with() had an assertion to ensure that synchronization never occurred opposite the execution trace ordering. But THREAD_JOIN is a special case, where this ordering won't break the rest of the model-checker. --- action.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/action.cc b/action.cc index 1e28264..2021f0a 100644 --- a/action.cc +++ b/action.cc @@ -186,7 +186,7 @@ void ModelAction::read_from(const ModelAction *act) * @param act The ModelAction to synchronize with */ void ModelAction::synchronize_with(const ModelAction *act) { - ASSERT(*act < *this); + ASSERT(*act < *this || type == THREAD_JOIN); model->check_promises(cv, act->cv); cv->merge(act->cv); } -- 2.34.1