Stream: helpdesk (published)

Topic: Invalidations caused by `unknown nothing`


view this post on Zulip James Wrigley (Dec 17 2025 at 17:28):

I sometimes see trees like this from SnoopCompile:

 unknown nothing invalidated:
   backedges:  1: superseding var"#ndigits#402"(base::Integer, pad::Integer, ::typeof(ndigits), x::Integer) @ Base intfuncs.jl:809 with MethodInstance for Base.var"#ndigits#402"(::Int64, ::Int64, ::typeof(ndigits), ::Integer) (1 children)
               2: superseding convert(::Type{T}, a::AbstractArray) where T<:Array @ Base array.jl:614 with MethodInstance for convert(::Type{Vector{Vector{Any}}}, ::Vector{Any}) (1 children)
               3: superseding fzeropreserving(bc) @ LinearAlgebra ~/.julia/juliaup/julia-1.12.2+0.x64.linux.gnu/share/julia/stdlib/v1.12/LinearAlgebra/src/structuredbroadcast.jl:148 with MethodInstance for LinearAlgebra.fzeropreserving(::Base.Broadcast.Broadcasted{LinearAlgebra.StructuredMatrixStyle{LinearAlgebra.LowerTriangular}}) (1 children)
               4: superseding fzeropreserving(bc) @ LinearAlgebra ~/.julia/juliaup/julia-1.12.2+0.x64.linux.gnu/share/julia/stdlib/v1.12/LinearAlgebra/src/structuredbroadcast.jl:148 with MethodInstance for LinearAlgebra.fzeropreserving(::Base.Broadcast.Broadcasted{LinearAlgebra.StructuredMatrixStyle{LinearAlgebra.UpperTriangular}}) (1 children)
               5: superseding fzeropreserving(bc) @ LinearAlgebra ~/.julia/juliaup/julia-1.12.2+0.x64.linux.gnu/share/julia/stdlib/v1.12/LinearAlgebra/src/structuredbroadcast.jl:148 with MethodInstance for LinearAlgebra.fzeropreserving(::Base.Broadcast.Broadcasted{LinearAlgebra.StructuredMatrixStyle{T}} where T) (1 children)

Does it mean that SnoopCompile can't figure out which method those invalidations were caused by?


Last updated: Jan 08 2026 at 04:55 UTC