diff options
Diffstat (limited to 'lib/libF77/pow_ri.c')
-rw-r--r-- | lib/libF77/pow_ri.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/libF77/pow_ri.c b/lib/libF77/pow_ri.c index 3a3c4cf..6e5816b 100644 --- a/lib/libF77/pow_ri.c +++ b/lib/libF77/pow_ri.c @@ -8,6 +8,7 @@ double pow_ri(real *ap, integer *bp) { double pow, x; integer n; +unsigned long u; pow = 1; x = *ap; @@ -20,11 +21,11 @@ if(n != 0) n = -n; x = 1/x; } - for( ; ; ) + for(u = n; ; ) { - if(n & 01) + if(u & 01) pow *= x; - if(n >>= 1) + if(u >>= 1) x *= x; else break; |