There are problems in LAPACKE complex lacn2 interfaces. Those functions don't have a "isgn" parmeter in LAPACK. This exists only for real interface. The problem is present in the four files of C and Z functions.
In Lapack:
SUBROUTINE ZLACN2( N, V, X, EST, KASE, ISAVE )
In Lapacke:
LAPACK_zlacn2( &n, v, x, isgn, est, kase, isave );
/* Includes */
#include <stdlib.h>
#include <stdio.h>
+#include <string.h>
#include "lapacke.h"
#include "lapacke_example_aux.h"
*/
#include <stdlib.h>
#include <stdio.h>
+#include <string.h>
#include <lapacke.h>
#include "lapacke_example_aux.h"
#include <lapacke.h>
+#include <stdio.h>
/* Auxiliary routine: printing a matrix */
void print_matrix_rowmajor( char* desc, lapack_int m, lapack_int n, double* mat, lapack_int ldm ) {
lapack_int LAPACKE_dlacn2( lapack_int n, double* v, double* x, lapack_int* isgn,
double* est, lapack_int* kase, lapack_int* isave );
lapack_int LAPACKE_clacn2( lapack_int n, lapack_complex_float* v,
- lapack_complex_float* x, lapack_int* isgn,
+ lapack_complex_float* x,
float* est, lapack_int* kase, lapack_int* isave );
lapack_int LAPACKE_zlacn2( lapack_int n, lapack_complex_double* v,
- lapack_complex_double* x, lapack_int* isgn,
+ lapack_complex_double* x,
double* est, lapack_int* kase, lapack_int* isave );
lapack_int LAPACKE_slacpy( int matrix_order, char uplo, lapack_int m,
lapack_int* isgn, double* est, lapack_int* kase,
lapack_int* isave );
lapack_int LAPACKE_clacn2_work( lapack_int n, lapack_complex_float* v,
- lapack_complex_float* x, lapack_int* isgn,
+ lapack_complex_float* x,
float* est, lapack_int* kase,
lapack_int* isave );
lapack_int LAPACKE_zlacn2_work( lapack_int n, lapack_complex_double* v,
- lapack_complex_double* x, lapack_int* isgn,
+ lapack_complex_double* x,
double* est, lapack_int* kase,
lapack_int* isave );
#include "lapacke_utils.h"
lapack_int LAPACKE_clacn2( lapack_int n, lapack_complex_float* v,
- lapack_complex_float* x, lapack_int* isgn,
+ lapack_complex_float* x,
float* est, lapack_int* kase, lapack_int* isave )
{
#ifndef LAPACK_DISABLE_NAN_CHECK
return -3;
}
#endif
- return LAPACKE_clacn2_work( n, v, x, isgn, est, kase, isave );
+ return LAPACKE_clacn2_work( n, v, x, est, kase, isave );
}
#include "lapacke_utils.h"
lapack_int LAPACKE_clacn2_work( lapack_int n, lapack_complex_float* v,
- lapack_complex_float* x, lapack_int* isgn,
+ lapack_complex_float* x,
float* est, lapack_int* kase,
lapack_int* isave )
{
lapack_int info = 0;
/* Call LAPACK function and adjust info */
- LAPACK_clacn2( &n, v, x, isgn, est, kase, isave );
+ LAPACK_clacn2( &n, v, x, est, kase, isave );
return info;
}
#include "lapacke_utils.h"
lapack_int LAPACKE_zlacn2( lapack_int n, lapack_complex_double* v,
- lapack_complex_double* x, lapack_int* isgn,
+ lapack_complex_double* x,
double* est, lapack_int* kase, lapack_int* isave )
{
#ifndef LAPACK_DISABLE_NAN_CHECK
return -3;
}
#endif
- return LAPACKE_zlacn2_work( n, v, x, isgn, est, kase, isave );
+ return LAPACKE_zlacn2_work( n, v, x, est, kase, isave );
}
#include "lapacke_utils.h"
lapack_int LAPACKE_zlacn2_work( lapack_int n, lapack_complex_double* v,
- lapack_complex_double* x, lapack_int* isgn,
+ lapack_complex_double* x,
double* est, lapack_int* kase,
lapack_int* isave )
{
lapack_int info = 0;
/* Call LAPACK function and adjust info */
- LAPACK_zlacn2( &n, v, x, isgn, est, kase, isave );
+ LAPACK_zlacn2( &n, v, x, est, kase, isave );
return info;
}