execution(new ModelExecution(¶ms, scheduler, node_stack)),
diverge(NULL),
earliest_diverge(NULL),
- trace_analyses(new ModelVector<TraceAnalysis *>())
+ trace_analyses()
{
}
ModelChecker::~ModelChecker()
{
delete node_stack;
- for (unsigned int i = 0; i < trace_analyses->size(); i++)
- delete (*trace_analyses)[i];
- delete trace_analyses;
+ for (unsigned int i = 0; i < trace_analyses.size(); i++)
+ delete trace_analyses[i];
delete scheduler;
}
/** @brief Run trace analyses on complete trace */
void ModelChecker::run_trace_analyses() {
- for (unsigned int i = 0; i < trace_analyses->size(); i++)
- (*trace_analyses)[i]->analyze(execution->get_action_trace());
+ for (unsigned int i = 0; i < trace_analyses.size(); i++)
+ trace_analyses[i]->analyze(execution->get_action_trace());
}
/**
{
do {
thrd_t user_thread;
- Thread *t = new Thread(&user_thread, &user_main_wrapper, NULL, NULL);
+ Thread *t = new Thread(execution->get_next_id(), &user_thread, &user_main_wrapper, NULL, NULL);
execution->add_thread(t);
do {