Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unreachable reached at 0x7b92c0862a74 / Illegal instruction #53847

Open
mortenpi opened this issue Mar 25, 2024 · 1 comment
Open

Unreachable reached at 0x7b92c0862a74 / Illegal instruction #53847

mortenpi opened this issue Mar 25, 2024 · 1 comment
Labels
bug Indicates an unexpected problem or unintended behavior REPL Julia's REPL (Read Eval Print Loop)

Comments

@mortenpi
Copy link
Contributor

With the current nightly. For an MWE, just run in the MarkdownAST repo (master at 30844f9 right now):

$ julia --project test/basedocstrings.jl
Precompiling MarkdownAST...
  1 dependency successfully precompiled in 1 seconds. 3 already precompiled.
Unreachable reached at 0x7b92c0862a74

[3077028] signal 4 (2): Illegal instruction
in expression starting at /home/mortenpi/juliadocs/clones/MarkdownAST.jl/test/basedocstrings.jl:59
moduledocstrings! at /home/mortenpi/juliadocs/clones/MarkdownAST.jl/test/basedocstrings.jl:41
alldocstrings at /home/mortenpi/juliadocs/clones/MarkdownAST.jl/test/basedocstrings.jl:54 [inlined]
macro expansion at /home/mortenpi/juliadocs/clones/MarkdownAST.jl/test/basedocstrings.jl:60 [inlined]
macro expansion at /home/mortenpi/julia/usr/share/julia/stdlib/v1.12/Test/src/Test.jl:164 [inlined]
top-level scope at /home/mortenpi/juliadocs/clones/MarkdownAST.jl/test/basedocstrings.jl:60
jl_toplevel_eval_flex at /home/mortenpi/julia/src/toplevel.c:944
jl_toplevel_eval_flex at /home/mortenpi/julia/src/toplevel.c:893
ijl_toplevel_eval at /home/mortenpi/julia/src/toplevel.c:964
ijl_toplevel_eval_in at /home/mortenpi/julia/src/toplevel.c:1006
eval at ./boot.jl:432 [inlined]
include_string at ./loading.jl:2535
_include at ./loading.jl:2595
include at ./Base.jl:559 [inlined]
exec_options at ./client.jl:255
_start at ./client.jl:533
jfptr__start_69654 at /home/mortenpi/julia/usr/lib/julia/sys.so (unknown line)
jl_apply at /home/mortenpi/julia/src/julia.h:2184 [inlined]
true_main at /home/mortenpi/julia/src/jlapi.c:900
jl_repl_entrypoint at /home/mortenpi/julia/src/jlapi.c:1059
main at /home/mortenpi/julia/cli/loader_exe.c:58
unknown function (ip: 0x7b92c1e29d8f)
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
_start at /home/mortenpi/julia/julia (unknown line)
Allocations: 3914780 (Pool: 3914677; Big: 103); GC: 6
Illegal instruction (core dumped)

This was with a local build:

Julia Version 1.12.0-DEV.240
Commit 61caaa886a* (2024-03-25 17:54 UTC)
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: 16 × 12th Gen Intel(R) Core(TM) i7-1260P
  WORD_SIZE: 64
  LLVM: libLLVM-16.0.6 (ORCJIT, alderlake)
Threads: 1 default, 0 interactive, 1 GC (on 16 virtual cores)

But it also showed up in the nightly CI with the official nightly binary: https://github.com/JuliaDocs/MarkdownAST.jl/actions/runs/8427886618/job/23079304876?pr=27#step:6:11

@nsajko nsajko added the bug Indicates an unexpected problem or unintended behavior label Mar 27, 2024
@inkydragon
Copy link
Member

inkydragon commented Apr 27, 2024

Reproduced with

  • (juliaup nightly) Julia Version 1.12.0-DEV.423 (2024-04-26) 0b7ee9d
  • Linux (x86_64-linux-gnu); Windows (x86_64-w64-mingw32)

NOTE: Save as a script and run it, don't run it in REPL.

import_repl() = Base.eval(@__MODULE__, :(import REPL))
for _ in 1:2
    import_repl()

    docstr = Base.Docs.DocStr(Base.Core.svec(), 0, Dict())
    # NOTE: Docs.parsedoc is empty, parsedoc defined in REPL
    Base.Docs.parsedoc(docstr)
end

The problem here is trying to call an empty function

function parsedoc end


Fix or workaround: @mortenpi

-Docs.parsedoc
+using REPL
+REPL.parsedoc

https://github.com/JuliaDocs/MarkdownAST.jl/blob/30844f9496c56f9e0cde794adf67021823a4cea2/test/basedocstrings.jl#L41

@inkydragon inkydragon added the REPL Julia's REPL (Read Eval Print Loop) label Apr 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Indicates an unexpected problem or unintended behavior REPL Julia's REPL (Read Eval Print Loop)
Projects
None yet
Development

No branches or pull requests

3 participants