X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=model.cc;h=90ef906ef6348ed9cdfc6717c1eaab1fb3d9e886;hb=39cf60160fae4c59519004440bd49aba714c1edf;hp=0d79a39c623158858a8cc5efa29b16322191150e;hpb=e7e175a74d95b5ed0a50750453168275f2fa3589;p=model-checker.git diff --git a/model.cc b/model.cc index 0d79a39..90ef906 100644 --- a/model.cc +++ b/model.cc @@ -24,7 +24,7 @@ ModelChecker::ModelChecker(struct model_params params) : params(params), scheduler(new Scheduler()), node_stack(new NodeStack()), - execution(new ModelExecution(this, ¶ms, scheduler, node_stack)), + execution(new ModelExecution(this, &this->params, scheduler, node_stack)), execution_number(1), diverge(NULL), earliest_diverge(NULL), @@ -36,8 +36,6 @@ ModelChecker::ModelChecker(struct model_params params) : ModelChecker::~ModelChecker() { delete node_stack; - for (unsigned int i = 0; i < trace_analyses.size(); i++) - delete trace_analyses[i]; delete scheduler; } @@ -485,4 +483,8 @@ void ModelChecker::run() model_print("******* Model-checking complete: *******\n"); print_stats(); + + /* Have the trace analyses dump their output. */ + for (unsigned int i = 0; i < trace_analyses.size(); i++) + trace_analyses[i]->finish(); }