@@ -5391,9 +5391,9 @@ for (syev, syevr, syevd, sygvd, elty) in
5391
5391
W = similar (A, $ elty, n)
5392
5392
ldz = n
5393
5393
if jobz == ' N'
5394
- Z = similar (A, $ elty, ldz, 0 )
5394
+ Z = similar (A, $ elty, 0 )
5395
5395
elseif jobz == ' V'
5396
- Z = similar (A, $ elty, ldz, n)
5396
+ Z = similar (A, $ elty, ldz * n)
5397
5397
end
5398
5398
isuppz = similar (A, BlasInt, 2 * n)
5399
5399
work = Vector {$elty} (undef, 1 )
@@ -5423,7 +5423,8 @@ for (syev, syevr, syevd, sygvd, elty) in
5423
5423
resize! (iwork, liwork)
5424
5424
end
5425
5425
end
5426
- W[1 : m[]], Z[:,1 : (jobz == ' V' ? m[] : 0 )]
5426
+ zm = jobz == ' V' ? m[] : 0
5427
+ resize! (W, m[]), reshape (resize! (Z, ldz * zm), ldz, zm)
5427
5428
end
5428
5429
syevr! (jobz:: AbstractChar , A:: AbstractMatrix{$elty} ) =
5429
5430
syevr! (jobz, ' A' , ' U' , A, 0.0 , 0.0 , 0 , 0 , - 1.0 )
@@ -5593,10 +5594,10 @@ for (syev, syevr, syevd, sygvd, elty, relty) in
5593
5594
W = similar (A, $ relty, n)
5594
5595
if jobz == ' N'
5595
5596
ldz = 1
5596
- Z = similar (A, $ elty, ldz, 0 )
5597
+ Z = similar (A, $ elty, 0 )
5597
5598
elseif jobz == ' V'
5598
5599
ldz = n
5599
- Z = similar (A, $ elty, ldz, n)
5600
+ Z = similar (A, $ elty, ldz * n)
5600
5601
end
5601
5602
isuppz = similar (A, BlasInt, 2 * n)
5602
5603
work = Vector {$elty} (undef, 1 )
@@ -5632,7 +5633,8 @@ for (syev, syevr, syevd, sygvd, elty, relty) in
5632
5633
resize! (iwork, liwork)
5633
5634
end
5634
5635
end
5635
- W[1 : m[]], Z[:,1 : (jobz == ' V' ? m[] : 0 )]
5636
+ zm = jobz == ' V' ? m[] : 0
5637
+ resize! (W, m[]), reshape (resize! (Z, ldz * zm), ldz, zm)
5636
5638
end
5637
5639
syevr! (jobz:: AbstractChar , A:: AbstractMatrix{$elty} ) =
5638
5640
syevr! (jobz, ' A' , ' U' , A, 0.0 , 0.0 , 0 , 0 , - 1.0 )
0 commit comments