]>
git.proxmox.com Git - rustc.git/blob - src/test/ui/abi/statics/static-mut-foreign.rs
2 // Constants (static variables) can be used to match in patterns, but mutable
3 // statics cannot. This ensures that there's some form of error if this is
6 // ignore-wasm32-bare no libc to test ffi with
8 #![feature(rustc_private)]
12 #[link(name = "rust_test_helpers", kind = "static")]
14 static mut rust_dbg_static_mut
: libc
::c_int
;
15 pub fn rust_dbg_static_mut_check_four();
18 unsafe fn static_bound(_
: &'
static libc
::c_int
) {}
20 fn static_bound_set(a
: &'
static mut libc
::c_int
) {
25 assert_eq
!(rust_dbg_static_mut
, 3);
26 rust_dbg_static_mut
= 4;
27 assert_eq
!(rust_dbg_static_mut
, 4);
28 rust_dbg_static_mut_check_four();
29 rust_dbg_static_mut
+= 1;
30 assert_eq
!(rust_dbg_static_mut
, 5);
31 rust_dbg_static_mut
*= 3;
32 assert_eq
!(rust_dbg_static_mut
, 15);
33 rust_dbg_static_mut
= -3;
34 assert_eq
!(rust_dbg_static_mut
, -3);
35 static_bound(&rust_dbg_static_mut
);
36 static_bound_set(&mut rust_dbg_static_mut
);