diff --git a/kwant/linalg/lapack.pyx b/kwant/linalg/lapack.pyx
index 54a9f6defa2b42a0a32fc62f2220895d944fa7c1..f163360effcdf0368142725798af32516766b899 100644
--- a/kwant/linalg/lapack.pyx
+++ b/kwant/linalg/lapack.pyx
@@ -31,6 +31,31 @@ ctypedef bint l_logical
 int_dtype = np.int32
 logical_dtype = np.int32
 
+ctypedef float complex float_complex
+ctypedef double complex double_complex
+
+ctypedef fused scalar:
+    float
+    double
+    float complex
+    double complex
+
+ctypedef fused single_precision:
+    float
+    float complex
+
+ctypedef fused double_precision:
+    double
+    double complex
+
+ctypedef fused cmplx:
+    float complex
+    double complex
+
+ctypedef fused floating:
+    float
+    double
+
 # exceptions
 
 class LinAlgError(RuntimeError):