File fix-SLU-warn.diff of Package superlu

Index: SuperLU_3.0/SRC/sgssvx.c
===================================================================
--- SuperLU_3.0.orig/SRC/sgssvx.c
+++ SuperLU_3.0/SRC/sgssvx.c
@@ -345,9 +345,9 @@ sgssvx(superlu_options_t *options, Super
     char      norm[1];
     int       i, j, info1;
     float    amax, anorm, bignum, smlnum, colcnd, rowcnd, rcmax, rcmin;
     int       relax, panel_size;
-    float    diag_pivot_thresh, drop_tol;
+    float    /*diag_pivot_thresh,*/ drop_tol;
     double    t0;      /* temporary time */
     double    *utime;
 
     /* External functions */
@@ -441,9 +441,9 @@ printf("dgssvx: Fact=%4d, Trans=%4d, equ
     
     /* Initialization for factor parameters */
     panel_size = sp_ienv(1);
     relax      = sp_ienv(2);
-    diag_pivot_thresh = options->DiagPivotThresh;
+    //diag_pivot_thresh = options->DiagPivotThresh;
     drop_tol   = 0.0;
 
     utime = stat->utime;
     
Index: SuperLU_3.0/SRC/ssp_blas2.c
===================================================================
--- SuperLU_3.0.orig/SRC/ssp_blas2.c
+++ SuperLU_3.0/SRC/ssp_blas2.c
@@ -19,8 +19,12 @@
 void susolve(int, int, float*, float*);
 void slsolve(int, int, float*, float*);
 void smatvec(int, int, int, float*, float*, float*);
 
+int strsv_(char*, char*, char*, int*, float*, int*, float*, int*);
+int sgemv_(char*, int*, int*, float*, float*, int*, float*, int*,
+	   float*, float*, int*);
+
 
 int
 sp_strsv(char *uplo, char *trans, char *diag, SuperMatrix *L, 
          SuperMatrix *U, float *x, SuperLUStat_t *stat, int *info)
@@ -84,10 +88,10 @@ sp_strsv(char *uplo, char *trans, char *
 #endif
     SCformat *Lstore;
     NCformat *Ustore;
     float   *Lval, *Uval;
-    int incx = 1, incy = 1;
-    float alpha = 1.0, beta = 1.0;
+    int incx = 1;	//, incy = 1;
+    //float alpha = 1.0, beta = 1.0;
     int nrow;
     int fsupc, nsupr, nsupc, luptr, istart, irow;
     int i, k, iptr, jcol;
     float *work;
Index: SuperLU_3.0/SRC/sgstrs.c
===================================================================
--- SuperLU_3.0.orig/SRC/sgstrs.c
+++ SuperLU_3.0/SRC/sgstrs.c
@@ -89,9 +89,9 @@ sgstrs (trans_t trans, SuperMatrix *L, S
  */
 #ifdef _CRAY
     _fcd ftcs1, ftcs2, ftcs3, ftcs4;
 #endif
-    int      incx = 1, incy = 1;
+    //int      incx = 1, incy = 1;
 #ifdef USE_VENDOR_BLAS
     float   alpha = 1.0, beta = 1.0;
     float   *work_col;
 #endif
Index: SuperLU_3.0/SRC/scopy_to_ucol.c
===================================================================
--- SuperLU_3.0.orig/SRC/scopy_to_ucol.c
+++ SuperLU_3.0/SRC/scopy_to_ucol.c
@@ -73,12 +73,12 @@ scopy_to_ucol(
 	        segsze = krep - kfnz + 1;
 
 		new_next = nextu + segsze;
 		while ( new_next > nzumax ) {
-		    if (mem_error = sLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu))
+		    if ((mem_error = sLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu)))
 			return (mem_error);
 		    ucol = Glu->ucol;
-		    if (mem_error = sLUMemXpand(jcol, nextu, USUB, &nzumax, Glu))
+		    if ((mem_error = sLUMemXpand(jcol, nextu, USUB, &nzumax, Glu)))
 			return (mem_error);
 		    usub = Glu->usub;
 		    lsub = Glu->lsub;
 		}
Index: SuperLU_3.0/SRC/ssnode_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/ssnode_dfs.c
+++ SuperLU_3.0/SRC/ssnode_dfs.c
@@ -69,9 +69,9 @@ ssnode_dfs (
 	    if ( kmark != kcol ) { /* First time visit krow */
 		marker[krow] = kcol;
 		lsub[nextl++] = krow;
 		if ( nextl >= nzlmax ) {
-		    if ( mem_error = sLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		    if ( (mem_error = sLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 			return (mem_error);
 		    lsub = Glu->lsub;
 		}
 	    }
@@ -82,9 +82,9 @@ ssnode_dfs (
     /* Supernode > 1, then make a copy of the subscripts for pruning */
     if ( jcol < kcol ) {
 	new_next = nextl + (nextl - xlsub[jcol]);
 	while ( new_next > nzlmax ) {
-	    if ( mem_error = sLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+	    if ( (mem_error = sLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		return (mem_error);
 	    lsub = Glu->lsub;
 	}
 	ito = nextl;
Index: SuperLU_3.0/SRC/spanel_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/spanel_bmod.c
+++ SuperLU_3.0/SRC/spanel_bmod.c
@@ -90,9 +90,9 @@ spanel_bmod (
     float       *dense_col;  /* dense[] for a column in the panel */
     float       *tempv1;             /* Used in 1-D update */
     float       *TriTmp, *MatvecTmp; /* used in 2-D update */
     float      zero = 0.0;
-    float      one = 1.0;
+    //float      one = 1.0;
     register int ldaTmp;
     register int r_ind, r_hi;
     static   int first = 1, maxsuper, rowblk, colblk;
     flops_t  *ops = stat->ops;
Index: SuperLU_3.0/SRC/ssnode_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/ssnode_bmod.c
+++ SuperLU_3.0/SRC/ssnode_bmod.c
@@ -20,8 +20,10 @@
 */
 
 #include "slu_sdefs.h"
 
+void slsolve(int, int, float*, float*);
+void smatvec(int, int, int, float*, float*, float*);
 
 /*
  * Performs numeric block updates within the relaxed snode. 
  */
Index: SuperLU_3.0/SRC/scolumn_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/scolumn_dfs.c
+++ SuperLU_3.0/SRC/scolumn_dfs.c
@@ -123,9 +123,9 @@ scolumn_dfs(
 
    	if ( kperm == EMPTY ) {
 	    lsub[nextl++] = krow; 	/* krow is indexed into A */
 	    if ( nextl >= nzlmax ) {
-		if ( mem_error = sLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		if ( (mem_error = sLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		    return (mem_error);
 		lsub = Glu->lsub;
 	    }
             if ( kmark != jcolm1 ) jsuper = EMPTY;/* Row index subset testing */
@@ -165,10 +165,10 @@ scolumn_dfs(
 		   	    /* Case kchild is in L: place it in L[*,k] */
 		   	    if ( chperm == EMPTY ) {
 			    	lsub[nextl++] = kchild;
 				if ( nextl >= nzlmax ) {
-				    if ( mem_error =
-					 sLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu) )
+				    if ( (mem_error =
+					  sLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu)) )
 					return (mem_error);
 				    lsub = Glu->lsub;
 				}
 				if ( chmark != jcolm1 ) jsuper = EMPTY;
Index: SuperLU_3.0/SRC/sreadhb.c
===================================================================
--- SuperLU_3.0.orig/SRC/sreadhb.c
+++ SuperLU_3.0/SRC/sreadhb.c
@@ -175,9 +175,9 @@ sreadhb(int *nrow, int *ncol, int *nonz,
  */
 
     register int i, numer_lines = 0, rhscrd = 0;
     int tmp, colnum, colsize, rownum, rowsize, valnum, valsize;
-    char buf[100], type[4], key[10];
+    char buf[100], type[4];	//, key[10];
     FILE *fp;
 
     fp = stdin;
 
Index: SuperLU_3.0/SRC/lsame.c
===================================================================
--- SuperLU_3.0.orig/SRC/lsame.c
+++ SuperLU_3.0/SRC/lsame.c
@@ -51,13 +51,13 @@ int lsame_(char *ca, char *cb)
 
     } else if (zcode == 233 || zcode == 169) {
 	/* EBCDIC is assumed - ZCODE is the EBCDIC code of either lower or   
           upper case 'Z'. */
-	if (inta >= 129 && inta <= 137 || inta >= 145 && inta <= 153 || inta 
-		>= 162 && inta <= 169)
+	if ((inta >= 129 && inta <= 137) || (inta >= 145 && inta <= 153) || (inta
+		>= 162 && inta <= 169))
 	    inta += 64;
-	if (intb >= 129 && intb <= 137 || intb >= 145 && intb <= 153 || intb 
-		>= 162 && intb <= 169)
+	if ((intb >= 129 && intb <= 137) || (intb >= 145 && intb <= 153) || (intb
+		>= 162 && intb <= 169))
 	    intb += 64;
     } else if (zcode == 218 || zcode == 250) {
 	/* ASCII is assumed, on Prime machines - ZCODE is the ASCII code   
           plus 128 of either lower or upper case 'Z'. */
Index: SuperLU_3.0/SRC/scolumn_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/scolumn_bmod.c
+++ SuperLU_3.0/SRC/scolumn_bmod.c
@@ -60,10 +60,10 @@ scolumn_bmod (
     _fcd ftcs1 = _cptofcd("L", strlen("L")),
          ftcs2 = _cptofcd("N", strlen("N")),
          ftcs3 = _cptofcd("U", strlen("U"));
 #endif
-    int         incx = 1, incy = 1;
-    float      alpha, beta;
+    //int         incx = 1, incy = 1;
+    //float      alpha, beta;
     
     /* krep = representative of current k-th supernode
      * fsupc = first supernodal column
      * nsupc = no of columns in supernode
@@ -89,10 +89,10 @@ scolumn_bmod (
     int          *xlusup;
     int          nzlumax;
     float       *tempv1;
     float      zero = 0.0;
-    float      one = 1.0;
-    float      none = -1.0;
+    //float      one = 1.0;
+    //float      none = -1.0;
     int          mem_error;
     flops_t      *ops = stat->ops;
 
     xsup    = Glu->xsup;
@@ -265,9 +265,9 @@ scolumn_bmod (
 
     /* Copy the SPA dense into L\U[*,j] */
     new_next = nextlu + xlsub[fsupc+1] - xlsub[fsupc];
     while ( new_next > nzlumax ) {
-	if (mem_error = sLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu))
+	if ((mem_error = sLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu)))
 	    return (mem_error);
 	lusup = Glu->lusup;
 	lsub = Glu->lsub;
     }
Index: SuperLU_3.0/SRC/sutil.c
===================================================================
--- SuperLU_3.0.orig/SRC/sutil.c
+++ SuperLU_3.0/SRC/sutil.c
@@ -362,19 +362,19 @@ sGenXtrue(int n, int nrhs, float *x, int
 void
 sFillRHS(trans_t trans, int nrhs, float *x, int ldx,
          SuperMatrix *A, SuperMatrix *B)
 {
-    NCformat *Astore;
-    float   *Aval;
+    //NCformat *Astore;
+    //float   *Aval;
     DNformat *Bstore;
     float   *rhs;
     float one = 1.0;
     float zero = 0.0;
     int      ldc;
     char transc[1];
 
-    Astore = A->Store;
-    Aval   = (float *) Astore->nzval;
+    //Astore = A->Store;
+    //Aval   = (float *) Astore->nzval;
     Bstore = B->Store;
     rhs    = Bstore->nzval;
     ldc    = Bstore->lda;
     
@@ -471,9 +471,9 @@ sPrintPerf(SuperMatrix *L, SuperMatrix *
 
 
 
 
-print_float_vec(char *what, int n, float *vec)
+int print_float_vec(char *what, int n, float *vec)
 {
     int i;
     printf("%s: n %d\n", what, n);
     for (i = 0; i < n; ++i) printf("%d\t%f\n", i, vec[i]);
Index: SuperLU_3.0/SRC/sp_ienv.c
===================================================================
--- SuperLU_3.0.orig/SRC/sp_ienv.c
+++ SuperLU_3.0/SRC/sp_ienv.c
@@ -1,8 +1,11 @@
 /*
  * File name:		sp_ienv.c
  * History:             Modified from lapack routine ILAENV
  */
+
+int xerbla_(char*, int*);
+
 int
 sp_ienv(int ispec)
 {
 /*
Index: SuperLU_3.0/SRC/dgssvx.c
===================================================================
--- SuperLU_3.0.orig/SRC/dgssvx.c
+++ SuperLU_3.0/SRC/dgssvx.c
@@ -345,9 +345,9 @@ dgssvx(superlu_options_t *options, Super
     char      norm[1];
     int       i, j, info1;
     double    amax, anorm, bignum, smlnum, colcnd, rowcnd, rcmax, rcmin;
     int       relax, panel_size;
-    double    diag_pivot_thresh, drop_tol;
+    double    /*diag_pivot_thresh,*/ drop_tol;
     double    t0;      /* temporary time */
     double    *utime;
 
     /* External functions */
@@ -441,9 +441,9 @@ printf("dgssvx: Fact=%4d, Trans=%4d, equ
     
     /* Initialization for factor parameters */
     panel_size = sp_ienv(1);
     relax      = sp_ienv(2);
-    diag_pivot_thresh = options->DiagPivotThresh;
+    //diag_pivot_thresh = options->DiagPivotThresh;
     drop_tol   = 0.0;
 
     utime = stat->utime;
     
Index: SuperLU_3.0/SRC/slamch.c
===================================================================
--- SuperLU_3.0.orig/SRC/slamch.c
+++ SuperLU_3.0/SRC/slamch.c
@@ -78,15 +78,14 @@ double slamch_(char *cmach)
 	first = FALSE_;
 	slamc2_(&beta, &it, &lrnd, &eps, &imin, &rmin, &imax, &rmax);
 	base = (float) beta;
 	t = (float) it;
+	i__1 = 1 - it;
 	if (lrnd) {
 	    rnd = 1.f;
-	    i__1 = 1 - it;
 	    eps = pow_ri(&base, &i__1) / 2;
 	} else {
 	    rnd = 0.f;
-	    i__1 = 1 - it;
 	    eps = pow_ri(&base, &i__1);
 	}
 	prec = eps * base;
 	emin = (float) imin;
@@ -410,9 +409,9 @@ L30:
 
    ===================================================================== 
 */
     /* Table of constant values */
-    static int c__1 = 1;
+    //static int c__1 = 1;
     
     /* Initialized data */
     static int first = TRUE_;
     static int iwarn = FALSE_;
@@ -718,9 +717,9 @@ double slamc3_(float *a, float *b)
 
    ===================================================================== 
 */
     /* System generated locals */
-    int i__1;
+    //int i__1;
     float r__1;
     /* Local variables */
     static float zero, a;
     static int i;
@@ -751,9 +750,9 @@ L10:
 	b1 = slamc3_(&r__1, &zero);
 	r__1 = b1 * *base;
 	c1 = slamc3_(&r__1, &zero);
 	d1 = zero;
-	i__1 = *base;
+	//i__1 = *base;
 	for (i = 1; i <= *base; ++i) {
 	    d1 += b1;
 /* L20: */
 	}
@@ -761,9 +760,9 @@ L10:
 	b2 = slamc3_(&r__1, &zero);
 	r__1 = b2 / rbase;
 	c2 = slamc3_(&r__1, &zero);
 	d2 = zero;
-	i__1 = *base;
+	//i__1 = *base;
 	for (i = 1; i <= *base; ++i) {
 	    d2 += b2;
 /* L30: */
 	}
@@ -832,9 +831,9 @@ L10:
     /* Table of constant values */
     static float c_b5 = 0.f;
     
     /* System generated locals */
-    int i__1;
+    //int i__1;
     float r__1;
     /* Local variables */
     static int lexp;
     static float oldy;
@@ -921,9 +920,9 @@ it
 
     recbas = 1.f / *beta;
     z = *beta - 1.f;
     y = 0.f;
-    i__1 = *p;
+    //i__1 = *p;
     for (i = 1; i <= *p; ++i) {
 	z *= recbas;
 	if (y < 1.f) {
 	    oldy = y;
@@ -936,9 +935,9 @@ it
     }
 
 /*     Now multiply by BETA**EMAX to get RMAX. */
 
-    i__1 = *emax;
+    //i__1 = *emax;
     for (i = 1; i <= *emax; ++i) {
 	r__1 = y * *beta;
 	y = slamc3_(&r__1, &c_b5);
 /* L30: */
Index: SuperLU_3.0/SRC/dsp_blas2.c
===================================================================
--- SuperLU_3.0.orig/SRC/dsp_blas2.c
+++ SuperLU_3.0/SRC/dsp_blas2.c
@@ -19,8 +19,9 @@
 void dusolve(int, int, double*, double*);
 void dlsolve(int, int, double*, double*);
 void dmatvec(int, int, int, double*, double*, double*);
 
+int dtrsv_(char*, char*, char*, int*, double*, int*, double*, int*);
 
 int
 sp_dtrsv(char *uplo, char *trans, char *diag, SuperMatrix *L, 
          SuperMatrix *U, double *x, SuperLUStat_t *stat, int *info)
@@ -84,10 +85,10 @@ sp_dtrsv(char *uplo, char *trans, char *
 #endif
     SCformat *Lstore;
     NCformat *Ustore;
     double   *Lval, *Uval;
-    int incx = 1, incy = 1;
-    double alpha = 1.0, beta = 1.0;
+    int incx = 1;	//, incy = 1;
+    //double alpha = 1.0, beta = 1.0;
     int nrow;
     int fsupc, nsupr, nsupc, luptr, istart, irow;
     int i, k, iptr, jcol;
     double *work;
Index: SuperLU_3.0/SRC/dgstrs.c
===================================================================
--- SuperLU_3.0.orig/SRC/dgstrs.c
+++ SuperLU_3.0/SRC/dgstrs.c
@@ -89,9 +89,9 @@ dgstrs (trans_t trans, SuperMatrix *L, S
  */
 #ifdef _CRAY
     _fcd ftcs1, ftcs2, ftcs3, ftcs4;
 #endif
-    int      incx = 1, incy = 1;
+    //int      incx = 1, incy = 1;
 #ifdef USE_VENDOR_BLAS
     double   alpha = 1.0, beta = 1.0;
     double   *work_col;
 #endif
Index: SuperLU_3.0/SRC/dcopy_to_ucol.c
===================================================================
--- SuperLU_3.0.orig/SRC/dcopy_to_ucol.c
+++ SuperLU_3.0/SRC/dcopy_to_ucol.c
@@ -73,12 +73,12 @@ dcopy_to_ucol(
 	        segsze = krep - kfnz + 1;
 
 		new_next = nextu + segsze;
 		while ( new_next > nzumax ) {
-		    if (mem_error = dLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu))
+		    if ((mem_error = dLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu)))
 			return (mem_error);
 		    ucol = Glu->ucol;
-		    if (mem_error = dLUMemXpand(jcol, nextu, USUB, &nzumax, Glu))
+		    if ((mem_error = dLUMemXpand(jcol, nextu, USUB, &nzumax, Glu)))
 			return (mem_error);
 		    usub = Glu->usub;
 		    lsub = Glu->lsub;
 		}
Index: SuperLU_3.0/SRC/dsnode_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/dsnode_dfs.c
+++ SuperLU_3.0/SRC/dsnode_dfs.c
@@ -69,9 +69,9 @@ dsnode_dfs (
 	    if ( kmark != kcol ) { /* First time visit krow */
 		marker[krow] = kcol;
 		lsub[nextl++] = krow;
 		if ( nextl >= nzlmax ) {
-		    if ( mem_error = dLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		    if ( (mem_error = dLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 			return (mem_error);
 		    lsub = Glu->lsub;
 		}
 	    }
@@ -82,9 +82,9 @@ dsnode_dfs (
     /* Supernode > 1, then make a copy of the subscripts for pruning */
     if ( jcol < kcol ) {
 	new_next = nextl + (nextl - xlsub[jcol]);
 	while ( new_next > nzlmax ) {
-	    if ( mem_error = dLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+	    if ( (mem_error = dLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		return (mem_error);
 	    lsub = Glu->lsub;
 	}
 	ito = nextl;
Index: SuperLU_3.0/SRC/dpanel_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/dpanel_bmod.c
+++ SuperLU_3.0/SRC/dpanel_bmod.c
@@ -90,9 +90,9 @@ dpanel_bmod (
     double       *dense_col;  /* dense[] for a column in the panel */
     double       *tempv1;             /* Used in 1-D update */
     double       *TriTmp, *MatvecTmp; /* used in 2-D update */
     double      zero = 0.0;
-    double      one = 1.0;
+    //double      one = 1.0;
     register int ldaTmp;
     register int r_ind, r_hi;
     static   int first = 1, maxsuper, rowblk, colblk;
     flops_t  *ops = stat->ops;
Index: SuperLU_3.0/SRC/dsnode_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/dsnode_bmod.c
+++ SuperLU_3.0/SRC/dsnode_bmod.c
@@ -20,8 +20,10 @@
 */
 
 #include "slu_ddefs.h"
 
+void dlsolve(int, int, double*, double*);
+void dmatvec(int, int, int, double*, double*, double*);
 
 /*
  * Performs numeric block updates within the relaxed snode. 
  */
Index: SuperLU_3.0/SRC/dreadhb.c
===================================================================
--- SuperLU_3.0.orig/SRC/dreadhb.c
+++ SuperLU_3.0/SRC/dreadhb.c
@@ -175,9 +175,9 @@ dreadhb(int *nrow, int *ncol, int *nonz,
  */
 
     register int i, numer_lines = 0, rhscrd = 0;
     int tmp, colnum, colsize, rownum, rowsize, valnum, valsize;
-    char buf[100], type[4], key[10];
+    char buf[100], type[4];	//, key[10];
     FILE *fp;
 
     fp = stdin;
 
Index: SuperLU_3.0/SRC/dcolumn_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/dcolumn_bmod.c
+++ SuperLU_3.0/SRC/dcolumn_bmod.c
@@ -60,10 +60,10 @@ dcolumn_bmod (
     _fcd ftcs1 = _cptofcd("L", strlen("L")),
          ftcs2 = _cptofcd("N", strlen("N")),
          ftcs3 = _cptofcd("U", strlen("U"));
 #endif
-    int         incx = 1, incy = 1;
-    double      alpha, beta;
+    //int         incx = 1, incy = 1;
+    //double      alpha, beta;
     
     /* krep = representative of current k-th supernode
      * fsupc = first supernodal column
      * nsupc = no of columns in supernode
@@ -89,10 +89,10 @@ dcolumn_bmod (
     int          *xlusup;
     int          nzlumax;
     double       *tempv1;
     double      zero = 0.0;
-    double      one = 1.0;
-    double      none = -1.0;
+    //double      one = 1.0;
+    //double      none = -1.0;
     int          mem_error;
     flops_t      *ops = stat->ops;
 
     xsup    = Glu->xsup;
@@ -265,9 +265,9 @@ dcolumn_bmod (
 
     /* Copy the SPA dense into L\U[*,j] */
     new_next = nextlu + xlsub[fsupc+1] - xlsub[fsupc];
     while ( new_next > nzlumax ) {
-	if (mem_error = dLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu))
+	if ((mem_error = dLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu)))
 	    return (mem_error);
 	lusup = Glu->lusup;
 	lsub = Glu->lsub;
     }
Index: SuperLU_3.0/SRC/dcolumn_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/dcolumn_dfs.c
+++ SuperLU_3.0/SRC/dcolumn_dfs.c
@@ -123,9 +123,9 @@ dcolumn_dfs(
 
    	if ( kperm == EMPTY ) {
 	    lsub[nextl++] = krow; 	/* krow is indexed into A */
 	    if ( nextl >= nzlmax ) {
-		if ( mem_error = dLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		if ( (mem_error = dLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		    return (mem_error);
 		lsub = Glu->lsub;
 	    }
             if ( kmark != jcolm1 ) jsuper = EMPTY;/* Row index subset testing */
@@ -165,10 +165,10 @@ dcolumn_dfs(
 		   	    /* Case kchild is in L: place it in L[*,k] */
 		   	    if ( chperm == EMPTY ) {
 			    	lsub[nextl++] = kchild;
 				if ( nextl >= nzlmax ) {
-				    if ( mem_error =
-					 dLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu) )
+				    if ( (mem_error =
+					  dLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu)) )
 					return (mem_error);
 				    lsub = Glu->lsub;
 				}
 				if ( chmark != jcolm1 ) jsuper = EMPTY;
Index: SuperLU_3.0/SRC/dutil.c
===================================================================
--- SuperLU_3.0.orig/SRC/dutil.c
+++ SuperLU_3.0/SRC/dutil.c
@@ -362,19 +362,19 @@ dGenXtrue(int n, int nrhs, double *x, in
 void
 dFillRHS(trans_t trans, int nrhs, double *x, int ldx,
          SuperMatrix *A, SuperMatrix *B)
 {
-    NCformat *Astore;
-    double   *Aval;
+    //NCformat *Astore;
+    //double   *Aval;
     DNformat *Bstore;
     double   *rhs;
     double one = 1.0;
     double zero = 0.0;
     int      ldc;
     char transc[1];
 
-    Astore = A->Store;
-    Aval   = (double *) Astore->nzval;
+    //Astore = A->Store;
+    //Aval   = (double *) Astore->nzval;
     Bstore = B->Store;
     rhs    = Bstore->nzval;
     ldc    = Bstore->lda;
     
@@ -471,9 +471,9 @@ dPrintPerf(SuperMatrix *L, SuperMatrix *
 
 
 
 
-print_double_vec(char *what, int n, double *vec)
+int print_double_vec(char *what, int n, double *vec)
 {
     int i;
     printf("%s: n %d\n", what, n);
     for (i = 0; i < n; ++i) printf("%d\t%f\n", i, vec[i]);
Index: SuperLU_3.0/SRC/dlamch.c
===================================================================
--- SuperLU_3.0.orig/SRC/dlamch.c
+++ SuperLU_3.0/SRC/dlamch.c
@@ -403,9 +403,9 @@ L30:
 
    ===================================================================== 
 */
     /* Table of constant values */
-    static int c__1 = 1;
+    //static int c__1 = 1;
     
     /* Initialized data */
     static int first = TRUE_;
     static int iwarn = FALSE_;
@@ -707,9 +707,9 @@ double dlamc3_(double *a, double *b)
 
    ===================================================================== 
 */
     /* System generated locals */
-    int i__1;
+    //int i__1;
     double d__1;
     /* Local variables */
     static double zero, a;
     static int i;
@@ -738,9 +738,9 @@ L10:
 	b1 = dlamc3_(&d__1, &zero);
 	d__1 = b1 * *base;
 	c1 = dlamc3_(&d__1, &zero);
 	d1 = zero;
-	i__1 = *base;
+	//i__1 = *base;
 	for (i = 1; i <= *base; ++i) {
 	    d1 += b1;
 /* L20: */
 	}
@@ -748,9 +748,9 @@ L10:
 	b2 = dlamc3_(&d__1, &zero);
 	d__1 = b2 / rbase;
 	c2 = dlamc3_(&d__1, &zero);
 	d2 = zero;
-	i__1 = *base;
+	//i__1 = *base;
 	for (i = 1; i <= *base; ++i) {
 	    d2 += b2;
 /* L30: */
 	}
@@ -819,9 +819,9 @@ L10:
     /* Table of constant values */
     static double c_b5 = 0.;
     
     /* System generated locals */
-    int i__1;
+    //int i__1;
     double d__1;
     /* Local variables */
     static int lexp;
     static double oldy;
@@ -908,9 +908,9 @@ it
 
     recbas = 1. / *beta;
     z = *beta - 1.;
     y = 0.;
-    i__1 = *p;
+    //i__1 = *p;
     for (i = 1; i <= *p; ++i) {
 	z *= recbas;
 	if (y < 1.) {
 	    oldy = y;
@@ -923,9 +923,9 @@ it
     }
 
 /*     Now multiply by BETA**EMAX to get RMAX. */
 
-    i__1 = *emax;
+    //i__1 = *emax;
     for (i = 1; i <= *emax; ++i) {
 	d__1 = y * *beta;
 	y = dlamc3_(&d__1, &c_b5);
 /* L30: */
Index: SuperLU_3.0/SRC/scsum1.c
===================================================================
--- SuperLU_3.0.orig/SRC/scsum1.c
+++ SuperLU_3.0/SRC/scsum1.c
@@ -38,9 +38,9 @@ double scsum1_(int *n, complex *cx, int
     
    Parameter adjustments   
        Function Body */
     /* System generated locals */
-    int i__1, i__2;
+    //int i__1, i__2;
     float ret_val;
     /* Builtin functions */
     double c_abs(complex *);
     /* Local variables */
@@ -62,10 +62,10 @@ double scsum1_(int *n, complex *cx, int
 
 /*     CODE FOR INCREMENT NOT EQUAL TO 1 */
 
     nincx = *n * *incx;
-    i__1 = nincx;
-    i__2 = *incx;
+    //i__1 = nincx;
+    //i__2 = *incx;
     for (i = 1; *incx < 0 ? i >= nincx : i <= nincx; i += *incx) {
 
 /*        NEXT LINE MODIFIED. */
 
@@ -77,9 +77,9 @@ double scsum1_(int *n, complex *cx, int
 
 /*     CODE FOR INCREMENT EQUAL TO 1 */
 
 L20:
-    i__2 = *n;
+    //i__2 = *n;
     for (i = 1; i <= *n; ++i) {
 
 /*        NEXT LINE MODIFIED. */
 
Index: SuperLU_3.0/SRC/icmax1.c
===================================================================
--- SuperLU_3.0.orig/SRC/icmax1.c
+++ SuperLU_3.0/SRC/icmax1.c
@@ -41,9 +41,9 @@ int icmax1_(int *n, complex *cx, int *in
     
    Parameter adjustments   
        Function Body */
     /* System generated locals */
-    int ret_val, i__1, i__2;
+    int ret_val;	//, i__1, i__2;
     float r__1;
     /* Local variables */
     static float smax;
     static int i, ix;
@@ -68,16 +68,16 @@ int icmax1_(int *n, complex *cx, int *in
 
     ix = 1;
     smax = (r__1 = CX(1).r, fabs(r__1));
     ix += *incx;
-    i__1 = *n;
+    //i__1 = *n;
     for (i = 2; i <= *n; ++i) {
-	i__2 = ix;
+	//i__2 = ix;
 	if ((r__1 = CX(ix).r, fabs(r__1)) <= smax) {
 	    goto L10;
 	}
 	ret_val = i;
-	i__2 = ix;
+	//i__2 = ix;
 	smax = (r__1 = CX(ix).r, fabs(r__1));
 L10:
 	ix += *incx;
 /* L20: */
@@ -87,16 +87,16 @@ L10:
 /*     CODE FOR INCREMENT EQUAL TO 1 */
 
 L30:
     smax = (r__1 = CX(1).r, fabs(r__1));
-    i__1 = *n;
+    //i__1 = *n;
     for (i = 2; i <= *n; ++i) {
-	i__2 = i;
+	//i__2 = i;
 	if ((r__1 = CX(i).r, fabs(r__1)) <= smax) {
 	    goto L40;
 	}
 	ret_val = i;
-	i__2 = i;
+	//i__2 = i;
 	smax = (r__1 = CX(i).r, fabs(r__1));
 L40:
 	;
     }
Index: SuperLU_3.0/SRC/cgssvx.c
===================================================================
--- SuperLU_3.0.orig/SRC/cgssvx.c
+++ SuperLU_3.0/SRC/cgssvx.c
@@ -345,9 +345,9 @@ cgssvx(superlu_options_t *options, Super
     char      norm[1];
     int       i, j, info1;
     float    amax, anorm, bignum, smlnum, colcnd, rowcnd, rcmax, rcmin;
     int       relax, panel_size;
-    float    diag_pivot_thresh, drop_tol;
+    float    /*diag_pivot_thresh,*/ drop_tol;
     double    t0;      /* temporary time */
     double    *utime;
 
     /* External functions */
@@ -441,9 +441,9 @@ printf("dgssvx: Fact=%4d, Trans=%4d, equ
     
     /* Initialization for factor parameters */
     panel_size = sp_ienv(1);
     relax      = sp_ienv(2);
-    diag_pivot_thresh = options->DiagPivotThresh;
+    //diag_pivot_thresh = options->DiagPivotThresh;
     drop_tol   = 0.0;
 
     utime = stat->utime;
     
Index: SuperLU_3.0/SRC/csp_blas2.c
===================================================================
--- SuperLU_3.0.orig/SRC/csp_blas2.c
+++ SuperLU_3.0/SRC/csp_blas2.c
@@ -19,8 +19,9 @@
 void cusolve(int, int, complex*, complex*);
 void clsolve(int, int, complex*, complex*);
 void cmatvec(int, int, int, complex*, complex*, complex*);
 
+int ctrsv_(char*, char*, char*, int*, complex*, int*, complex*, int*);
 
 int
 sp_ctrsv(char *uplo, char *trans, char *diag, SuperMatrix *L, 
          SuperMatrix *U, complex *x, SuperLUStat_t *stat, int *info)
@@ -84,11 +85,11 @@ sp_ctrsv(char *uplo, char *trans, char *
 #endif
     SCformat *Lstore;
     NCformat *Ustore;
     complex   *Lval, *Uval;
-    int incx = 1, incy = 1;
+    int incx = 1;	//, incy = 1;
     complex temp;
-    complex alpha = {1.0, 0.0}, beta = {1.0, 0.0};
+    //complex alpha = {1.0, 0.0}, beta = {1.0, 0.0};
     complex comp_zero = {0.0, 0.0};
     int nrow;
     int fsupc, nsupr, nsupc, luptr, istart, irow;
     int i, k, iptr, jcol;
@@ -476,10 +477,10 @@ sp_cgemv(char *trans, complex alpha, Sup
     }
 
     /* Quick return if possible. */
     if (A->nrow == 0 || A->ncol == 0 || 
-	c_eq(&alpha, &comp_zero) && 
-	c_eq(&beta, &comp_one))
+	(c_eq(&alpha, &comp_zero) &&
+	 c_eq(&beta, &comp_one)))
 	return 0;
 
 
     /* Set  LENX  and  LENY, the lengths of the vectors x and y, and set 
Index: SuperLU_3.0/SRC/clacon.c
===================================================================
--- SuperLU_3.0.orig/SRC/clacon.c
+++ SuperLU_3.0/SRC/clacon.c
@@ -9,8 +9,10 @@
 #include <math.h>
 #include "slu_Cnames.h"
 #include "slu_scomplex.h"
 
+int ccopy_(int*, complex*, int*, complex*, int*);
+
 int
 clacon_(int *n, complex *v, complex *x, float *est, int *kase)
 
 {
@@ -151,9 +153,9 @@ L70:
     estold = *est;
     *est = scsum1_(n, v, &c__1);
 
 
-L90:
+//L90:
     /*     TEST FOR CYCLING. */
     if (*est <= estold) goto L120;
 
     for (i = 0; i < *n; ++i) {
Index: SuperLU_3.0/SRC/ccopy_to_ucol.c
===================================================================
--- SuperLU_3.0.orig/SRC/ccopy_to_ucol.c
+++ SuperLU_3.0/SRC/ccopy_to_ucol.c
@@ -73,12 +73,12 @@ ccopy_to_ucol(
 	        segsze = krep - kfnz + 1;
 
 		new_next = nextu + segsze;
 		while ( new_next > nzumax ) {
-		    if (mem_error = cLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu))
+		    if ((mem_error = cLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu)))
 			return (mem_error);
 		    ucol = Glu->ucol;
-		    if (mem_error = cLUMemXpand(jcol, nextu, USUB, &nzumax, Glu))
+		    if ((mem_error = cLUMemXpand(jcol, nextu, USUB, &nzumax, Glu)))
 			return (mem_error);
 		    usub = Glu->usub;
 		    lsub = Glu->lsub;
 		}
Index: SuperLU_3.0/SRC/cgstrs.c
===================================================================
--- SuperLU_3.0.orig/SRC/cgstrs.c
+++ SuperLU_3.0/SRC/cgstrs.c
@@ -89,9 +89,9 @@ cgstrs (trans_t trans, SuperMatrix *L, S
  */
 #ifdef _CRAY
     _fcd ftcs1, ftcs2, ftcs3, ftcs4;
 #endif
-    int      incx = 1, incy = 1;
+    //int      incx = 1, incy = 1;
 #ifdef USE_VENDOR_BLAS
     complex   alpha = {1.0, 0.0}, beta = {1.0, 0.0};
     complex   *work_col;
 #endif
Index: SuperLU_3.0/SRC/cpivotgrowth.c
===================================================================
--- SuperLU_3.0.orig/SRC/cpivotgrowth.c
+++ SuperLU_3.0/SRC/cpivotgrowth.c
@@ -53,9 +53,9 @@ cPivotGrowth(int ncols, SuperMatrix *A,
     float   rpg, maxaj, maxuj;
     extern   double slamch_(char *);
     float   smlnum;
     complex   *luval;
-    complex   temp_comp;
+    //complex   temp_comp;
    
     /* Get machine constants. */
     smlnum = slamch_("S");
     rpg = 1. / smlnum;
Index: SuperLU_3.0/SRC/csnode_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/csnode_dfs.c
+++ SuperLU_3.0/SRC/csnode_dfs.c
@@ -69,9 +69,9 @@ csnode_dfs (
 	    if ( kmark != kcol ) { /* First time visit krow */
 		marker[krow] = kcol;
 		lsub[nextl++] = krow;
 		if ( nextl >= nzlmax ) {
-		    if ( mem_error = cLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		    if ( (mem_error = cLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 			return (mem_error);
 		    lsub = Glu->lsub;
 		}
 	    }
@@ -82,9 +82,9 @@ csnode_dfs (
     /* Supernode > 1, then make a copy of the subscripts for pruning */
     if ( jcol < kcol ) {
 	new_next = nextl + (nextl - xlsub[jcol]);
 	while ( new_next > nzlmax ) {
-	    if ( mem_error = cLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+	    if ( (mem_error = cLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		return (mem_error);
 	    lsub = Glu->lsub;
 	}
 	ito = nextl;
Index: SuperLU_3.0/SRC/csnode_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/csnode_bmod.c
+++ SuperLU_3.0/SRC/csnode_bmod.c
@@ -20,8 +20,10 @@
 */
 
 #include "slu_cdefs.h"
 
+void clsolve(int, int, complex*, complex*);
+void cmatvec(int, int, int, complex*, complex*, complex*);
 
 /*
  * Performs numeric block updates within the relaxed snode. 
  */
Index: SuperLU_3.0/SRC/cpanel_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/cpanel_bmod.c
+++ SuperLU_3.0/SRC/cpanel_bmod.c
@@ -90,9 +90,9 @@ cpanel_bmod (
     complex       *dense_col;  /* dense[] for a column in the panel */
     complex       *tempv1;             /* Used in 1-D update */
     complex       *TriTmp, *MatvecTmp; /* used in 2-D update */
     complex      zero = {0.0, 0.0};
-    complex      one = {1.0, 0.0};
+    //complex      one = {1.0, 0.0};
     complex      comp_temp, comp_temp1;
     register int ldaTmp;
     register int r_ind, r_hi;
     static   int first = 1, maxsuper, rowblk, colblk;
Index: SuperLU_3.0/SRC/creadhb.c
===================================================================
--- SuperLU_3.0.orig/SRC/creadhb.c
+++ SuperLU_3.0/SRC/creadhb.c
@@ -185,9 +185,9 @@ creadhb(int *nrow, int *ncol, int *nonz,
  */
 
     register int i, numer_lines = 0, rhscrd = 0;
     int tmp, colnum, colsize, rownum, rowsize, valnum, valsize;
-    char buf[100], type[4], key[10];
+    char buf[100], type[4];	//, key[10];
     FILE *fp;
 
     fp = stdin;
 
Index: SuperLU_3.0/SRC/ccolumn_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/ccolumn_bmod.c
+++ SuperLU_3.0/SRC/ccolumn_bmod.c
@@ -60,10 +60,10 @@ ccolumn_bmod (
     _fcd ftcs1 = _cptofcd("L", strlen("L")),
          ftcs2 = _cptofcd("N", strlen("N")),
          ftcs3 = _cptofcd("U", strlen("U"));
 #endif
-    int         incx = 1, incy = 1;
-    complex      alpha, beta;
+    //int         incx = 1, incy = 1;
+    //complex      alpha, beta;
     
     /* krep = representative of current k-th supernode
      * fsupc = first supernodal column
      * nsupc = no of columns in supernode
@@ -89,10 +89,10 @@ ccolumn_bmod (
     int          *xlusup;
     int          nzlumax;
     complex       *tempv1;
     complex      zero = {0.0, 0.0};
-    complex      one = {1.0, 0.0};
-    complex      none = {-1.0, 0.0};
+    //complex      one = {1.0, 0.0};
+    //complex      none = {-1.0, 0.0};
     complex	 comp_temp, comp_temp1;
     int          mem_error;
     flops_t      *ops = stat->ops;
 
@@ -278,9 +278,9 @@ ccolumn_bmod (
 
     /* Copy the SPA dense into L\U[*,j] */
     new_next = nextlu + xlsub[fsupc+1] - xlsub[fsupc];
     while ( new_next > nzlumax ) {
-	if (mem_error = cLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu))
+	if ((mem_error = cLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu)))
 	    return (mem_error);
 	lusup = Glu->lusup;
 	lsub = Glu->lsub;
     }
Index: SuperLU_3.0/SRC/ccolumn_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/ccolumn_dfs.c
+++ SuperLU_3.0/SRC/ccolumn_dfs.c
@@ -123,9 +123,9 @@ ccolumn_dfs(
 
    	if ( kperm == EMPTY ) {
 	    lsub[nextl++] = krow; 	/* krow is indexed into A */
 	    if ( nextl >= nzlmax ) {
-		if ( mem_error = cLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		if ( (mem_error = cLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		    return (mem_error);
 		lsub = Glu->lsub;
 	    }
             if ( kmark != jcolm1 ) jsuper = EMPTY;/* Row index subset testing */
@@ -165,10 +165,10 @@ ccolumn_dfs(
 		   	    /* Case kchild is in L: place it in L[*,k] */
 		   	    if ( chperm == EMPTY ) {
 			    	lsub[nextl++] = kchild;
 				if ( nextl >= nzlmax ) {
-				    if ( mem_error =
-					 cLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu) )
+				    if ( (mem_error =
+					  cLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu)) )
 					return (mem_error);
 				    lsub = Glu->lsub;
 				}
 				if ( chmark != jcolm1 ) jsuper = EMPTY;
Index: SuperLU_3.0/SRC/cutil.c
===================================================================
--- SuperLU_3.0.orig/SRC/cutil.c
+++ SuperLU_3.0/SRC/cutil.c
@@ -364,19 +364,19 @@ cGenXtrue(int n, int nrhs, complex *x, i
 void
 cFillRHS(trans_t trans, int nrhs, complex *x, int ldx,
          SuperMatrix *A, SuperMatrix *B)
 {
-    NCformat *Astore;
-    complex   *Aval;
+    //NCformat *Astore;
+    //complex   *Aval;
     DNformat *Bstore;
     complex   *rhs;
     complex one = {1.0, 0.0};
     complex zero = {0.0, 0.0};
     int      ldc;
     char transc[1];
 
-    Astore = A->Store;
-    Aval   = (complex *) Astore->nzval;
+    //Astore = A->Store;
+    //Aval   = (complex *) Astore->nzval;
     Bstore = B->Store;
     rhs    = Bstore->nzval;
     ldc    = Bstore->lda;
     
@@ -475,9 +475,9 @@ cPrintPerf(SuperMatrix *L, SuperMatrix *
 
 
 
 
-print_complex_vec(char *what, int n, complex *vec)
+int print_complex_vec(char *what, int n, complex *vec)
 {
     int i;
     printf("%s: n %d\n", what, n);
     for (i = 0; i < n; ++i) printf("%d\t%f%f\n", i, vec[i].r, vec[i].i);
Index: SuperLU_3.0/SRC/izmax1.c
===================================================================
--- SuperLU_3.0.orig/SRC/izmax1.c
+++ SuperLU_3.0/SRC/izmax1.c
@@ -36,9 +36,9 @@ izmax1_(int *n, doublecomplex *cx, int *
    ===================================================================== 
 */  
 
     /* System generated locals */
-    int ret_val, i__1, i__2;
+    int ret_val;	//, i__1, i__2;
     double d__1;
     
     /* Local variables */
     double smax;
@@ -62,16 +62,16 @@ izmax1_(int *n, doublecomplex *cx, int *
 
     ix = 1;
     smax = (d__1 = CX(1).r, fabs(d__1));
     ix += *incx;
-    i__1 = *n;
+    //i__1 = *n;
     for (i = 2; i <= *n; ++i) {
-	i__2 = ix;
+	//i__2 = ix;
 	if ((d__1 = CX(ix).r, fabs(d__1)) <= smax) {
 	    goto L10;
 	}
 	ret_val = i;
-	i__2 = ix;
+	//i__2 = ix;
 	smax = (d__1 = CX(ix).r, fabs(d__1));
 L10:
 	ix += *incx;
 /* L20: */
@@ -81,16 +81,16 @@ L10:
 /*     CODE FOR INCREMENT EQUAL TO 1 */
 
 L30:
     smax = (d__1 = CX(1).r, fabs(d__1));
-    i__1 = *n;
+    //i__1 = *n;
     for (i = 2; i <= *n; ++i) {
-	i__2 = i;
+	//i__2 = i;
 	if ((d__1 = CX(i).r, fabs(d__1)) <= smax) {
 	    goto L40;
 	}
 	ret_val = i;
-	i__2 = i;
+	//i__2 = i;
 	smax = (d__1 = CX(i).r, fabs(d__1));
 L40:
 	;
     }
Index: SuperLU_3.0/SRC/zgssvx.c
===================================================================
--- SuperLU_3.0.orig/SRC/zgssvx.c
+++ SuperLU_3.0/SRC/zgssvx.c
@@ -345,9 +345,9 @@ zgssvx(superlu_options_t *options, Super
     char      norm[1];
     int       i, j, info1;
     double    amax, anorm, bignum, smlnum, colcnd, rowcnd, rcmax, rcmin;
     int       relax, panel_size;
-    double    diag_pivot_thresh, drop_tol;
+    double    /*diag_pivot_thresh,*/ drop_tol;
     double    t0;      /* temporary time */
     double    *utime;
 
     /* External functions */
@@ -441,9 +441,9 @@ printf("dgssvx: Fact=%4d, Trans=%4d, equ
     
     /* Initialization for factor parameters */
     panel_size = sp_ienv(1);
     relax      = sp_ienv(2);
-    diag_pivot_thresh = options->DiagPivotThresh;
+    //diag_pivot_thresh = options->DiagPivotThresh;
     drop_tol   = 0.0;
 
     utime = stat->utime;
     
Index: SuperLU_3.0/SRC/zsp_blas2.c
===================================================================
--- SuperLU_3.0.orig/SRC/zsp_blas2.c
+++ SuperLU_3.0/SRC/zsp_blas2.c
@@ -19,8 +19,10 @@
 void zusolve(int, int, doublecomplex*, doublecomplex*);
 void zlsolve(int, int, doublecomplex*, doublecomplex*);
 void zmatvec(int, int, int, doublecomplex*, doublecomplex*, doublecomplex*);
 
+int ztrsv_(char*, char*, char*, int*,
+	   doublecomplex*, int*, doublecomplex*, int*);
 
 int
 sp_ztrsv(char *uplo, char *trans, char *diag, SuperMatrix *L, 
          SuperMatrix *U, doublecomplex *x, SuperLUStat_t *stat, int *info)
@@ -84,11 +86,11 @@ sp_ztrsv(char *uplo, char *trans, char *
 #endif
     SCformat *Lstore;
     NCformat *Ustore;
     doublecomplex   *Lval, *Uval;
-    int incx = 1, incy = 1;
+    int incx = 1; 	//, incy = 1;
     doublecomplex temp;
-    doublecomplex alpha = {1.0, 0.0}, beta = {1.0, 0.0};
+    //doublecomplex alpha = {1.0, 0.0}, beta = {1.0, 0.0};
     doublecomplex comp_zero = {0.0, 0.0};
     int nrow;
     int fsupc, nsupr, nsupc, luptr, istart, irow;
     int i, k, iptr, jcol;
@@ -476,10 +478,10 @@ sp_zgemv(char *trans, doublecomplex alph
     }
 
     /* Quick return if possible. */
     if (A->nrow == 0 || A->ncol == 0 || 
-	z_eq(&alpha, &comp_zero) && 
-	z_eq(&beta, &comp_one))
+	(z_eq(&alpha, &comp_zero) &&
+	 z_eq(&beta, &comp_one)))
 	return 0;
 
 
     /* Set  LENX  and  LENY, the lengths of the vectors x and y, and set 
Index: SuperLU_3.0/SRC/zlacon.c
===================================================================
--- SuperLU_3.0.orig/SRC/zlacon.c
+++ SuperLU_3.0/SRC/zlacon.c
@@ -9,8 +9,11 @@
 #include <math.h>
 #include "slu_Cnames.h"
 #include "slu_dcomplex.h"
 
+extern int zcopy_(int *, doublecomplex *, int *, doublecomplex *, int *);
+
+
 int
 zlacon_(int *n, doublecomplex *v, doublecomplex *x, double *est, int *kase)
 
 {
@@ -151,9 +154,9 @@ L70:
     estold = *est;
     *est = dzsum1_(n, v, &c__1);
 
 
-L90:
+//L90:
     /*     TEST FOR CYCLING. */
     if (*est <= estold) goto L120;
 
     for (i = 0; i < *n; ++i) {
Index: SuperLU_3.0/SRC/zcopy_to_ucol.c
===================================================================
--- SuperLU_3.0.orig/SRC/zcopy_to_ucol.c
+++ SuperLU_3.0/SRC/zcopy_to_ucol.c
@@ -73,12 +73,12 @@ zcopy_to_ucol(
 	        segsze = krep - kfnz + 1;
 
 		new_next = nextu + segsze;
 		while ( new_next > nzumax ) {
-		    if (mem_error = zLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu))
+		    if ((mem_error = zLUMemXpand(jcol, nextu, UCOL, &nzumax, Glu)))
 			return (mem_error);
 		    ucol = Glu->ucol;
-		    if (mem_error = zLUMemXpand(jcol, nextu, USUB, &nzumax, Glu))
+		    if ((mem_error = zLUMemXpand(jcol, nextu, USUB, &nzumax, Glu)))
 			return (mem_error);
 		    usub = Glu->usub;
 		    lsub = Glu->lsub;
 		}
Index: SuperLU_3.0/SRC/zgstrs.c
===================================================================
--- SuperLU_3.0.orig/SRC/zgstrs.c
+++ SuperLU_3.0/SRC/zgstrs.c
@@ -89,9 +89,9 @@ zgstrs (trans_t trans, SuperMatrix *L, S
  */
 #ifdef _CRAY
     _fcd ftcs1, ftcs2, ftcs3, ftcs4;
 #endif
-    int      incx = 1, incy = 1;
+    //int      incx = 1, incy = 1;
 #ifdef USE_VENDOR_BLAS
     doublecomplex   alpha = {1.0, 0.0}, beta = {1.0, 0.0};
     doublecomplex   *work_col;
 #endif
Index: SuperLU_3.0/SRC/zpivotgrowth.c
===================================================================
--- SuperLU_3.0.orig/SRC/zpivotgrowth.c
+++ SuperLU_3.0/SRC/zpivotgrowth.c
@@ -53,9 +53,9 @@ zPivotGrowth(int ncols, SuperMatrix *A,
     double   rpg, maxaj, maxuj;
     extern   double dlamch_(char *);
     double   smlnum;
     doublecomplex   *luval;
-    doublecomplex   temp_comp;
+    //doublecomplex   temp_comp;
    
     /* Get machine constants. */
     smlnum = dlamch_("S");
     rpg = 1. / smlnum;
Index: SuperLU_3.0/SRC/zsnode_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/zsnode_dfs.c
+++ SuperLU_3.0/SRC/zsnode_dfs.c
@@ -69,9 +69,9 @@ zsnode_dfs (
 	    if ( kmark != kcol ) { /* First time visit krow */
 		marker[krow] = kcol;
 		lsub[nextl++] = krow;
 		if ( nextl >= nzlmax ) {
-		    if ( mem_error = zLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		    if ( (mem_error = zLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 			return (mem_error);
 		    lsub = Glu->lsub;
 		}
 	    }
@@ -82,9 +82,9 @@ zsnode_dfs (
     /* Supernode > 1, then make a copy of the subscripts for pruning */
     if ( jcol < kcol ) {
 	new_next = nextl + (nextl - xlsub[jcol]);
 	while ( new_next > nzlmax ) {
-	    if ( mem_error = zLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+	    if ( (mem_error = zLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		return (mem_error);
 	    lsub = Glu->lsub;
 	}
 	ito = nextl;
Index: SuperLU_3.0/SRC/zsnode_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/zsnode_bmod.c
+++ SuperLU_3.0/SRC/zsnode_bmod.c
@@ -20,8 +20,10 @@
 */
 
 #include "slu_zdefs.h"
 
+void zlsolve(int, int, doublecomplex*, doublecomplex*);
+void zmatvec(int, int, int, doublecomplex*, doublecomplex*, doublecomplex*);
 
 /*
  * Performs numeric block updates within the relaxed snode. 
  */
Index: SuperLU_3.0/SRC/zpanel_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/zpanel_bmod.c
+++ SuperLU_3.0/SRC/zpanel_bmod.c
@@ -90,9 +90,9 @@ zpanel_bmod (
     doublecomplex       *dense_col;  /* dense[] for a column in the panel */
     doublecomplex       *tempv1;             /* Used in 1-D update */
     doublecomplex       *TriTmp, *MatvecTmp; /* used in 2-D update */
     doublecomplex      zero = {0.0, 0.0};
-    doublecomplex      one = {1.0, 0.0};
+    //doublecomplex      one = {1.0, 0.0};
     doublecomplex      comp_temp, comp_temp1;
     register int ldaTmp;
     register int r_ind, r_hi;
     static   int first = 1, maxsuper, rowblk, colblk;
Index: SuperLU_3.0/SRC/zreadhb.c
===================================================================
--- SuperLU_3.0.orig/SRC/zreadhb.c
+++ SuperLU_3.0/SRC/zreadhb.c
@@ -185,9 +185,9 @@ zreadhb(int *nrow, int *ncol, int *nonz,
  */
 
     register int i, numer_lines = 0, rhscrd = 0;
     int tmp, colnum, colsize, rownum, rowsize, valnum, valsize;
-    char buf[100], type[4], key[10];
+    char buf[100], type[4];	//, key[10];
     FILE *fp;
 
     fp = stdin;
 
Index: SuperLU_3.0/SRC/zcolumn_bmod.c
===================================================================
--- SuperLU_3.0.orig/SRC/zcolumn_bmod.c
+++ SuperLU_3.0/SRC/zcolumn_bmod.c
@@ -60,10 +60,10 @@ zcolumn_bmod (
     _fcd ftcs1 = _cptofcd("L", strlen("L")),
          ftcs2 = _cptofcd("N", strlen("N")),
          ftcs3 = _cptofcd("U", strlen("U"));
 #endif
-    int         incx = 1, incy = 1;
-    doublecomplex      alpha, beta;
+    //int         incx = 1, incy = 1;
+    //doublecomplex      alpha, beta;
     
     /* krep = representative of current k-th supernode
      * fsupc = first supernodal column
      * nsupc = no of columns in supernode
@@ -89,10 +89,10 @@ zcolumn_bmod (
     int          *xlusup;
     int          nzlumax;
     doublecomplex       *tempv1;
     doublecomplex      zero = {0.0, 0.0};
-    doublecomplex      one = {1.0, 0.0};
-    doublecomplex      none = {-1.0, 0.0};
+    //doublecomplex      one = {1.0, 0.0};
+    //doublecomplex      none = {-1.0, 0.0};
     doublecomplex	 comp_temp, comp_temp1;
     int          mem_error;
     flops_t      *ops = stat->ops;
 
@@ -280,9 +280,9 @@ zcolumn_bmod (
 
     /* Copy the SPA dense into L\U[*,j] */
     new_next = nextlu + xlsub[fsupc+1] - xlsub[fsupc];
     while ( new_next > nzlumax ) {
-	if (mem_error = zLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu))
+	if ((mem_error = zLUMemXpand(jcol, nextlu, LUSUP, &nzlumax, Glu)))
 	    return (mem_error);
 	lusup = Glu->lusup;
 	lsub = Glu->lsub;
     }
Index: SuperLU_3.0/SRC/zcolumn_dfs.c
===================================================================
--- SuperLU_3.0.orig/SRC/zcolumn_dfs.c
+++ SuperLU_3.0/SRC/zcolumn_dfs.c
@@ -123,9 +123,9 @@ zcolumn_dfs(
 
    	if ( kperm == EMPTY ) {
 	    lsub[nextl++] = krow; 	/* krow is indexed into A */
 	    if ( nextl >= nzlmax ) {
-		if ( mem_error = zLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu) )
+		if ( (mem_error = zLUMemXpand(jcol, nextl, LSUB, &nzlmax, Glu)) )
 		    return (mem_error);
 		lsub = Glu->lsub;
 	    }
             if ( kmark != jcolm1 ) jsuper = EMPTY;/* Row index subset testing */
@@ -165,10 +165,10 @@ zcolumn_dfs(
 		   	    /* Case kchild is in L: place it in L[*,k] */
 		   	    if ( chperm == EMPTY ) {
 			    	lsub[nextl++] = kchild;
 				if ( nextl >= nzlmax ) {
-				    if ( mem_error =
-					 zLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu) )
+				    if ( (mem_error =
+					  zLUMemXpand(jcol,nextl,LSUB,&nzlmax,Glu)) )
 					return (mem_error);
 				    lsub = Glu->lsub;
 				}
 				if ( chmark != jcolm1 ) jsuper = EMPTY;
Index: SuperLU_3.0/SRC/zutil.c
===================================================================
--- SuperLU_3.0.orig/SRC/zutil.c
+++ SuperLU_3.0/SRC/zutil.c
@@ -364,19 +364,19 @@ zGenXtrue(int n, int nrhs, doublecomplex
 void
 zFillRHS(trans_t trans, int nrhs, doublecomplex *x, int ldx,
          SuperMatrix *A, SuperMatrix *B)
 {
-    NCformat *Astore;
-    doublecomplex   *Aval;
+    //NCformat *Astore;
+    //doublecomplex   *Aval;
     DNformat *Bstore;
     doublecomplex   *rhs;
     doublecomplex one = {1.0, 0.0};
     doublecomplex zero = {0.0, 0.0};
     int      ldc;
     char transc[1];
 
-    Astore = A->Store;
-    Aval   = (doublecomplex *) Astore->nzval;
+    //Astore = A->Store;
+    //Aval   = (doublecomplex *) Astore->nzval;
     Bstore = B->Store;
     rhs    = Bstore->nzval;
     ldc    = Bstore->lda;
     
@@ -475,9 +475,9 @@ zPrintPerf(SuperMatrix *L, SuperMatrix *
 
 
 
 
-print_doublecomplex_vec(char *what, int n, doublecomplex *vec)
+int print_doublecomplex_vec(char *what, int n, doublecomplex *vec)
 {
     int i;
     printf("%s: n %d\n", what, n);
     for (i = 0; i < n; ++i) printf("%d\t%f%f\n", i, vec[i].r, vec[i].i);
openSUSE Build Service is sponsored by