rust/tests/run-make/raw-dylib-c/lib.rs
Nicholas Nethercote 3079bd96b9 Run rustfmt on tests/run-make/.
With the exception of `tests/run-make/translation/test.rs`, which has a
syntax error.

The expected output in `rustdoc-error-lines/rmake.rs`'s required slight
tweaking.

The two `reproducible-build.rs` files need `// ignore-tidy-linelength`
because rustfmt produces lines longer than 100 chars, which tidy doesn't
like, yuk.
2024-05-31 21:30:08 +10:00

36 lines
763 B
Rust

#[link(name = "extern_1.dll", kind = "raw-dylib", modifiers = "+verbatim")]
extern "C" {
fn extern_fn_1();
}
#[link(name = "extern_2", kind = "raw-dylib")]
extern "C" {
fn extern_fn_3();
}
pub fn library_function() {
#[link(name = "extern_1", kind = "raw-dylib")]
extern "C" {
fn extern_fn_2();
fn print_extern_variable();
static mut extern_variable: i32;
#[link_name = "extern_fn_4"]
fn extern_fn_4_renamed();
}
unsafe {
extern_fn_1();
extern_fn_2();
extern_fn_3();
extern_fn_4_renamed();
extern_variable = 42;
print_extern_variable();
extern_variable = -42;
print_extern_variable();
}
}
fn main() {
library_function();
}