really fix stable norm compilation for older gcc

This commit is contained in:
Gael Guennebaud 2009-10-07 14:25:12 +02:00
parent 075830ddb0
commit af31345df3
2 changed files with 5 additions and 6 deletions

View File

@ -109,14 +109,14 @@ MatrixBase<Derived>::blueNorm() const
rbig = std::numeric_limits<RealScalar>::max(); // largest floating-point number
iexp = -((1-iemin)/2);
b1 = RealScalar(std::pow<RealScalar>(ibeta,iexp)); // lower boundary of midrange
b1 = RealScalar(std::pow(RealScalar(ibeta),RealScalar(iexp))); // lower boundary of midrange
iexp = (iemax + 1 - it)/2;
b2 = RealScalar(std::pow<RealScalar>(ibeta,iexp)); // upper boundary of midrange
b2 = RealScalar(std::pow(RealScalar(ibeta),RealScalar(iexp))); // upper boundary of midrange
iexp = (2-iemin)/2;
s1m = RealScalar(std::pow<RealScalar>(ibeta,iexp)); // scaling factor for lower range
s1m = RealScalar(std::pow(RealScalar(ibeta),RealScalar(iexp))); // scaling factor for lower range
iexp = - ((iemax+it)/2);
s2m = RealScalar(std::pow<RealScalar>(ibeta,iexp)); // scaling factor for upper range
s2m = RealScalar(std::pow(RealScalar(ibeta),RealScalar(iexp))); // scaling factor for upper range
overfl = rbig*s2m; // overfow boundary for abig
eps = RealScalar(std::pow(double(ibeta), 1-it));

View File

@ -35,8 +35,7 @@ template<typename MatrixType> void stable_norm(const MatrixType& m)
// Check the basic machine-dependent constants.
{
int nbig, ibeta, it, iemin, iemax, iexp;
RealScalar abig, eps;
int ibeta, it, iemin, iemax;
ibeta = std::numeric_limits<RealScalar>::radix; // base for floating-point numbers
it = std::numeric_limits<RealScalar>::digits; // number of base-beta digits in mantissa