Skip to content
Snippets Groups Projects
Select Git revision
  • dba88fca1f16b12392161a91c9edceef399c294e
  • master default
2 results

panic.rs

Blame
  • Forked from Per Lindgren / e7020e_2020
    Source project has a limited visibility.
    main.rs 379 B
    #![no_std]
    #![no_main]
    
    #[macro_use]
    extern crate klee;
    
    use core::ptr;
    
    struct A {
        a: u8,
        b: u32,
    }
    
    #[no_mangle]
    fn main() {
        let mut a = 0;
        ksymbol!(&mut a, "a");
        let mut u = A { a: a, b: 0 };
    
        unsafe {
            ptr::read_volatile(&f2(f1(u.a)));
        }
    }
    
    // add 1 wrapping
    fn f1(u: u8) -> u8 {
        u.wrapping_add(1)
    }
    
    fn f2(u: u8) -> u8 {
        100 / u
    }