Eager update predicate trees rather than lazy update; under construction
[c11tester.git] / classlist.h
index 65ac08df62da8bb64cdab4955bcdc8f5172de7d1..bebbf39fa0cd7e1770e2033377fa55f500f63be3 100644 (file)
@@ -3,6 +3,7 @@
 #include <inttypes.h>
 #include "stl-model.h"
 #include "hashset.h"
+#include "modeltypes.h"
 
 class ClockVector;
 class CycleGraph;
@@ -19,9 +20,12 @@ class NewFuzzer;
 class FuncNode;
 class FuncInst;
 class Predicate;
+class ConcretePredicate;
+class WaitObj;
 
 struct model_snapshot_members;
 struct bug_message;
+
 typedef SnapList<ModelAction *> action_list_t;
 typedef SnapList<uint32_t> func_id_list_t;
 typedef SnapList<FuncInst *> func_inst_list_t;
@@ -34,6 +38,8 @@ typedef HashSet<uint64_t, uint64_t, 0, snapshot_malloc, snapshot_calloc, snapsho
 typedef HSIterator<uint64_t, uint64_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> value_set_iter;
 typedef HashSet<void *, uintptr_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> loc_set_t;
 typedef HSIterator<void *, uintptr_t, 0, snapshot_malloc, snapshot_calloc, snapshot_free> loc_set_iter;
+typedef HashSet<thread_id_t, int, 0> thrd_id_set_t;
+typedef HSIterator<thread_id_t, int, 0> thrd_id_set_iter;
 
 extern volatile int modellock;
 #endif