diff --git a/src/QrAlgo.jl b/src/QrAlgo.jl
index afcfc646f7677f95775268ca5e093ccf85b003dc..ce7c523b1fda1d9b68fdeb6793088265744dbdda 100644
--- a/src/QrAlgo.jl
+++ b/src/QrAlgo.jl
@@ -81,8 +81,8 @@ for (geqrf, ormqr, elty) in
     end
 
     @eval begin
-        t1 = Transpose{$elty, <: StridedMatrix}
-        t2 = Adjoint{$elty, <: StridedMatrix}
+        t1 = Transpose{$elty, <: StridedMatrix{$elty}}
+        t2 = Adjoint{$elty, <: StridedMatrix{$elty}}
     end
     
     for elty2 in (t1, t2)
@@ -128,8 +128,8 @@ for (geqrf, ormqr, elty) in
     end
 
     @eval begin
-        t1 = Transpose{$elty, <: StridedMatrix}
-        t2 = Adjoint{$elty, <: StridedMatrix}
+        t1 = Transpose{$elty, <: StridedMatrix{$elty}}
+        t2 = Adjoint{$elty, <: StridedMatrix{$elty}}
     end
     
     for (elty2, transchar) in