Skip to content

getindex(::DiffEqArray, ::Symbol) is broken on recent releases #240

Description

@chriselrod
julia> using RecursiveArrayTools, LabelledArrays

julia> ABC = @SLVector (:a,:b,:c);

julia> A = ABC(1,2,3);

julia> B = RecursiveArrayTools.DiffEqArray([A, A], [0.0, 2.0]);

julia> getindex(B, :a)
ERROR: MethodError: objects of type Nothing are not callable
Stacktrace:
 [1] _broadcast_getindex_evalf
   @ ./broadcast.jl:683 [inlined]
 [2] _broadcast_getindex
   @ ./broadcast.jl:656 [inlined]
 [3] getindex
   @ ./broadcast.jl:610 [inlined]
 [4] copy
   @ ./broadcast.jl:912 [inlined]
 [5] materialize
   @ ./broadcast.jl:873 [inlined]
 [6] observed(A::DiffEqArray{Int64, 2, Vector{SLArray{Tuple{3}, Int64, 1, 3, (:a, :b, :c)}}, Vector{Float64}, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}, Nothing, Nothing}, sym::Symbol, #unused#::Colon)
   @ RecursiveArrayTools ~/.julia/dev/RecursiveArrayTools/src/vector_of_array.jl:203
 [7] getindex(A::DiffEqArray{Int64, 2, Vector{SLArray{Tuple{3}, Int64, 1, 3, (:a, :b, :c)}}, Vector{Float64}, SymbolicIndexingInterface.SymbolCache{Nothing, Nothing, Nothing}, Nothing, Nothing}, sym::Symbol)
   @ RecursiveArrayTools ~/.julia/dev/RecursiveArrayTools/src/vector_of_array.jl:160
 [8] top-level scope
   @ REPL[18]:1

pkg> st -m RecursiveArrayTools
Status `~/Documents/progwork/julia/env/recursivearraytools/Manifest.toml`
  [731186ca] RecursiveArrayTools v2.34.1 `~/.julia/dev/RecursiveArrayTools`

vs

julia> using RecursiveArrayTools, LabelledArrays

julia> ABC = @SLVector (:a,:b,:c);

julia> A = ABC(1,2,3);

julia> B = RecursiveArrayTools.DiffEqArray([A, A], [0.0, 2.0]);

julia> getindex(B, :a)
2-element Vector{Int64}:
 1
 1

pkg> st -m RecursiveArrayTools
Status `~/Documents/progwork/julia/env/p5/Manifest.toml`
⌃ [731186ca] RecursiveArrayTools v2.31.2
Info Packages marked with ⌃ have new versions available and may be upgradable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions