From a049db7303ec5f25206362b8a46365ffc5e21ee7 Mon Sep 17 00:00:00 2001 From: Andreas Noack Jensen Date: Thu, 7 Aug 2014 16:53:33 -0400 Subject: [PATCH] Fix initialization of vector of pivoting information in gelsy! --- base/linalg/lapack.jl | 4 ++-- test/linalg4.jl | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/base/linalg/lapack.jl b/base/linalg/lapack.jl index fcd6e7c0f44524..18d145d35485f4 100644 --- a/base/linalg/lapack.jl +++ b/base/linalg/lapack.jl @@ -765,7 +765,7 @@ for (gelsd, gelsy, elty) in newB = [B; zeros($elty, max(0, n - size(B, 1)), size(B, 2))] lda = max(1, m) ldb = max(1, m, n) - jpvt = similar(A, BlasInt, n) + jpvt = zeros(BlasInt, n) rcond = convert($elty, rcond) rnk = Array(BlasInt, 1) work = Array($elty, 1) @@ -855,7 +855,7 @@ for (gelsd, gelsy, elty, relty) in newB = [B; zeros($elty, max(0, n - size(B, 1)), size(B, 2))] lda = max(1, m) ldb = max(1, m, n) - jpvt = similar(A, BlasInt, n) + jpvt = zeros(BlasInt, n) rcond = convert($relty, rcond) rnk = Array(BlasInt, 1) work = Array($elty, 1) diff --git a/test/linalg4.jl b/test/linalg4.jl index 358671e6963e7c..a314725feb0a24 100644 --- a/test/linalg4.jl +++ b/test/linalg4.jl @@ -331,3 +331,7 @@ for newtype in [Diagonal, Bidiagonal, SymTridiagonal, Triangular, Matrix] @test full(convert(newtype, A)) == full(A) end +# Issue #7886 +x, r = LAPACK.gelsy!([0 1; 0 2; 0 3.], [2, 4, 6.]) +@test_approx_eq x [0,2] +@test r == 1