From e4bd6387cf4d872832846a682789c53e53d95b20 Mon Sep 17 00:00:00 2001 From: Fredrik Ekre Date: Mon, 17 Jul 2017 20:26:02 +0200 Subject: [PATCH] remove misleading bidiag constructor, make Bidiagonal immutable (#22750) --- base/linalg/bidiag.jl | 3 +-- test/linalg/bidiag.jl | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/base/linalg/bidiag.jl b/base/linalg/bidiag.jl index 2ef755eeec228..b37ddd03d69c4 100644 --- a/base/linalg/bidiag.jl +++ b/base/linalg/bidiag.jl @@ -1,7 +1,7 @@ # This file is a part of Julia. License is MIT: https://julialang.org/license # Bidiagonal matrices -mutable struct Bidiagonal{T} <: AbstractMatrix{T} +struct Bidiagonal{T} <: AbstractMatrix{T} dv::Vector{T} # diagonal ev::Vector{T} # sub/super diagonal uplo::Char # upper bidiagonal ('U') or lower ('L') @@ -58,7 +58,6 @@ julia> Bl = Bidiagonal(dv, ev, :L) # ev is on the first subdiagonal function Bidiagonal(dv::AbstractVector{T}, ev::AbstractVector{T}, uplo::Symbol) where T Bidiagonal{T}(collect(dv), collect(ev), char_uplo(uplo)) end -Bidiagonal(dv::AbstractVector, ev::AbstractVector) = throw(ArgumentError("did you want an upper or lower Bidiagonal? Try again with an additional true (upper) or false (lower) argument.")) function Bidiagonal(dv::AbstractVector{Td}, ev::AbstractVector{Te}, uplo::Symbol) where {Td,Te} T = promote_type(Td,Te) diff --git a/test/linalg/bidiag.jl b/test/linalg/bidiag.jl index 8ec4b93b1485f..d7b95a00dd9f6 100644 --- a/test/linalg/bidiag.jl +++ b/test/linalg/bidiag.jl @@ -27,7 +27,7 @@ srand(1) @test Bidiagonal(dv,ev,:U) != Bidiagonal(dv,ev,:L) @test_throws ArgumentError Bidiagonal(dv,ev,:R) @test_throws DimensionMismatch Bidiagonal(dv,ones(elty,n),:U) - @test_throws ArgumentError Bidiagonal(dv,ev) + @test_throws MethodError Bidiagonal(dv,ev) end @testset "getindex, setindex!, size, and similar" begin