#include "common.h"
#include "threads.h"
+#include "datarace.h"
+
/* global "model" object */
#include "model.h"
#include "snapshot-interface.h"
-/** The thread_system_next function takes the next step in the
- * execution. @return Returns the 1 if there is another step and 0
- * otherwise.
+/**
+ * The thread_system_next function takes the next step in the execution.
+ * @return Returns the 1 if there is another step and 0 otherwise.
*/
-
static int thread_system_next(void) {
Thread *curr, *next;
/** The thread_wait_finish method runs the current execution until we
* have no more steps to take.
*/
-
static void thread_wait_finish(void) {
DBG();
/** The real_main function contains the main model checking loop. */
-
-void real_main() {
+static void real_main() {
thrd_t user_thread;
ucontext_t main_context;
+ //Initialize race detector
+ initRaceDetector();
+
//Create the singleton SnapshotStack object
snapshotObject = new SnapshotStack();