-
Notifications
You must be signed in to change notification settings - Fork 52
Closed
Description
I tried to use SnoopCompile with Franklin's tests today but the SnoopCompile.parcel(inf_timing) step failed with
MethodError: no method matching reprcontext(::Module, ::Core.TypeofVararg)
Closest candidates are:
reprcontext(::Module, !Matched::Type) at /Users/tlienart/.julia/packages/SnoopCompile/qKfrD/src/parcel_snoopi.jl:178
(::SnoopCompile.var"#10#13"{Module})(T::Core.TypeofVararg) at parcel_snoopi.jl:270
iterate at generator.jl:47 [inlined]
collect_to!(dest::Vector{String}, itr::Base.Generator{Base.Iterators.Drop{Core.SimpleVector}, SnoopCompile.var"#10#13"{Module}}, offs::Int64, st::Int64) at array.jl:710
collect_to_with_first! at array.jl:688 [inlined]
collect(itr::Base.Generator{Base.Iterators.Drop{Core.SimpleVector}, SnoopCompile.var"#10#13"{Module}}) at array.jl:669
map(f::Function, A::Base.Iterators.Drop{Core.SimpleVector}) at abstractarray.jl:2311
parcel(tinf::Vector{Tuple{Float64, Core.MethodInstance}}; subst::Vector{Pair{String, String}}, exclusions::Vector{String}, remove_exclusions::Bool, check_eval::Bool, blacklist::Nothing, remove_blacklist::Nothing) at parcel_snoopi.jl:270
parcel(tinf::Vector{Tuple{Float64, Core.MethodInstance}}) at parcel_snoopi.jl:228
top-level scope at snoop.jl:6
eval at boot.jl:369 [inlined]
what I did is simply
inf_timing = @snoopi include("test/runtests.jl")
pc = SnoopCompile.parcel(inf_timing)
A basic guess would be that SnoopCompile doesn't like the creation of module and evaluation of code within these temporary modules. But would there maybe be a way to skip this rather than fail? Or should I just have a simpler example for @snoopi than the full test suite?
thanks!
PS: maybe a workaround is to filter the result of inf_timing to remove things that throw off parcel? if so how would I do this?
Metadata
Metadata
Assignees
Labels
No labels