]> git.proxmox.com Git - rustc.git/blob - tests/run-make/raw-dylib-c/lib.rs
New upstream version 1.68.2+dfsg1
[rustc.git] / tests / run-make / raw-dylib-c / lib.rs
1 #![feature(raw_dylib)]
2
3 #[link(name = "extern_1.dll", kind = "raw-dylib", modifiers = "+verbatim")]
4 extern {
5 fn extern_fn_1();
6 }
7
8 #[link(name = "extern_2", kind = "raw-dylib")]
9 extern {
10 fn extern_fn_3();
11 }
12
13 pub fn library_function() {
14 #[link(name = "extern_1", kind = "raw-dylib")]
15 extern {
16 fn extern_fn_2();
17 fn print_extern_variable();
18 static mut extern_variable: i32;
19 #[link_name = "extern_fn_4"]
20 fn extern_fn_4_renamed();
21 }
22
23 unsafe {
24 extern_fn_1();
25 extern_fn_2();
26 extern_fn_3();
27 extern_fn_4_renamed();
28 extern_variable = 42;
29 print_extern_variable();
30 extern_variable = -42;
31 print_extern_variable();
32 }
33 }
34
35 fn main() {
36 library_function();
37 }