JuliaInterpreter.jl icon indicating copy to clipboard operation
JuliaInterpreter.jl copied to clipboard

Strange debug behaviour for `display` in Juno

Open mkborregaard opened this issue 5 years ago • 0 comments

When using Julia's debugger to step into display on an AbstractPlotting.scene, I'm getting a strange behaviour. MWE (in Juno):

using AbstractPlotting
p = scatter(1:10);
Juno.@enter display(p)

takes me correctly to https://github.com/JuliaLang/julia/blob/master/base/multimedia.jl#L322 , but stepping through a few times (with "next line") throws an error from JuliaInterpreter:

julia> Juno.@enter display(p)
debug> ERROR: TypeError: in typeassert, expected Type, got JuliaInterpreter.SSAValue
Stacktrace:
 [1] evaluate_call_recurse!(::Any, ::JuliaInterpreter.Frame, ::Expr; enter_generated::Bool) at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/interpret.jl:213
 [2] evaluate_call_recurse! at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/interpret.jl:202 [inlined]
 [3] eval_rhs(::Any, ::JuliaInterpreter.Frame, ::Expr) at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/interpret.jl:387
 [4] step_expr!(::Any, ::JuliaInterpreter.Frame, ::Any, ::Bool) at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/interpret.jl:522
 [5] step_expr! at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/interpret.jl:566 [inlined]
 [6] next_until!(::Any, ::Any, ::JuliaInterpreter.Frame, ::Bool) at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/commands.jl:95
 [7] next_line!(::Any, ::JuliaInterpreter.Frame, ::Bool) at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/commands.jl:173
 [8] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool; line::Nothing) at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/commands.jl:409
 [9] debug_command(::Any, ::JuliaInterpreter.Frame, ::Symbol, ::Bool) at /Users/michael/.julia/packages/JuliaInterpreter/VxcSp/src/commands.jl:391
 [10] (::Atom.JunoDebugger.var"#52#54"{Bool,Bool,Bool})() at /Users/michael/.julia/packages/Atom/N5oSJ/src/debugger/stepper.jl:191
 [11] evalscope(::Atom.JunoDebugger.var"#52#54"{Bool,Bool,Bool}) at /Users/michael/.julia/packages/Atom/N5oSJ/src/debugger/stepper.jl:392
 [12] startdebugging(::JuliaInterpreter.Frame, ::Bool; istoplevel::Bool, toggle_ui::Bool) at /Users/michael/.julia/packages/Atom/N5oSJ/src/debugger/stepper.jl:149
 [13] startdebugging(::JuliaInterpreter.Frame, ::Bool) at /Users/michael/.julia/packages/Atom/N5oSJ/src/debugger/stepper.jl:135
 [14] top-level scope at /Users/michael/.julia/packages/Atom/N5oSJ/src/debugger/stepper.jl:50

Without Juno.@enter there is no error from the code.

mkborregaard avatar Mar 01 '20 11:03 mkborregaard