--- a/Complex/complex.pd
+++ b/Complex/complex.pd
@@ -198,15 +198,15 @@
 		$TFD(cgesvd_,zgesvd_)(
 		&trau,
 		&travt,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(s),
 		$P(U),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(VT),
-		&$PRIV(__s_size),
+		&(integer){$PRIV(__s_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -225,15 +225,15 @@
 		$TFD(cgesvd_,zgesvd_)(
 		&trau,
 		&travt,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(s),
 		$P(U),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(VT),
-		&$PRIV(__s_size),
+		&(integer){$PRIV(__s_size)},
 		work,
 		&lwork,
 		rwork,
@@ -326,15 +326,15 @@
 		lwork = -1;
 		$TFD(cgesdd_,zgesdd_)(
 		&tra,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(s),
 		$P(U),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(VT),
-		&$PRIV(__s_size),
+		&(integer){$PRIV(__s_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -353,15 +353,15 @@
              %}
 		$TFD(cgesdd_,zgesdd_)(
 		&tra,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(s),
 		$P(U),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(VT),
-		&$PRIV(__s_size),
+		&(integer){$PRIV(__s_size)},
 		work,
 		&lwork,
 		rwork,
@@ -439,23 +439,23 @@
 		&pjobu,
 		&pjobv,
 		&pjobq,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__p_size)},
 		$P(k),
 		$P(l),
 		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(alpha),
 		$P(beta),
 		$P(U),
-		&$PRIV(__q_size),
+		&(integer){$PRIV(__q_size)},
 		$P(V),
-		&$PRIV(__s_size),
+		&(integer){$PRIV(__s_size)},
 		$P(Q),
-		&$PRIV(__u_size),
+		&(integer){$PRIV(__u_size)},
 		work,
 		rwork,
 		$P(iwork),
@@ -502,14 +502,14 @@
 		$TFD(cgeev_,zgeev_)(
 		&jvl,
 		&jvr,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		$P(vl),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(vr),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -526,14 +526,14 @@
 		$TFD(cgeev_,zgeev_)(
 		&jvl,
 		&jvr,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		$P(vl),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(vr),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -609,14 +609,14 @@
 		&jvl,
 		&jvr,
 		&sens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		$P(vl),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(vr),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(scale),
@@ -643,14 +643,14 @@
 		&jvl,
 		&jvr,
 		&sens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		$P(vl),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(vr),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(scale),
@@ -705,17 +705,17 @@
 		$TFD(cggev_,zggev_)(
 		&pjobvl,
 		&pjobvr,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(alpha),
 		$P(beta),
 		$P(VL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -733,17 +733,17 @@
 		$TFD(cggev_,zggev_)(
 		&pjobvl,
 		&pjobvr,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(alpha),
 		$P(beta),
 		$P(VL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -825,17 +825,17 @@
 		&pjobvl,
 		&pjobvr,
 		&psens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(alpha),
 		$P(beta),
 		$P(VL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(lscale),
@@ -865,17 +865,17 @@
 		&pjobvl,
 		&pjobvr,
 		&psens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(alpha),
 		$P(beta),
 		$P(VL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(lscale),
@@ -912,9 +912,9 @@
    HV *bless_stash;
 
    pdl *pdl;
-   PDL_Long odims[1];
-
-   PDL_Long dims[] = {2,1};
+   PDL_Indx odims[1];
+
+   PDL_Indx dims[] = {2,1};
    pdl = PDL->pdlnew();
    PDL->setdims (pdl, dims, 2);
    pdl->datatype = PDL_F;
@@ -961,9 +961,9 @@
    HV *bless_stash;
 
    pdl *pdl;
-   PDL_Long odims[1];
-
-   PDL_Long dims[] = {2,1};
+   PDL_Indx odims[1];
+
+   PDL_Indx dims[] = {2,1};
    pdl = PDL->pdlnew();
    PDL->setdims (pdl, dims, 2);
    pdl->datatype = PDL_D;
@@ -1047,13 +1047,13 @@
 		&jvs,
 		&psort,
 		fselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(w),
 		$P(vs),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -1065,13 +1065,13 @@
 		&jvs,
 		&psort,
 		dselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(w),
 		$P(vs),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -1087,13 +1087,13 @@
 		&jvs,
 		&psort,
 		fselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(w),
 		$P(vs),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -1108,13 +1108,13 @@
 		&jvs,
 		&psort,
 		dselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(w),
 		$P(vs),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -1216,13 +1216,13 @@
 		&psort,
 		fselect_wrapper,
 		&sens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(w),
 		$P(vs),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(rconde),
 		$P(rcondv),
 		work,
@@ -1238,13 +1238,13 @@
 		&psort,
 		dselect_wrapper,
 		&sens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(w),
 		$P(vs),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(rconde),
 		$P(rcondv),
 		work,
@@ -1294,9 +1294,9 @@
    HV *bless_stash;
 
    pdl *pdl1, *pdl2;
-   PDL_Long odims[1];
-
-   PDL_Long dims[] = {2,1};
+   PDL_Indx odims[1];
+
+   PDL_Indx dims[] = {2,1};
    pdl1 = PDL->pdlnew();
    PDL->setdims (pdl1, dims, 2);
    pdl1->datatype = PDL_F;
@@ -1362,9 +1362,9 @@
    HV *bless_stash;
 
    pdl *pdl1, *pdl2;
-   PDL_Long odims[1];
-
-   PDL_Long dims[] = {2,1};
+   PDL_Indx odims[1];
+
+   PDL_Indx dims[] = {2,1};
    pdl1 = PDL->pdlnew();
    PDL->setdims (pdl1, dims, 2);
    pdl1->datatype = PDL_D;
@@ -1466,18 +1466,18 @@
 		&pjobvsr,
 		&psort,
 		fgselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(alpha),
 		$P(beta),
 		$P(VSL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VSR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -1491,18 +1491,18 @@
 		&pjobvsr,
 		&psort,
 		dgselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(alpha),
 		$P(beta),
 		$P(VSL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VSR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -1526,18 +1526,18 @@
 		&pjobvsr,
 		&psort,
 		fgselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(alpha),
 		$P(beta),
 		$P(VSL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VSR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -1551,18 +1551,18 @@
 		&pjobvsr,
 		&psort,
 		dgselect_wrapper,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(alpha),
 		$P(beta),
 		$P(VSL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VSR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -1675,14 +1675,14 @@
 		// for this feature.
 
 		minwrk = $SIZE(n)  << 1;
-		maxwrk = $SIZE(n)  + $SIZE(n) * ilaenv_(&c__1, "ZGEQRF", " ", &$PRIV(__n_size), &c__1,
-		&$PRIV(__n_size), &c__0, (ftnlen)6, (ftnlen)1);
+		maxwrk = $SIZE(n)  + $SIZE(n) * ilaenv_(&c__1, "ZGEQRF", " ", &(integer){$PRIV(__n_size)}, &c__1,
+		&(integer){$PRIV(__n_size)}, &c__0, (ftnlen)6, (ftnlen)1);
 
 		if ($jobvsl())
 		{
 			integer i__1 = maxwrk;
 			integer i__2 = $SIZE(n) + $SIZE(n) * ilaenv_(&c__1, "ZUNGQR"
-		    		, " ", &$PRIV(__n_size), &c__1, &$PRIV(__n_size), &c_n1, (ftnlen)6, (ftnlen)1);
+		    		, " ", &(integer){$PRIV(__n_size)}, &c__1, &(integer){$PRIV(__n_size)}, &c_n1, (ftnlen)6, (ftnlen)1);
 	    		maxwrk = max(i__1,i__2);
 			pjobvsl = \'V\';
 		}
@@ -1704,18 +1704,18 @@
 		&psort,
 		fgselect_wrapper,
 		&psens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(alpha),
 		$P(beta),
 		$P(VSL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VSR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(rconde),
 		$P(rcondv),
 		work,
@@ -1734,18 +1734,18 @@
 		&psort,
 		dgselect_wrapper,
 		&psens,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(sdim),
 		$P(alpha),
 		$P(beta),
 		$P(VSL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VSR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(rconde),
 		$P(rcondv),
 		work,
@@ -1821,9 +1821,9 @@
 		$TFD(cheev_,zheev_)(
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		&tmp_work[0],
 		&lwork,
@@ -1841,9 +1841,9 @@
 		$TFD(cheev_,zheev_)(
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		work,
 		&lwork,
@@ -1904,9 +1904,9 @@
 		$TFD(cheevd_,zheevd_)(
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		&tmp_work[0],
 		&lwork,
@@ -1934,9 +1934,9 @@
 		$TFD(cheevd_,zheevd_)(
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		work,
 		&lwork,
@@ -2012,9 +2012,9 @@
 		&jz,
 		&prange,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(vl),
 		$P(vu),
 		$P(il),
@@ -2023,7 +2023,7 @@
 		$P(m),
 		$P(w),
 		$P(z),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -2043,9 +2043,9 @@
 		&jz,
 		&prange,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(vl),
 		$P(vu),
 		$P(il),
@@ -2054,7 +2054,7 @@
 		$P(m),
 		$P(w),
 		$P(z),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -2123,9 +2123,9 @@
 		&jz,
 		&prange,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(vl),
 		$P(vu),
 		$P(il),
@@ -2134,7 +2134,7 @@
 		$P(m),
 		$P(w),
 		$P(z),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(isuppz),
 		&tmp_work[0],
 		&lwork,
@@ -2162,9 +2162,9 @@
 		&jz,
 		&prange,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(vl),
 		$P(vu),
 		$P(il),
@@ -2173,7 +2173,7 @@
 		$P(m),
 		$P(w),
 		$P(z),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(isuppz),
 		work,
 		&lwork,
@@ -2231,11 +2231,11 @@
 		$P(itype),
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		&tmp_work[0],
 		&lwork,
@@ -2254,11 +2254,11 @@
 		$P(itype),
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		work,
 		&lwork,
@@ -2316,11 +2316,11 @@
 		$P(itype),
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		&tmp_work[0],
 		&lwork,
@@ -2348,11 +2348,11 @@
 		$P(itype),
 		&jz,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		work,
 		&lwork,
@@ -2428,11 +2428,11 @@
 		&jz,
 		&prange,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(vl),
 		$P(vu),
 		$P(il),
@@ -2441,7 +2441,7 @@
 		$P(m),
 		$P(w),
 		$P(Z),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		rwork,
@@ -2464,11 +2464,11 @@
 		&jz,
 		&prange,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(vl),
 		$P(vu),
 		$P(il),
@@ -2477,7 +2477,7 @@
 		$P(m),
 		$P(w),
 		$P(Z),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		rwork,
@@ -2514,13 +2514,13 @@
              %}
 
 		$TFD(cgesv_,zgesv_)(
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ');
 pp_defc("gesvx",
@@ -2583,20 +2583,20 @@
 		$TFD(cgesvx_,zgesvx_)(
 		&pfact,
 		&ptrans,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(af),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		&pequed,
 		$P(r),
 		$P(c),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(X),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(rcond),
 		$P(ferr),
 		$P(berr),
@@ -2663,13 +2663,13 @@
 
 		$TFD(csysv_,zsysv_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
                 &tmp_work[0],
 		&lwork,
 		$P(info));
@@ -2687,13 +2687,13 @@
              %}
 		$TFD(csysv_,zsysv_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
                 work,
 		&lwork,
 		$P(info));
@@ -2748,17 +2748,17 @@
 		$TFD(csysvx_,zsysvx_)(
 		&pfact,
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(af),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(X),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(rcond),
 		$P(ferr),
 		$P(berr),
@@ -2779,17 +2779,17 @@
 		$TFD(csysvx_,zsysvx_)(
 		&pfact,
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(af),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(X),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(rcond),
 		$P(ferr),
 		$P(berr),
@@ -2834,13 +2834,13 @@
 
 		$TFD(chesv_,zhesv_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
                 &tmp_work[0],
 		&lwork,
 		$P(info));
@@ -2858,13 +2858,13 @@
              %}
 		$TFD(chesv_,zhesv_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
                 work,
 		&lwork,
 		$P(info));
@@ -2926,17 +2926,17 @@
 		$TFD(chesvx_,zhesvx_)(
 		&pfact,
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(af),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(X),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(rcond),
 		$P(ferr),
 		$P(berr),
@@ -2957,17 +2957,17 @@
 		$TFD(chesvx_,zhesvx_)(
 		&pfact,
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(af),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(X),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(rcond),
 		$P(ferr),
 		$P(berr),
@@ -3017,12 +3017,12 @@
 
 		$TFD(cposv_,zposv_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ',
 Doc=>'
@@ -3093,18 +3093,18 @@
 		$TFD(cposvx_,zposvx_)(
 		&pfact,
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(af),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		&pequed,
 		$P(s),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(X),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(rcond),
 		$P(ferr),
 		$P(berr),
@@ -3167,13 +3167,13 @@
 
 		$TFD(cgels_,zgels_)(
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&tmp_work[0],
 		&lwork,
 		$P(info));
@@ -3189,13 +3189,13 @@
 
 		$TFD(cgels_,zgels_)(
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		work,
 		&lwork,
 		$P(info));
@@ -3255,13 +3255,13 @@
 		%}
 
 		$TFD(cgelsy_,zgelsy_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(jpvt),
 		$P(rcond),
 		$P(rank),
@@ -3280,13 +3280,13 @@
              	%}
 
 		$TFD(cgelsy_,zgelsy_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(jpvt),
 		$P(rcond),
 		$P(rank),
@@ -3342,13 +3342,13 @@
              	%}
 
 		$TFD(cgelss_,zgelss_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(s),
 		$P(rcond),
 		$P(rank),
@@ -3367,13 +3367,13 @@
              	%}
 
 		$TFD(cgelss_,zgelss_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(s),
 		$P(rcond),
 		$P(rank),
@@ -3451,13 +3451,13 @@
 
 
 		$TFD(cgelsd_,zgelsd_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(s),
 		$P(rcond),
 		$P(rank),
@@ -3477,13 +3477,13 @@
              	%}
 
 		$TFD(cgelsd_,zgelsd_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__q_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__q_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(s),
 		$P(rcond),
 		$P(rank),
@@ -3529,13 +3529,13 @@
 
 
 		$TFD(cgglse_,zgglse_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__p_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__p_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(c),
 		$P(d),
 		$P(x),
@@ -3553,13 +3553,13 @@
              	%}
 
 		$TFD(cgglse_,zgglse_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__p_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__p_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(c),
 		$P(d),
 		$P(x),
@@ -3595,13 +3595,13 @@
 
 
 		$TFD(cggglm_,zggglm_)(
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		&$PRIV(__p_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__p_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(d),
 		$P(x),
 		$P(y),
@@ -3619,13 +3619,13 @@
              	%}
 
 		$TFD(cggglm_,zggglm_)(
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		&$PRIV(__p_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__p_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(d),
 		$P(x),
 		$P(y),
@@ -3660,10 +3660,10 @@
 		lda, integer *ipiv, integer *info);
              %}
 		$TFD(cgetrf_,zgetrf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(ipiv),
 		$P(info));
 ');
@@ -3685,10 +3685,10 @@
 		lda, integer *ipiv, integer *info);
              %}
 		$TFD(cgetf2_,zgetf2_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(ipiv),
 		$P(info));
 ');
@@ -3726,9 +3726,9 @@
 
 		$TFD(csytrf_,zsytrf_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		&tmp_work[0],
 		&lwork,
@@ -3744,9 +3744,9 @@
              	%}
 		$TFD(csytrf_,zsytrf_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		work,
 		&lwork,
@@ -3783,9 +3783,9 @@
 
 		$TFD(csytf2_,zsytf2_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(info));
 ');
@@ -3838,9 +3838,9 @@
              	%}
 		$TFD(chetrf_,zhetrf_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		work,
 		&lwork,
@@ -3883,9 +3883,9 @@
 
 		$TFD(chetf2_,zhetf2_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(info));
 ',
@@ -3920,9 +3920,9 @@
 
 		$TFD(cpotrf_,zpotrf_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ',
 Doc=>'
@@ -3962,9 +3962,9 @@
 
 		$TFD(cpotf2_,zpotf2_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ',
 Doc => '
@@ -4005,9 +4005,9 @@
 
 
 		$TFD(cgetri_,zgetri_)(
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		&tmp_work[0],
 		&lwork,
@@ -4022,9 +4022,9 @@
 			double *work = (double *)malloc(2*lwork *  sizeof(double));
 		%}
 		$TFD(cgetri_,zgetri_)(
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		work,
 		&lwork,
@@ -4062,9 +4062,9 @@
 
 		$TFD(csytri_, zsytri_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		work,
 		$P(info));
@@ -4096,9 +4096,9 @@
 
 		$TFD(chetri_, zhetri_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		work,
 		$P(info));
@@ -4132,9 +4132,9 @@
 
 		$TFD(cpotri_,zpotri_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ');
 
@@ -4163,9 +4163,9 @@
 		$TFD(ctrtri_, ztrtri_)(
 		&puplo,
 		&pdiag,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ');
 
@@ -4194,9 +4194,9 @@
 		$TFD(ctrti2_, ztrti2_)(
 		&puplo,
 		&pdiag,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ');
 
@@ -4223,13 +4223,13 @@
 
 		$TFD(cgetrs_,zgetrs_)(
 		&transp,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ',
 	Doc=>'
@@ -4267,13 +4267,13 @@
 
 		$TFD(csytrs_,zsytrs_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ');
 
@@ -4299,13 +4299,13 @@
 
 		$TFD(chetrs_,zhetrs_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ',
 Doc => '
@@ -4337,12 +4337,12 @@
 
 		$TFD(cpotrs_,zpotrs_)(
 		&puplo,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ',
 
@@ -4387,12 +4387,12 @@
 		&puplo,
 		&ptrans,
 		&pdiag,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(info));
 ', 
 	Doc=>'
@@ -4446,9 +4446,9 @@
 		&ptrans,
 		&pdiag,
 		&pnormin,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(x),
 		$P(scale),
 		$P(cnorm),
@@ -4505,9 +4505,9 @@
 
 		$TFD(sgecon_,dgecon_)(
 		&pnorm,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(anorm),
 		$P(rcond),
 		work,
@@ -4550,9 +4550,9 @@
 
 		$TFD(csycon_,zsycon_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(anorm),
 		$P(rcond),
@@ -4594,9 +4594,9 @@
 
 		$TFD(checon_,zhecon_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ipiv),
 		$P(anorm),
 		$P(rcond),
@@ -4642,9 +4642,9 @@
 
 		$TFD(cpocon_, zpocon_)(
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(anorm),
 		$P(rcond),
 		work,
@@ -4694,9 +4694,9 @@
 		&pnorm,
 		&puplo,
 		&pdiag,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(rcond),
 		work,
 		rwork,
@@ -4730,10 +4730,10 @@
              %}
 
 		$TFD(cgeqp3_,zgeqp3_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(jpvt),
 		$P(tau),
 		&tmp_work[0],
@@ -4750,10 +4750,10 @@
 				double *work = (double *)malloc(2 * lwork *  sizeof(double));
 			%}
 			$TFD(cgeqp3_,zgeqp3_)(
-			&$PRIV(__m_size),
-			&$PRIV(__n_size),
+			&(integer){$PRIV(__m_size)},
+			&(integer){$PRIV(__n_size)},
 			$P(A),
-			&$PRIV(__m_size),
+			&(integer){$PRIV(__m_size)},
 			$P(jpvt),
 			$P(tau),
 			work,
@@ -4788,10 +4788,10 @@
              %}
 
 		$TFD(cgeqrf_,zgeqrf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -4806,10 +4806,10 @@
 		double *work = (double *)malloc(2 * lwork *  sizeof(double));
              %}
 		$TFD(cgeqrf_,zgeqrf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -4840,11 +4840,11 @@
              %}
 
 		$TFD(cungqr_, zungqr_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -4859,11 +4859,11 @@
 			double *work = (double *)malloc(2 * lwork *  sizeof(double));
 		%}
 		$TFD(cungqr_,zungqr_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -4909,14 +4909,14 @@
 		$TFD(cunmqr_,zunmqr_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__p_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		&tmp_work[0],
 		&lwork,
 		$P(info));
@@ -4932,14 +4932,14 @@
 		$TFD(cunmqr_,zunmqr_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__p_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		work,
 		&lwork,
 		$P(info));
@@ -4974,10 +4974,10 @@
              %}
 
 		$TFD(cgelqf_,zgelqf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -4992,10 +4992,10 @@
 		double *work = (double *)malloc(2 * lwork *  sizeof(double));
              %}
 		$TFD(cgelqf_,zgelqf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5026,11 +5026,11 @@
              %}
 
 		$TFD(cunglq_,zunglq_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5045,11 +5045,11 @@
 		double *work = (double *)malloc(2 * lwork *  sizeof(double));
              %}
 		$TFD(cunglq_,zunglq_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5094,14 +5094,14 @@
 		$TFD(cunmlq_,zunmlq_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__k_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		&tmp_work[0],
 		&lwork,
 		$P(info));
@@ -5117,14 +5117,14 @@
 		$TFD(cunmlq_,zunmlq_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__k_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		work,
 		&lwork,
 		$P(info));
@@ -5160,10 +5160,10 @@
              %}
 
 		$TFD(cgeqlf_,zgeqlf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5178,10 +5178,10 @@
 			double *work = (double *)malloc(2 * lwork *  sizeof(double));
 		%}
 		$TFD(cgeqlf_,zgeqlf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5212,11 +5212,11 @@
              %}
 
 		$TFD(cungql_,zungql_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5231,11 +5231,11 @@
 		double *work = (double *)malloc(2 * lwork *  sizeof(double));
              %}
 		$TFD(cungql_,zungql_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5280,14 +5280,14 @@
 		$TFD(cunmql_,zunmql_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__p_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		&tmp_work[0],
 		&lwork,
 		$P(info));
@@ -5303,14 +5303,14 @@
 		$TFD(cunmql_,zunmql_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__p_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		work,
 		&lwork,
 		$P(info));
@@ -5345,10 +5345,10 @@
              %}
 
 		$TFD(cgerqf_,zgerqf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5363,10 +5363,10 @@
 		double *work = (double *)malloc(2 * lwork *  sizeof(double));
              %}
 		$TFD(cgerqf_,zgerqf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5397,11 +5397,11 @@
              %}
 
 		$TFD(cungrq_,zungrq_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5418,11 +5418,11 @@
 		double *work = (double *)malloc(2 * lwork *  sizeof(double));
              %}
 		$TFD(cungrq_,zungrq_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5467,14 +5467,14 @@
 		$TFD(cunmrq_,zunmrq_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__k_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		&tmp_work[0],
 		&lwork,
 		$P(info));
@@ -5492,14 +5492,14 @@
 		$TFD(cunmrq_,zunmrq_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
-		$P(A),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
+		$P(A),
+		&(integer){$PRIV(__k_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		work,
 		&lwork,
 		$P(info));
@@ -5534,10 +5534,10 @@
              %}
 
 		$TFD(ctzrzf_,ztzrzf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5552,10 +5552,10 @@
 			double *work = (double *)malloc(2 * lwork *  sizeof(double));
 		%}
 		$TFD(ctzrzf_,ztzrzf_)(
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5594,15 +5594,15 @@
 		$TFD(cunmrz_,zunmrz_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
 		&kk,
 		$P(A),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__k_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		&tmp_work[0],
 		&lwork,
 		$P(info));
@@ -5618,15 +5618,15 @@
 		$TFD(cunmrz_,zunmrz_)(
 		&pside,
 		&ptrans,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__k_size)},
 		&kk,
 		$P(A),
-		&$PRIV(__k_size),
+		&(integer){$PRIV(__k_size)},
 		$P(tau),
 		$P(C),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		work,
 		&lwork,
 		$P(info));
@@ -5666,11 +5666,11 @@
              %}
 
 		$TFD(cgehrd_,zgehrd_)(
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5687,11 +5687,11 @@
 		double *work = (double *)malloc(2*lwork *  sizeof(double));
              %}
 		$TFD(cgehrd_,zgehrd_)(
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5723,11 +5723,11 @@
              %}
 
 		$TFD(cunghr_,zunghr_)(
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(tau),
 		&tmp_work[0],
 		&lwork,
@@ -5744,11 +5744,11 @@
 		double *work = (double *)malloc(2*lwork *  sizeof(double));
              %}
 		$TFD(cunghr_,zunghr_)(
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(tau),
 		work,
 		&lwork,
@@ -5806,14 +5806,14 @@
 		$TFD(chseqr_,zhseqr_)(
 		&pjob,
 		&pcompz,
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(H),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		$P(Z),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		&tmp_work[0],
 		&lwork,
 		$P(info));
@@ -5831,14 +5831,14 @@
 		$TFD(chseqr_,zhseqr_)(
 		&pjob,
 		&pcompz,
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(H),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(w),
 		$P(Z),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		work,
 		&lwork,
 		$P(info));
@@ -5896,13 +5896,13 @@
 		&pside,
 		&phowmny,
 		$P(select),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(T),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(VL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&mm,
 		$P(m), 
 		&work[$SIZE(n)],
@@ -5961,15 +5961,15 @@
 		&pside,
 		&phowmny,
 		$P(select),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(B),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
 		$P(VL),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(VR),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&mm,
 		$P(m), 
 		&work[2*$SIZE(n)],
@@ -6011,9 +6011,9 @@
 		
 		$TFD(cgebal_,zgebal_)(
 		&pjob,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		$P(ilo),
 		$P(ihi),
 		$P(scale),
@@ -6059,10 +6059,10 @@
 
 		$b() = $TFD(clange_,zlange_)(
 		&pnorm,
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		work);
 		if ($norm() == 2)
 			free (work);
@@ -6116,9 +6116,9 @@
 		$b() = $TFD(clansy_,zlansy_)(
 		&pnorm,
 		&puplo,
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		work);
 		if ($norm() == 2 || $norm() == 1)
 			free (work);
@@ -6169,10 +6169,10 @@
 		&pnorm,
 		&puplo,
 		&pdiag,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		work);
 		if ($norm() == 2)
 			free (work);
@@ -6219,17 +6219,17 @@
 		$TFD(cgemm_,zgemm_)(
 		&ptransa,
 		&ptransb,
-		&$PRIV(__r_size),
-		&$PRIV(__s_size),
+		&(integer){$PRIV(__r_size)},
+		&(integer){$PRIV(__s_size)},
 		&kk,
 		$P(alpha),
 		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		$P(beta),
 		$P(C),
-		&$PRIV(__r_size));
+		&(integer){$PRIV(__r_size)});
 ',
 	Doc=>'
 
@@ -6348,17 +6348,17 @@
 		$TFD(cgemm_,zgemm_)(
 		&ptrans,
 		&ptrans,
-		&$PRIV(__p_size),
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__p_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
 		&alpha[0],
 		$P(B),
-		&$PRIV(__p_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__p_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		&beta[0],
 		$P(C),
-		&$PRIV(__p_size));
+		&(integer){$PRIV(__p_size)});
 ');
 if ($config{STRASSEN}){
 pp_defc("smmult",
@@ -6387,17 +6387,17 @@
 		$TFD(cgemmb_,zgemmb_)(
 		&ptrans,
 		&ptrans,
-		&$PRIV(__p_size),
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__p_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
 		&alpha[0],
 		$P(B),
-		&$PRIV(__p_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__p_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		&beta[0],
 		$P(C),
-		&$PRIV(__p_size));
+		&(integer){$PRIV(__p_size)});
 ');
 }
 
@@ -6428,17 +6428,17 @@
 		$TFD(cgemm_,zgemm_)(
 		&btrans,
 		&atrans,
-		&$PRIV(__p_size),
-		&$PRIV(__n_size),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__p_size)},
+		&(integer){$PRIV(__n_size)},
+		&(integer){$PRIV(__m_size)},
 		&alpha[0],
 		$P(B),
-		&$PRIV(__p_size),
-		$P(A),
-		&$PRIV(__n_size),
+		&(integer){$PRIV(__p_size)},
+		$P(A),
+		&(integer){$PRIV(__n_size)},
 		&beta[0],
 		$P(C),
-		&$PRIV(__p_size));
+		&(integer){$PRIV(__p_size)});
 ');
 
 pp_defc("syrk",
@@ -6473,14 +6473,14 @@
 		$TFD(csyrk_,zsyrk_)(
 		&puplo,
 		&ptrans,
-		&$PRIV(__p_size),
+		&(integer){$PRIV(__p_size)},
 		&kk,
 		$P(alpha),
 		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
 		$P(beta),
 		$P(C),
-		&$PRIV(__p_size));
+		&(integer){$PRIV(__p_size)});
 ');
 
 if ($config{CBLAS}){
@@ -6764,12 +6764,12 @@
 
 		$TFD(clacpy_,zlacpy_)(
 		&puplo,
-		&$PRIV(__m_size),
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__m_size)},
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(B),
-		&$PRIV(__p_size));
+		&(integer){$PRIV(__p_size)});
 ');
 
 pp_defc("laswp",
@@ -6788,9 +6788,9 @@
 
 
 		$TFD(claswp_,zlaswp_)(
-		&$PRIV(__n_size),
-		$P(A),
-		&$PRIV(__m_size),
+		&(integer){$PRIV(__n_size)},
+		$P(A),
+		&(integer){$PRIV(__m_size)},
 		$P(k1),
 		$P(k2),
 		$P(ipiv),
@@ -6973,9 +6973,9 @@
 	for (;;)
 	{
 		i++;
-		$TFD(cgemm_,zgemm_)(&ptrans,&ptrans,&$PRIV(__n_size),&$PRIV(__n_size),
-			&$PRIV(__n_size),&alpha[0],$P(Y),&$PRIV(__n_size), $P(A), &$PRIV(__n_size),
-			&beta[0], p, &$PRIV(__n_size));
+		$TFD(cgemm_,zgemm_)(&ptrans,&ptrans,&(integer){$PRIV(__n_size)},&(integer){$PRIV(__n_size)},
+			&(integer){$PRIV(__n_size)},&alpha[0],$P(Y),&(integer){$PRIV(__n_size)}, $P(A), &(integer){$PRIV(__n_size)},
+			&beta[0], p, &(integer){$PRIV(__n_size)});
 		
 		if (i == $SIZE(n)) break;