-
Notifications
You must be signed in to change notification settings - Fork 86
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
ICE: "assign statement with unequal types" ; StructTag / StructTag #2237
Comments
|
Thanks for filing these issues @matthiaskrgr. Are the examples from the Rust compiler unit tests? If so, are you running them manually or through a script? We were interested in including rustc unit tests in our regressions to capture such corner cases. |
Yes, these are rustc tests. 🙂 |
Cool, thanks 🙂 |
BTW do you kani folks have by any chance some automatic way to instrument fn parameters with fn very_fun_ction(a: String, b: &Vec<i32>, c: usize) -> Object {
// blah
} Would become #[kani::proof]
fn very_fun_ction() -> Object {
let a: String = kani::any();
let b: &Vec<i32> = kani::any();
let c: usize = kani::any();
// blah
} and could be tested automatically |
Not yet. |
ok, I think I got it to roughly to work :D (there may still be a bunch of cases where I just break the code without noticing, but eh... ) |
Cool! Yeah, https://github.com/model-checking/kani/blob/main/library/kani/src/arbitrary.rs So you might want to do the opposite: provide a list of supported types and default anything else. |
This one is probably related: // check-pass
#[kani::proof]
fn main() {
if let Some([b'@', filename @ ..]) = Some(b"@abc123") {
println!("filename {:?}", filename);
}
}
|
Triage: kani 0.40 original example fixed, #2237 (comment) still crashing |
I tried this code:
using the following command line invocation:
with Kani version: 0.22.0
I expected to see this happen: explanation
Instead, this happened: explanation
The text was updated successfully, but these errors were encountered: