about summary refs log tree commit diff
path: root/tests/run-make/raw-dylib-link-ordinal/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run-make/raw-dylib-link-ordinal/lib.rs')
-rw-r--r--tests/run-make/raw-dylib-link-ordinal/lib.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/tests/run-make/raw-dylib-link-ordinal/lib.rs b/tests/run-make/raw-dylib-link-ordinal/lib.rs
new file mode 100644
index 00000000000..bb25ac64c61
--- /dev/null
+++ b/tests/run-make/raw-dylib-link-ordinal/lib.rs
@@ -0,0 +1,21 @@
+#![cfg_attr(target_arch = "x86", feature(raw_dylib))]
+
+#[link(name = "exporter", kind = "raw-dylib")]
+extern {
+    #[link_ordinal(13)]
+    fn imported_function();
+    #[link_ordinal(5)]
+    static mut imported_variable: i32;
+    #[link_ordinal(9)]
+    fn print_imported_variable();
+}
+
+pub fn library_function() {
+    unsafe {
+        imported_function();
+        imported_variable = 42;
+        print_imported_variable();
+        imported_variable = -42;
+        print_imported_variable();
+    }
+}