-
Notifications
You must be signed in to change notification settings - Fork 597
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
bug: One of the arguments does not satisfy the requirements of the libfunc. #4744
Comments
I suggested a temporary workaround as you suggested to me last time @orizi, which is #[inline(never)]
fn no_op() {}
fn g(ref v: Felt252Vec<u64>, a: usize, b: usize, c: usize, d: usize, x: u64, y: u64) {
let mut v_a = v[a];
let mut v_b = v[b];
let mut v_c = v[c];
let mut v_d = v[d];
let tmp = u64_wrapping_add(v_a, v_b);
no_op();
v_a = u64_wrapping_add(tmp, x);
no_op();
v_d = rotate_right(v_d ^ v_a, 32);
v_c = u64_wrapping_add(v_c, v_d);
no_op();
v_b = rotate_right(v_b ^ v_c, 24); which allowed us to compile |
please check with 2.4.0 - cant try reproduce by myself as i got no self contained code for reproduction. |
@bajpai244 this was 2.4 right? not 2.3.0-rc0 |
managed to run in main and on 2.4.0 and it seemed to fully work. |
Just re-checked, we're running a recent nightly build and the error still occurs.
removing the
|
managed to more or less minimally recreate now - thanks! |
Bug Report
Cairo version: 2.3.0-rc0
Current behavior:
The above code fails with the following error:
Expected behavior:
The above code should compile and work.
Other information:
I have seen a similar issue which has been closed at #3863, not sure if my bug is arriving because of the same reason.
The text was updated successfully, but these errors were encountered: