trunk preprocessor:
* change the way we check for success of strtod() in NumericalConstants::AddConstant, because of Windows compatibility problem * reverted r2660 changeset git-svn-id: https://www.dynare.org/svn/dynare/trunk@2661 ac1d8469-bf42-47a9-8791-bf33cf982152time-shift
parent
6258410a83
commit
f06a89697d
|
@ -1,6 +1,6 @@
|
|||
CXX = @CXX@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CPPFLAGS = -DNDEBUG @CPPFLAGS@ @DEFS@
|
||||
CPPFLAGS = @CPPFLAGS@ @DEFS@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
|
||||
FLEX = @FLEX@
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
|
||||
#include <cstdlib>
|
||||
#include <cassert>
|
||||
#include <cerrno>
|
||||
#include <cmath>
|
||||
#include <iostream>
|
||||
|
||||
|
@ -36,9 +37,9 @@ NumericalConstants::AddConstant(const string &iConst)
|
|||
mNumericalConstants.push_back(iConst);
|
||||
numConstantsIndex[iConst] = id;
|
||||
|
||||
char *endptr;
|
||||
double val = strtod(iConst.c_str(), &endptr);
|
||||
assert(endptr != iConst.c_str()); // Check that the conversion succeeded
|
||||
errno = 0;
|
||||
double val = strtod(iConst.c_str(), NULL);
|
||||
assert(errno == 0); // Check that the conversion succeeded
|
||||
assert(val >= 0 || isnan(val)); // Check we have a positive constant or a NaN
|
||||
double_vals.push_back(val);
|
||||
|
||||
|
|
Loading…
Reference in New Issue