Open gcoakes opened 1 month ago
I should note that this seemingly-impossible behavior could happen if your code exhibited Illegal Behavior -- LLVM can and sometimes will do incredibly strange things in such cases. However, the only thing that stands out to me as suspicious is your @alignCast
, but if it were invalid ReleaseSafe
would catch it, so this is most likely a bug.
(Note: I haven't confirmed this is an upstream bug, but it almost certainly is, so I'll label it as such for now.)
Zig Version
0.14.0-dev.367+a57479afc
Steps to Reproduce and Observed Behavior
qemu-system-riscv64
is installed and available within your PATH environment variable:ReleaseSmall
optimization mode (pressCTRL+a, x
to exit after it fails):The log statement in that function prints:
8273 + 49 > 8712
Note that the specific error which is returned seems to be that of the last defined return location within that function. If I comment out the conditional/return statement from above, it then starts returning the next last defined return error.
I apologize for not being able to minimize this further.
Expected Behavior
The run command is expected to exit without any errors being printed. This can be observed by running the same command with either
-Doptimize=ReleaseSafe
or no optimization hint (Debug
mode):