summaryrefslogtreecommitdiffstats
path: root/src/test/ui/sanitize/hwaddress.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/sanitize/hwaddress.rs')
-rw-r--r--src/test/ui/sanitize/hwaddress.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/test/ui/sanitize/hwaddress.rs b/src/test/ui/sanitize/hwaddress.rs
new file mode 100644
index 000000000..b988035f7
--- /dev/null
+++ b/src/test/ui/sanitize/hwaddress.rs
@@ -0,0 +1,23 @@
+// needs-sanitizer-support
+// needs-sanitizer-hwaddress
+//
+// FIXME(#83706): this test triggers errors on aarch64-gnu
+// ignore-aarch64-unknown-linux-gnu
+//
+// FIXME(#83989): codegen-units=1 triggers linker errors on aarch64-gnu
+// compile-flags: -Z sanitizer=hwaddress -O -g -C codegen-units=16
+//
+// run-fail
+// error-pattern: HWAddressSanitizer: tag-mismatch
+
+#![feature(bench_black_box)]
+
+use std::hint::black_box;
+
+fn main() {
+ let xs = vec![0, 1, 2, 3];
+ // Avoid optimizing everything out.
+ let xs = black_box(xs.as_ptr());
+ let code = unsafe { *xs.offset(4) };
+ std::process::exit(code);
+}