changeset 24854:32671b14ed7b

use INTEGER*4 in ranlib functions (bug #51961) Until now we have relied on proper compiler flag settings to compile these files so that Fortran integer variables are 32-bits wide. Instead, we now use the non-standard but almost universally available INTEGER*4 declaration. * advnst.f, genmn.f, genmul.f, genprm.f, getcgn.f, getsd.f, ignbin.f, ignlgi.f, ignnbn.f, ignpoi.f, ignuin.f, initgn.f, inrgcm.f, lennob.f, mltmod.f, phrtsd.f, ranf.f, setall.f, setant.f, setgmn.f, setsd.f, sexpo.f, snorm.f: Declare all integer variables as INTEGER*4. This makes the parameters match prototypes in lo-ranlib-proto.h and ensures that the generators work as intended (no conversions between 8-bit and 4-bit integer values, for example). * wrap.f: Provide types for external functions.
author John W. Eaton <jwe@octave.org>
date Fri, 09 Mar 2018 11:42:57 -0500
parents 1e207bd05b5d
children 41f80b9af274
files liboctave/external/ranlib/advnst.f liboctave/external/ranlib/genmn.f liboctave/external/ranlib/genmul.f liboctave/external/ranlib/genprm.f liboctave/external/ranlib/getcgn.f liboctave/external/ranlib/getsd.f liboctave/external/ranlib/ignbin.f liboctave/external/ranlib/ignlgi.f liboctave/external/ranlib/ignnbn.f liboctave/external/ranlib/ignpoi.f liboctave/external/ranlib/ignuin.f liboctave/external/ranlib/initgn.f liboctave/external/ranlib/inrgcm.f liboctave/external/ranlib/lennob.f liboctave/external/ranlib/mltmod.f liboctave/external/ranlib/phrtsd.f liboctave/external/ranlib/ranf.f liboctave/external/ranlib/setall.f liboctave/external/ranlib/setant.f liboctave/external/ranlib/setgmn.f liboctave/external/ranlib/setsd.f liboctave/external/ranlib/sexpo.f liboctave/external/ranlib/snorm.f liboctave/external/ranlib/wrap.f
diffstat 24 files changed, 100 insertions(+), 90 deletions(-) [+]
line wrap: on
line diff
--- a/liboctave/external/ranlib/advnst.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/advnst.f	Fri Mar 09 11:42:57 2018 -0500
@@ -23,25 +23,25 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER k
+      INTEGER*4 k
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER g,i,ib1,ib2
+      INTEGER*4 g,i,ib1,ib2
 C     ..
 C     .. External Functions ..
-      INTEGER mltmod
+      INTEGER*4 mltmod
       LOGICAL qrgnin
       EXTERNAL mltmod,qrgnin
 C     ..
--- a/liboctave/external/ranlib/genmn.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/genmn.f	Fri Mar 09 11:42:57 2018 -0500
@@ -39,7 +39,7 @@
 C     ..
 C     .. Local Scalars ..
       REAL ae
-      INTEGER i,icount,j,p
+      INTEGER*4 i,icount,j,p
 C     ..
 C     .. External Functions ..
       REAL snorm
--- a/liboctave/external/ranlib/genmul.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/genmul.f	Fri Mar 09 11:42:57 2018 -0500
@@ -39,18 +39,18 @@
 C
 C**********************************************************************
 C     .. Scalar Arguments ..
-      INTEGER n,ncat
+      INTEGER*4 n,ncat
 C     ..
 C     .. Array Arguments ..
       REAL p(*)
-      INTEGER ix(*)
+      INTEGER*4 ix(*)
 C     ..
 C     .. Local Scalars ..
       REAL prob,ptot,sum
-      INTEGER i,icat,ntot
+      INTEGER*4 i,icat,ntot
 C     ..
 C     .. External Functions ..
-      INTEGER ignbin
+      INTEGER*4 ignbin
       EXTERNAL ignbin
 C     ..
 C     .. Intrinsic Functions ..
--- a/liboctave/external/ranlib/genprm.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/genprm.f	Fri Mar 09 11:42:57 2018 -0500
@@ -17,16 +17,16 @@
 C
 C**********************************************************************
 C     .. Scalar Arguments ..
-      INTEGER larray
+      INTEGER*4 larray
 C     ..
 C     .. Array Arguments ..
-      INTEGER iarray(larray)
+      INTEGER*4 iarray(larray)
 C     ..
 C     .. Local Scalars ..
-      INTEGER i,itmp,iwhich
+      INTEGER*4 i,itmp,iwhich
 C     ..
 C     .. External Functions ..
-      INTEGER ignuin
+      INTEGER*4 ignuin
       EXTERNAL ignuin
 C     ..
 C     .. Executable Statements ..
--- a/liboctave/external/ranlib/getcgn.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/getcgn.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,5 +1,5 @@
       SUBROUTINE getcgn(g)
-      INTEGER g
+      INTEGER*4 g
 C**********************************************************************
 C
 C      SUBROUTINE GETCGN(G)
@@ -16,7 +16,7 @@
 C
 C**********************************************************************
 C
-      INTEGER curntg,numg
+      INTEGER*4 curntg,numg
       SAVE curntg
       PARAMETER (numg=32)
       DATA curntg/1/
--- a/liboctave/external/ranlib/getsd.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/getsd.f	Fri Mar 09 11:42:57 2018 -0500
@@ -26,22 +26,22 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER iseed1,iseed2
+      INTEGER*4 iseed1,iseed2
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER g
+      INTEGER*4 g
 C     ..
 C     .. External Functions ..
       LOGICAL qrgnin
--- a/liboctave/external/ranlib/ignbin.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/ignbin.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,7 +1,7 @@
-      INTEGER FUNCTION ignbin(n,pp)
+      INTEGER*4 FUNCTION ignbin(n,pp)
 C**********************************************************************
 C
-C     INTEGER FUNCTION IGNBIN( N, PP )
+C     INTEGER*4 FUNCTION IGNBIN( N, PP )
 C
 C                    GENerate BINomial random deviate
 C
@@ -151,12 +151,12 @@
 C     ..
 C     .. Scalar Arguments ..
       REAL pp
-      INTEGER n
+      INTEGER*4 n
 C     ..
 C     .. Local Scalars ..
       REAL al,alv,amaxp,c,f,f1,f2,ffm,fm,g,p,p1,p2,p3,p4,psave,q,qn,r,u,
      +     v,w,w2,x,x1,x2,xl,xll,xlr,xm,xnp,xnpq,xr,ynorm,z,z2
-      INTEGER i,ix,ix1,k,m,mp,nsave
+      INTEGER*4 i,ix,ix1,k,m,mp,nsave
 C     ..
 C     .. External Functions ..
       REAL ranf
--- a/liboctave/external/ranlib/ignlgi.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/ignlgi.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,7 +1,7 @@
-      INTEGER FUNCTION ignlgi()
+      INTEGER*4 FUNCTION ignlgi()
 C**********************************************************************
 C
-C     INTEGER FUNCTION IGNLGI()
+C     INTEGER*4 FUNCTION IGNLGI()
 C               GeNerate LarGe Integer
 C
 C     Returns a random integer following a uniform distribution over
@@ -16,19 +16,19 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER curntg,k,s1,s2,z
+      INTEGER*4 curntg,k,s1,s2,z
       LOGICAL qqssd
 C     ..
 C     .. External Functions ..
--- a/liboctave/external/ranlib/ignnbn.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/ignnbn.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,7 +1,7 @@
-      INTEGER FUNCTION ignnbn(n,p)
+      INTEGER*4 FUNCTION ignnbn(n,p)
 C**********************************************************************
 C
-C     INTEGER FUNCTION IGNNBN( N, P )
+C     INTEGER*4 FUNCTION IGNNBN( N, P )
 C
 C                GENerate Negative BiNomial random deviate
 C
@@ -40,7 +40,7 @@
 C     ..
 C     .. Scalar Arguments ..
       REAL p
-      INTEGER n
+      INTEGER*4 n
 C     ..
 C     .. Local Scalars ..
       REAL y,a,r
@@ -49,7 +49,7 @@
 C     JJV changed to call SGAMMA directly
 C     REAL gengam
       REAL sgamma
-      INTEGER ignpoi
+      INTEGER*4 ignpoi
 C      EXTERNAL gengam,ignpoi
       EXTERNAL sgamma,ignpoi
 C     ..
--- a/liboctave/external/ranlib/ignpoi.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/ignpoi.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,7 +1,7 @@
-      INTEGER FUNCTION ignpoi(mu)
+      INTEGER*4 FUNCTION ignpoi(mu)
 C**********************************************************************
 C
-C     INTEGER FUNCTION IGNPOI( MU )
+C     INTEGER*4 FUNCTION IGNPOI( MU )
 C
 C                    GENerate POIsson random deviate
 C
@@ -61,7 +61,7 @@
 C                                                                      C
 C**********************************************************************C
 C
-C      INTEGER FUNCTION IGNPOI(IR,MU)
+C      INTEGER*4 FUNCTION IGNPOI(IR,MU)
 C
 C     INPUT:  IR=CURRENT STATE OF BASIC RANDOM NUMBER GENERATOR
 C             MU=MEAN MU OF THE POISSON DISTRIBUTION
@@ -84,7 +84,7 @@
       REAL a0,a1,a2,a3,a4,a5,a6,a7,b1,b2,c,c0,c1,c2,c3,d,del,difmuk,e,
      +     fk,fx,fy,g,muold,muprev,omega,p,p0,px,py,q,s,t,u,v,x,xx
 C     JJV I added a variable 'll' here - it is the 'l' for CASE A
-      INTEGER j,k,kflag,l,ll,m
+      INTEGER*4 j,k,kflag,l,ll,m
 C     ..
 C     .. Local Arrays ..
       REAL fact(10),pp(35)
--- a/liboctave/external/ranlib/ignuin.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/ignuin.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,7 +1,7 @@
-      INTEGER FUNCTION ignuin(low,high)
+      INTEGER*4 FUNCTION ignuin(low,high)
 C**********************************************************************
 C
-C     INTEGER FUNCTION IGNUIN( LOW, HIGH )
+C     INTEGER*4 FUNCTION IGNUIN( LOW, HIGH )
 C
 C               GeNerate Uniform INteger
 C
@@ -33,20 +33,20 @@
 C     IGNLGI generates integers between 1 and 2147483562
 C     MAXNUM is 1 less than maximum generable value
 C     .. Parameters ..
-      INTEGER maxnum
+      INTEGER*4 maxnum
       PARAMETER (maxnum=2147483561)
       CHARACTER*(*) err1,err2
       PARAMETER (err1='LOW > HIGH in IGNUIN',
      +          err2=' ( HIGH - LOW ) > 2,147,483,561 in IGNUIN')
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER high,low
+      INTEGER*4 high,low
 C     ..
 C     .. Local Scalars ..
-      INTEGER err,ign,maxnow,range,ranp1
+      INTEGER*4 err,ign,maxnow,range,ranp1
 C     ..
 C     .. External Functions ..
-      INTEGER ignlgi
+      INTEGER*4 ignlgi
       EXTERNAL ignlgi
 C     ..
 C     .. Intrinsic Functions ..
--- a/liboctave/external/ranlib/initgn.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/initgn.f	Fri Mar 09 11:42:57 2018 -0500
@@ -29,26 +29,26 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER isdtyp
+      INTEGER*4 isdtyp
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER g
+      INTEGER*4 g
 C     ..
 C     .. External Functions ..
       LOGICAL qrgnin
-      INTEGER mltmod
+      INTEGER*4 mltmod
       EXTERNAL qrgnin,mltmod
 C     ..
 C     .. External Subroutines ..
--- a/liboctave/external/ranlib/inrgcm.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/inrgcm.f	Fri Mar 09 11:42:57 2018 -0500
@@ -14,19 +14,19 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER i
+      INTEGER*4 i
       LOGICAL qdum
 C     ..
 C     .. External Functions ..
--- a/liboctave/external/ranlib/lennob.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/lennob.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,8 +1,8 @@
-      INTEGER FUNCTION lennob(string)
-      IMPLICIT INTEGER (a-p,r-z),LOGICAL (q)
+      INTEGER*4 FUNCTION lennob(string)
+      IMPLICIT INTEGER*4 (a-p,r-z),LOGICAL (q)
 C**********************************************************************
 C
-C     INTEGER FUNCTION LENNOB( STRING )
+C     INTEGER*4 FUNCTION LENNOB( STRING )
 C                LENgth NOt counting trailing Blanks
 C
 C
--- a/liboctave/external/ranlib/mltmod.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/mltmod.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,7 +1,7 @@
-      INTEGER FUNCTION mltmod(a,s,m)
+      INTEGER*4 FUNCTION mltmod(a,s,m)
 C**********************************************************************
 C
-C     INTEGER FUNCTION MLTMOD(A,S,M)
+C     INTEGER*4 FUNCTION MLTMOD(A,S,M)
 C
 C                    Returns (A*S) MOD M
 C
@@ -21,14 +21,14 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER h
+      INTEGER*4 h
       PARAMETER (h=32768)
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER a,m,s
+      INTEGER*4 a,m,s
 C     ..
 C     .. Local Scalars ..
-      INTEGER a0,a1,k,p,q,qh,rh
+      INTEGER*4 a0,a1,k,p,q,qh,rh
 C     ..
 C     .. Executable Statements ..
 C
--- a/liboctave/external/ranlib/phrtsd.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/phrtsd.f	Fri Mar 09 11:42:57 2018 -0500
@@ -39,23 +39,23 @@
       PARAMETER (table='abcdefghijklmnopqrstuvwxyz'//
      +          'ABCDEFGHIJKLMNOPQRSTUVWXYZ'//'0123456789'//
      +          '!@#$%^&*()_+[];:''"<>?,./')
-      INTEGER twop30
+      INTEGER*4 twop30
       PARAMETER (twop30=1073741824)
-      INTEGER sixty4
+      INTEGER*4 sixty4
       PARAMETER (sixty4=64)
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER seed1,seed2
+      INTEGER*4 seed1,seed2
       CHARACTER phrase* (*)
 C     ..
 C     .. Local Scalars ..
-      INTEGER i,ichr,j,lphr,idxval
+      INTEGER*4 i,ichr,j,lphr,idxval
 C     ..
 C     .. Local Arrays ..
-      INTEGER shift(0:4),values(5)
+      INTEGER*4 shift(0:4),values(5)
 C     ..
 C     .. External Functions ..
-      INTEGER lennob
+      INTEGER*4 lennob
       EXTERNAL lennob
 C     ..
 C     .. Intrinsic Functions ..
--- a/liboctave/external/ranlib/ranf.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/ranf.f	Fri Mar 09 11:42:57 2018 -0500
@@ -17,7 +17,7 @@
 C
 C**********************************************************************
 C     .. External Functions ..
-      INTEGER ignlgi
+      INTEGER*4 ignlgi
       EXTERNAL ignlgi
 C     ..
 C     .. Executable Statements ..
--- a/liboctave/external/ranlib/setall.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/setall.f	Fri Mar 09 11:42:57 2018 -0500
@@ -27,27 +27,27 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER iseed1,iseed2
+      INTEGER*4 iseed1,iseed2
       LOGICAL qssd
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER g,ocgn
+      INTEGER*4 g,ocgn
       LOGICAL qqssd
 C     ..
 C     .. External Functions ..
-      INTEGER mltmod
+      INTEGER*4 mltmod
       LOGICAL qrgnin
       EXTERNAL mltmod,qrgnin
 C     ..
--- a/liboctave/external/ranlib/setant.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/setant.f	Fri Mar 09 11:42:57 2018 -0500
@@ -29,22 +29,22 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalar Arguments ..
       LOGICAL qvalue
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER g
+      INTEGER*4 g
 C     ..
 C     .. External Functions ..
       LOGICAL qrgnin
--- a/liboctave/external/ranlib/setgmn.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/setgmn.f	Fri Mar 09 11:42:57 2018 -0500
@@ -48,14 +48,14 @@
 C**********************************************************************
 C     .. Scalar Arguments ..
 C      INTEGER p
-      INTEGER p, ldcovm
+      INTEGER*4 p, ldcovm
 C     ..
 C     .. Array Arguments ..
 C      REAL covm(p,p),meanv(p),parm(p* (p+3)/2+1)
       REAL covm(ldcovm,p),meanv(p),parm(p* (p+3)/2+1)
 C     ..
 C     .. Local Scalars ..
-      INTEGER i,icount,info,j
+      INTEGER*4 i,icount,info,j
 C     ..
 C     .. External Subroutines ..
       EXTERNAL spotrf
--- a/liboctave/external/ranlib/setsd.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/setsd.f	Fri Mar 09 11:42:57 2018 -0500
@@ -26,22 +26,22 @@
 C
 C**********************************************************************
 C     .. Parameters ..
-      INTEGER numg
+      INTEGER*4 numg
       PARAMETER (numg=32)
 C     ..
 C     .. Scalar Arguments ..
-      INTEGER iseed1,iseed2
+      INTEGER*4 iseed1,iseed2
 C     ..
 C     .. Scalars in Common ..
-      INTEGER a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
+      INTEGER*4 a1,a1vw,a1w,a2,a2vw,a2w,m1,m2
 C     ..
 C     .. Arrays in Common ..
-      INTEGER cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
+      INTEGER*4 cg1(numg),cg2(numg),ig1(numg),ig2(numg),lg1(numg),
      +        lg2(numg)
       LOGICAL qanti(numg)
 C     ..
 C     .. Local Scalars ..
-      INTEGER g
+      INTEGER*4 g
 C     ..
 C     .. External Functions ..
       LOGICAL qrgnin
--- a/liboctave/external/ranlib/sexpo.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/sexpo.f	Fri Mar 09 11:42:57 2018 -0500
@@ -30,7 +30,7 @@
 C     JJV added a Save statement for q (in Data statement)
 C     .. Local Scalars ..
       REAL a,q1,u,umin,ustar
-      INTEGER i
+      INTEGER*4 i
 C     ..
 C     .. Local Arrays ..
       REAL q(8)
--- a/liboctave/external/ranlib/snorm.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/snorm.f	Fri Mar 09 11:42:57 2018 -0500
@@ -29,7 +29,7 @@
 C
 C     .. Local Scalars ..
       REAL aa,s,tt,u,ustar,w,y
-      INTEGER i
+      INTEGER*4 i
 C     ..
 C     .. Local Arrays ..
       REAL a(32),d(31),h(31),t(31)
--- a/liboctave/external/ranlib/wrap.f	Fri Mar 09 09:22:18 2018 -0500
+++ b/liboctave/external/ranlib/wrap.f	Fri Mar 09 11:42:57 2018 -0500
@@ -1,25 +1,35 @@
       subroutine dgennor (av, sd, result)
       double precision av, sd, result
+      real gennor
+      external gennor
       result = gennor (real (av), real (sd))
       return
       end
       subroutine dgenunf (low, high, result)
       double precision low, high, result
+      real genunf
+      external genunf
       result = genunf (real (low), real (high))
       return
       end
       subroutine dgenexp (av, result)
       double precision av, result
+      real genexp
+      external genexp
       result = genexp (real (av))
       return
       end
       subroutine dgengam (a, r, result)
       double precision a, r, result
+      real gengam
+      external gengam
       result = gengam (real (a), real (r))
       return
       end
       subroutine dignpoi (mu, result)
       double precision mu, result
+      integer*4 ignpoi
+      external ignpoi
       result = ignpoi (real (mu))
       return
       end