module intmath implicit none interface ilog2 ! log(x)/log(2) module procedure ilog2_8 module procedure ilog2_4 module procedure ilog2_2 module procedure ilog2_1 end interface ilog2 interface i1log2 ! log(x+1)/log(2) unless x=maxint, in which case log(x)/log(2) module procedure i1log2_8 module procedure i1log2_4 module procedure i1log2_2 module procedure i1log2_1 end interface i1log2 contains ! ---------------------------------------------------------------- function i1log2_8(ival) implicit none integer(kind=8), value :: ival integer(kind=8)::i1log2_8 integer(kind=8), parameter :: one=1 if(ival+one',I0,' (',I0,' = ',F0.10,')') c$$$ 20 format(Z16,' -- OKAY: ',I0,'=>',I0,' (',I0,' = ',F0.10,')') c$$$ if(ival+one