-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Help wanted: beam_ssa_recv failed assertion #8733
Comments
Thanks for your report! This is definitely a bug. One thing you can do is add a try/catch in |
Status update. The crash is when it checks
This code is verbatim copied from https://github.com/erlang/otp/blob/master/lib/stdlib/src/supervisor.erl#L1495-L1525 . The probability of nobody finding this before me in such a core module seems incredibly low, so I bet something else is up. Repro stepsReproduction steps, on my machine only, where
Small reproHere's a smaller version that's enough to trigger the bug:
Questions and Next steps
|
Thanks, that is very odd. Am I right in assuming that this runs on an ARM Mac? Can you reproduce this if you build OTP without the JIT? ( |
Also, if you could post the raw |
I hope this is enough for you to reproduce this bug, or to dismiss it as wontfix. I don't know if you officially support disabling compilation steps. I know I've hit compiler bug(s) before from skipping compiler optimization passes, possibly this same one, don't remember. Thanks for rubber ducking this with me, I'm now unblocked again :)
|
Thanks! I can reproduce it just fine now, it's a benign bug in code generation: it crashes on a |
Describe the bug
I'd like help debugging this; all pointers are welcome! I think the crash is triggered by elixir tooling, but the stack trace and crash is in the erlang compiler. I'm using elixir
iex
to run the code, but the file that triggers this is written in erlang.I've copied the otp supervisor.erl module to make some trial modifications. The file lives in
./erlang/supervisor.erl
.I've managed to sometimes fail an assertion in beam_ssa_recv. It seems to be this line:
otp/lib/compiler/src/beam_ssa_recv.erl
Line 633 in 0b33c5a
To Reproduce
I don't yet know how to reproduce it, or where it should be fixed.
erlc
works fineiex
works fineiex
triggers this error:which seems to be this line:
otp/lib/compiler/src/beam_ssa_recv.erl
Line 633 in 0b33c5a
Expected behavior
I don't expect the assertion to fail.
Affected versions
Erlang/OTP 26 [erts-14.2.5] [source] [64-bit] [smp:12:12] [ds:12:12:10] [async-threads:1] [jit] [dtrace]
, seemingly26.2.5
?Additional context
Add any other context about the problem here. If you wish to attach Erlang code you can either write it directly in the post using code tags, create a gist, or attach it as a zip file to this post.
The text was updated successfully, but these errors were encountered: