Browse Source

Return NaN for DD_FindMin / DD_FindMax on CUDD out of memory

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@10486 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Joachim Klein 11 years ago
parent
commit
f559e0adb8
  1. 5
      prism/src/dd/dd_term.cc

5
prism/src/dd/dd_term.cc

@ -31,6 +31,7 @@
#include "dd_term.h" #include "dd_term.h"
#include "dd_export.h" #include "dd_export.h"
#include "dd_cudd.h" #include "dd_cudd.h"
#include <limits> // for NaN value
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
@ -228,7 +229,7 @@ DdNode *dd
DdNode *v = Cudd_addFindMin(ddman, dd); DdNode *v = Cudd_addFindMin(ddman, dd);
if (v == NULL) { if (v == NULL) {
DD_SetErrorFlag(); DD_SetErrorFlag();
return 0.0;
return std::numeric_limits<double>::quiet_NaN();
} }
return Cudd_V(v); return Cudd_V(v);
} }
@ -244,7 +245,7 @@ DdNode *dd
DdNode *v = Cudd_addFindMax(ddman, dd); DdNode *v = Cudd_addFindMax(ddman, dd);
if (v == NULL) { if (v == NULL) {
DD_SetErrorFlag(); DD_SetErrorFlag();
return 0.0;
return std::numeric_limits<double>::quiet_NaN();
} }
return Cudd_V(v); return Cudd_V(v);
} }

Loading…
Cancel
Save