@@ -67,34 +67,7 @@ extern "C" {
6767#define lapack_logical lapack_int
6868#endif
6969
70- #if defined(_MSC_VER) && defined(__INTEL_CLANG_COMPILER)
71- #define LAPACK_COMPLEX_STRUCTURE
72- #define LAPACK_GLOBAL (lcname,UCNAME ) lcname
73- #define NOCHANGE
74- #endif
75-
7670#ifndef LAPACK_COMPLEX_CUSTOM
77- #if defined(_MSC_VER) && !defined(__INTEL_CLANG_COMPILER)
78- #if defined(LAPACK_COMPLEX_CPP)
79- #include < complex>
80- #define lapack_complex_float std::complex <float >
81- #define lapack_complex_double std::complex <double >
82- #define lapack_complex_float_real (z ) ((z).real())
83- #define lapack_complex_float_imag (z ) ((z).imag())
84- #define lapack_complex_double_real (z ) ((z).real())
85- #define lapack_complex_double_imag (z ) ((z).imag())
86- #define _CRT_USE_C_COMPLEX_H
87- #else
88- #include < complex.h>
89- #define LAPACK_COMPLEX_CUSTOM
90- #define lapack_complex_float _Fcomplex
91- #define lapack_complex_double _Dcomplex
92- #define lapack_complex_float_real (z ) (crealf(z))
93- #define lapack_complex_float_imag (z ) (cimagf(z))
94- #define lapack_complex_double_real (z ) (creal(z))
95- #define lapack_complex_double_imag (z ) (cimag(z))
96- #endif
97- #else
9871
9972#if defined(LAPACK_COMPLEX_STRUCTURE)
10073
@@ -126,6 +99,16 @@ typedef struct { double real, imag; } _lapack_complex_double;
12699#define lapack_complex_double_real (z ) ((z).real())
127100#define lapack_complex_double_imag (z ) ((z).imag())
128101
102+ #elif defined(_MSC_VER) && !defined(__INTEL_COMPILER) && !defined(__INTEL_LLVM_COMPILER)
103+
104+ #include < complex.h>
105+ #define lapack_complex_float _Fcomplex
106+ #define lapack_complex_double _Dcomplex
107+ #define lapack_complex_float_real (z ) (crealf(z))
108+ #define lapack_complex_float_imag (z ) (cimagf(z))
109+ #define lapack_complex_double_real (z ) (creal(z))
110+ #define lapack_complex_double_imag (z ) (cimag(z))
111+
129112#else
130113
131114#include < complex.h>
@@ -136,7 +119,6 @@ typedef struct { double real, imag; } _lapack_complex_double;
136119#define lapack_complex_double_real (z ) (creal(z))
137120#define lapack_complex_double_imag (z ) (cimag(z))
138121
139- #endif
140122#endif
141123
142124lapack_complex_float lapack_make_complex_float ( float re, float im );
0 commit comments