summaryrefslogtreecommitdiffstats
path: root/src/test/ui/raw-ref-op/unusual_locations.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/raw-ref-op/unusual_locations.rs')
-rw-r--r--src/test/ui/raw-ref-op/unusual_locations.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/test/ui/raw-ref-op/unusual_locations.rs b/src/test/ui/raw-ref-op/unusual_locations.rs
new file mode 100644
index 000000000..6bf37408a
--- /dev/null
+++ b/src/test/ui/raw-ref-op/unusual_locations.rs
@@ -0,0 +1,22 @@
+// check-pass
+
+#![feature(raw_ref_op)]
+
+const USES_PTR: () = { let u = (); &raw const u; };
+static ALSO_USES_PTR: () = { let u = (); &raw const u; };
+
+fn main() {
+ let x: [i32; { let u = 2; let x = &raw const u; 4 }]
+ = [2; { let v = 3; let y = &raw const v; 4 }];
+ let mut one = 1;
+ let two = 2;
+ if &raw const one == &raw mut one {
+ match &raw const two {
+ _ => {}
+ }
+ }
+ let three = 3;
+ let mut four = 4;
+ println!("{:p}", &raw const three);
+ unsafe { &raw mut four; }
+}