summaryrefslogtreecommitdiffstats
path: root/tests/ui/wasm
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/wasm')
-rw-r--r--tests/ui/wasm/wasm-custom-section-relocations.rs15
-rw-r--r--tests/ui/wasm/wasm-custom-section-relocations.stderr14
2 files changed, 29 insertions, 0 deletions
diff --git a/tests/ui/wasm/wasm-custom-section-relocations.rs b/tests/ui/wasm/wasm-custom-section-relocations.rs
new file mode 100644
index 000000000..c3cca3a35
--- /dev/null
+++ b/tests/ui/wasm/wasm-custom-section-relocations.rs
@@ -0,0 +1,15 @@
+// only-wasm32
+
+#[link_section = "test"]
+pub static A: &[u8] = &[1]; //~ ERROR: no extra levels of indirection
+
+#[link_section = "test"]
+pub static B: [u8; 3] = [1, 2, 3];
+
+#[link_section = "test"]
+pub static C: usize = 3;
+
+#[link_section = "test"]
+pub static D: &usize = &C; //~ ERROR: no extra levels of indirection
+
+fn main() {}
diff --git a/tests/ui/wasm/wasm-custom-section-relocations.stderr b/tests/ui/wasm/wasm-custom-section-relocations.stderr
new file mode 100644
index 000000000..a37edc51d
--- /dev/null
+++ b/tests/ui/wasm/wasm-custom-section-relocations.stderr
@@ -0,0 +1,14 @@
+error: statics with a custom `#[link_section]` must be a simple list of bytes on the wasm target with no extra levels of indirection such as references
+ --> $DIR/wasm-custom-section-relocations.rs:4:1
+ |
+LL | pub static A: &[u8] = &[1];
+ | ^^^^^^^^^^^^^^^^^^^
+
+error: statics with a custom `#[link_section]` must be a simple list of bytes on the wasm target with no extra levels of indirection such as references
+ --> $DIR/wasm-custom-section-relocations.rs:13:1
+ |
+LL | pub static D: &usize = &C;
+ | ^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 2 previous errors
+