diff options
Diffstat (limited to 'src/test/ui/mir/auxiliary')
-rw-r--r-- | src/test/ui/mir/auxiliary/issue_76375_aux.rs | 20 | ||||
-rw-r--r-- | src/test/ui/mir/auxiliary/mir_external_refs.rs | 17 |
2 files changed, 37 insertions, 0 deletions
diff --git a/src/test/ui/mir/auxiliary/issue_76375_aux.rs b/src/test/ui/mir/auxiliary/issue_76375_aux.rs new file mode 100644 index 000000000..90f4df739 --- /dev/null +++ b/src/test/ui/mir/auxiliary/issue_76375_aux.rs @@ -0,0 +1,20 @@ +// edition:2018 +// compile-flags: -Z mir-opt-level=3 + +#[inline(always)] +pub fn copy_prop(s: bool) -> String { + let a = "Hello world!".to_string(); + let b = a; + let c = b; + if s { + c + } else { + String::new() + } +} + +#[inline(always)] +pub fn dest_prop(x: &[u8]) -> &[u8] { + let y = &x[..x.len()]; + y +} diff --git a/src/test/ui/mir/auxiliary/mir_external_refs.rs b/src/test/ui/mir/auxiliary/mir_external_refs.rs new file mode 100644 index 000000000..9fd58f1d7 --- /dev/null +++ b/src/test/ui/mir/auxiliary/mir_external_refs.rs @@ -0,0 +1,17 @@ +pub struct S(pub u8); + +impl S { + pub fn hey() -> u8 { 24 } +} + +pub trait X { + fn hoy(&self) -> u8 { 25 } +} + +impl X for S {} + +pub enum E { + U(u8) +} + +pub fn regular_fn() -> u8 { 12 } |