]> git.lizzy.rs Git - rust.git/blob - src/test/ui/asm/type-check-4.rs
Add borrow-check test
[rust.git] / src / test / ui / asm / type-check-4.rs
1 // only-x86_64
2
3 #![feature(asm)]
4
5 fn main() {
6     unsafe {
7         // Can't output to borrowed values.
8
9         let mut a = 0isize;
10         let p = &a;
11         asm!("{}", out(reg) a);
12         //~^ cannot assign to `a` because it is borrowed
13         println!("{}", p);
14
15         // Can't read from mutable borrowed values.
16
17         let mut a = 0isize;
18         let p = &mut a;
19         asm!("{}", in(reg) a);
20         //~^ cannot use `a` because it was mutably borrowed
21         println!("{}", p);
22     }
23 }