I can do the following fine before my last update to Julia 1.8.5. Now I get an error message. I can concatenate normal (randomly generated) matrices OK.
julia> using ToeplitzMatrices
julia> B1 = Toeplitz([1, 2, 4], [1, 3, 5])
3×3 Toeplitz{Int64, Vector{Int64}, Vector{Int64}}:
1 3 5
2 1 3
4 2 1
julia> B2 = B1 .+ 3
3×3 Matrix{Int64}:
4 6 8
5 4 6
7 5 4
julia> hcat(B1, B2)
ERROR: CanonicalIndexError: setindex! not defined for Toeplitz{Int64, Vector{Int64}, Vector{Int64}}
Stacktrace:
[1] error_if_canonical_setindex(::IndexCartesian, ::Toeplitz{Int64, Vector{Int64}, Vector{Int64}}, ::Int64, ::Int64)
@ Base ./abstractarray.jl:1354
[2] setindex!
@ ./abstractarray.jl:1343 [inlined]
[3] macro expansion
@ ./multidimensional.jl:946 [inlined]
[4] macro expansion
@ ./cartesian.jl:64 [inlined]
[5] _unsafe_setindex!(::IndexCartesian, ::Toeplitz{Int64, Vector{Int64}, Vector{Int64}}, ::Toeplitz{Int64, Vector{Int64}, Vector{Int64}}, ::Base.Slice{Base.OneTo{Int64}}, ::UnitRange{Int64})
@ Base ./multidimensional.jl:941
[6] _setindex!
@ ./multidimensional.jl:930 [inlined]
[7] setindex!
@ ./abstractarray.jl:1344 [inlined]
[8] _typed_hcat(#unused#::Type{Int64}, A::Tuple{Toeplitz{Int64, Vector{Int64}, Vector{Int64}}, Matrix{Int64}})
@ Base ./abstractarray.jl:1618
[9] typed_hcat
@ ./abstractarray.jl:1586 [inlined]
[10] hcat(::Toeplitz{Int64, Vector{Int64}, Vector{Int64}}, ::Matrix{Int64})
@ Base ./abstractarray.jl:1589
[11] top-level scope
@ REPL[4]:1
I expect the output to be
1 3 5 11 13 15 2 1 3 12 11 13 4 2 1 14 12 11