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
thread 'rustc' panicked at creusot/src/backend/program.rs:1202:14:
internal error: entered unreachable code: non-primitive type for binary operation Eq *const i32
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Copy-pasting some notes from @xldenis on steps to take to solve the issue:
stop using opaque_ptr as the type for all pointers. We need ptr 't or maybe even mut_ptr 't and const_ptr 't. These need to be added in prelude.coma and backend/ty.rs must be updated accordingly (this should be an easy first step)
handle pointer equality in MIR. Primitive types use BinOp::Eq in MIR, but here we probably want to use PartialEq::eq instead.
Something that doesn't appear in this test but would be useful to handle as well are pointer->pointer casts between *mut and *const.
The text was updated successfully, but these errors were encountered:
Trying to write the following test on top of #1169 currently fails, because operations (such as
==
) on raw pointers are not currently supported:Copy-pasting some notes from @xldenis on steps to take to solve the issue:
Something that doesn't appear in this test but would be useful to handle as well are pointer->pointer casts between
*mut
and*const
.The text was updated successfully, but these errors were encountered: