Skip to content

Eval Expr without LineNumberNode crashes Julia #34544

@mattBrzezinski

Description

@mattBrzezinski

Julia Version: 1.3.0
Operating System: macOS Catalina Version 10.15.2

Evaluating an Expr without a LineNumberNode crashes Julia:

eval(Expr(:call, :eval, Expr(:quote, Expr(:module, true, :bar, Expr(:block)))))
signal (11): Segmentation fault: 11
in expression starting at REPL[1]:1
fl_raise at /Users/sabae/buildbot/worker/package_macos64/build/src/flisp/flisp.c:148
type_error at /Users/sabae/buildbot/worker/package_macos64/build/src/flisp/flisp.c:190
apply_cl at /Users/sabae/buildbot/worker/package_macos64/build/src/flisp/flisp.c:0
_applyn at /Users/sabae/buildbot/worker/package_macos64/build/src/flisp/flisp.c:0
fl_applyn at /Users/sabae/buildbot/worker/package_macos64/build/src/flisp/flisp.c:722
jl_call_scm_on_ast at /Users/sabae/buildbot/worker/package_macos64/build/src/ast.c:915
jl_eval_module_expr at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:170
jl_toplevel_eval_flex at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:640
jl_toplevel_eval at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:823 [inlined]
jl_toplevel_eval_in at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:843
eval at ./boot.jl:330 [inlined]
eval at ./client.jl:425
jl_apply at /Users/sabae/buildbot/worker/package_macos64/build/src/./julia.h:1631 [inlined]
do_call at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:328
eval_body at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:0
jl_interpret_toplevel_thunk_callback at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:888
unknown function (ip: 0xfffffffffffffffe)
unknown function (ip: 0x11f6ca70f)
unknown function (ip: 0x0)
jl_interpret_toplevel_thunk at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:897
jl_toplevel_eval_flex at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:814
jl_toplevel_eval at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:823 [inlined]
jl_toplevel_eval_in at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:843
eval at ./boot.jl:330 [inlined]
eval at ./client.jl:425
jl_apply at /Users/sabae/buildbot/worker/package_macos64/build/src/./julia.h:1631 [inlined]
do_call at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:328
eval_body at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:0
jl_interpret_toplevel_thunk_callback at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:888
unknown function (ip: 0xfffffffffffffffe)
unknown function (ip: 0x11f6ca10f)
unknown function (ip: 0x3)
jl_interpret_toplevel_thunk at /Users/sabae/buildbot/worker/package_macos64/build/src/interpreter.c:897
jl_toplevel_eval_flex at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:814
jl_toplevel_eval_flex at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:764
jl_toplevel_eval at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:823 [inlined]
jl_toplevel_eval_in at /Users/sabae/buildbot/worker/package_macos64/build/src/toplevel.c:843
eval at ./boot.jl:330
eval_user_input at /Users/sabae/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.3/REPL/src/REPL.jl:86
macro expansion at /Users/sabae/buildbot/worker/package_macos64/build/usr/share/julia/stdlib/v1.3/REPL/src/REPL.jl:118 [inlined]
#26 at ./task.jl:333
jl_apply at /Users/sabae/buildbot/worker/package_macos64/build/src/./julia.h:1631 [inlined]
start_task at /Users/sabae/buildbot/worker/package_macos64/build/src/task.c:659
Allocations: 941571 (Pool: 941340; Big: 231); GC: 1
Segmentation fault: 11

Passing in a LineNumberNode however works fine

eval(Expr(:call, :eval, Expr(:quote, Expr(:module, true, :bar, Expr(:block, LineNumberNode(0))))))

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugIndicates an unexpected problem or unintended behaviorcompiler:loweringSyntax lowering (compiler front end, 2nd stage)good first issueIndicates a good issue for first-time contributors to Julia

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions