You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Precompiling and then loading Bar results in a segfault:
(Bar) pkg> precompile
Precompiling project...
2 dependencies successfully precompiled in 2 seconds
julia> using Bar
signal (11): Segmentation fault
in expression starting at REPL[9]:1
jl_unwrap_unionall at /buildworker/worker/package_linux64/build/src/jltypes.c:959
jl_deserialize_datatype at /buildworker/worker/package_linux64/build/src/dump.c:1241 [inlined]
jl_deserialize_value at /buildworker/worker/package_linux64/build/src/dump.c:1885
jl_deserialize_value_svec at /buildworker/worker/package_linux64/build/src/dump.c:1354 [inlined]
jl_deserialize_value at /buildworker/worker/package_linux64/build/src/dump.c:1793
jl_deserialize_datatype at /buildworker/worker/package_linux64/build/src/dump.c:1243 [inlined]
jl_deserialize_value at /buildworker/worker/package_linux64/build/src/dump.c:1885
jl_deserialize_value_method at /buildworker/worker/package_linux64/build/src/dump.c:1457 [inlined]
jl_deserialize_value at /buildworker/worker/package_linux64/build/src/dump.c:1830
jl_deserialize_value_array at /buildworker/worker/package_linux64/build/src/dump.c:1411
jl_deserialize_value at /buildworker/worker/package_linux64/build/src/dump.c:1799
_jl_restore_incremental at /buildworker/worker/package_linux64/build/src/dump.c:2590
jl_restore_incremental at /buildworker/worker/package_linux64/build/src/dump.c:2655
_include_from_serialized at ./loading.jl:658
_require_search_from_serialized at ./loading.jl:760
_require at ./loading.jl:998
require at ./loading.jl:914
require at ./loading.jl:901
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2243 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2425
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1764 [inlined]
call_require at /buildworker/worker/package_linux64/build/src/toplevel.c:425 [inlined]
eval_import_path at /buildworker/worker/package_linux64/build/src/toplevel.c:462
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:688
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:829
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:829
jl_toplevel_eval_in at /buildworker/worker/package_linux64/build/src/toplevel.c:936
eval at ./boot.jl:369 [inlined]
eval_user_input at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:139
repl_backend_loop at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:200
start_repl_backend at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:185
#run_repl#43 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:318
run_repl at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:305
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2243 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2425
#892 at ./client.jl:394
jfptr_YY.892_24947.clone_1 at /home/simeon/packages/julias/julia-latest/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2243 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2425
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1764 [inlined]
jl_f__call_latest at /buildworker/worker/package_linux64/build/src/builtins.c:751
#invokelatest#2 at ./essentials.jl:726 [inlined]
invokelatest at ./essentials.jl:724 [inlined]
run_main_repl at ./client.jl:379
exec_options at ./client.jl:309
_start at ./client.jl:495
jfptr__start_34359.clone_1 at /home/simeon/packages/julias/julia-latest/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2243 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2425
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1764 [inlined]
true_main at /buildworker/worker/package_linux64/build/src/jlapi.c:560
repl_entrypoint at /buildworker/worker/package_linux64/build/src/jlapi.c:702
main at julia-latest (unknown line)
__libc_start_main at /usr/lib/libc.so.6 (unknown line)
unknown function (ip: 0x4007d8)
Allocations: 8185298 (Pool: 8182846; Big: 2452); GC: 10
zsh: segmentation fault (core dumped) julia-latest --project
This is fixed by defining function bar end in the module Foo. Is there any way to at least make this not segfault? In general, defining non-existent functions in other modules via GlobalRef seems to work just fine, it's only serialization that's not happy:
julia> module Foo end
Main.Foo
julia> @eval $(GlobalRef(Foo, :bar))() = 1
bar (generic function with 1 method)
julia> Foo.bar()
1
The text was updated successfully, but these errors were encountered:
MWE is two packages
Foo
andBar
, withBar
depending onFoo
.in
src/Foo.jl
:in
src/Bar.jl
:Precompiling and then loading
Bar
results in a segfault:This is fixed by defining
function bar end
in the moduleFoo
. Is there any way to at least make this not segfault? In general, defining non-existent functions in other modules viaGlobalRef
seems to work just fine, it's only serialization that's not happy:The text was updated successfully, but these errors were encountered: