-
Notifications
You must be signed in to change notification settings - Fork 10
Closed
Description
The following worked on 0.7.6 but resulted in an ambiguity error on 0.7.7:
using BlockArrays
Q = PseudoBlockMatrix(rand(5,5),[1,4],[3,2])
q = PseudoBlockVector(rand(5),[1,4])
u = Q \ q
Output:
ERROR: LoadError: MethodError: ldiv!(::LinearAlgebra.LU{Float64, PseudoBlockMatrix{Float64, Matrix{Float64}, Tuple{BlockedUnitRange{Vector{Int64}}, BlockedUnitRange{Vector{Int64}}}}}, ::PseudoBlockVector{Float64, Vector{Float64}, Tuple{BlockedUnitRange{Vector{Int64}}}}) is ambiguous. Candidates:
ldiv!(A::LinearAlgebra.Factorization, x::ArrayLayouts.LayoutVector{T} where T) in ArrayLayouts at C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:135
ldiv!(L::LinearAlgebra.LU{var"#s798", var"#s799"} where {var"#s798", var"#s799"<:(ArrayLayouts.LayoutMatrix{T} where T)}, B) in ArrayLayouts at C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\factorizations.jl:403
Possible fix, define
ldiv!(::LinearAlgebra.LU{var"#s798", var"#s799"} where {var"#s798", var"#s799"<:(ArrayLayouts.LayoutMatrix{T} where T)}, ::ArrayLayouts.LayoutVector{T} where T)
Stacktrace:
[1] ldiv!(Y::PseudoBlockVector{Float64, Vector{Float64}, Tuple{BlockedUnitRange{Vector{Int64}}}}, A::LinearAlgebra.LU{Float64, PseudoBlockMatrix{Float64, Matrix{Float64}, Tuple{BlockedUnitRange{Vector{Int64}}, BlockedUnitRange{Vector{Int64}}}}}, B::PseudoBlockVector{Float64, Vector{Float64}, Tuple{BlockedUnitRange{Vector{Int64}}}})
@ LinearAlgebra C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\LinearAlgebra\src\factorization.jl:142
[2] _ldiv!
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:82 [inlined]
[3] copyto!
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:98 [inlined]
[4] ldiv!
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:92 [inlined]
[5] _ldiv!
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:81 [inlined]
[6] copyto!
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:98 [inlined]
[7] copy
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:21 [inlined]
[8] materialize
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:22 [inlined]
[9] ldiv
@ C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:86 [inlined]
[10] \(A::PseudoBlockMatrix{Float64, Matrix{Float64}, Tuple{BlockedUnitRange{Vector{Int64}}, BlockedUnitRange{Vector{Int64}}}}, x::PseudoBlockVector{Float64, Vector{Float64}, Tuple{BlockedUnitRange{Vector{Int64}}}})
@ ArrayLayouts C:\Users\krcools\.julia\packages\ArrayLayouts\O51Gr\src\ldiv.jl:168
Environment:
Project SL_2021_ThinSheetMultiTraceCalderon v0.1.0
Status `C:\Users\krcools\.julia\dev\SL_2021_ThinSheetMultiTraceCalderon\Project.toml`
[4c555306] ArrayLayouts v0.7.7
[8e7c35d0] BlockArrays v0.16.9
Metadata
Metadata
Assignees
Labels
No labels