Skip to content

Commit

Permalink
Precommit test for rust-lang#118328.
Browse files Browse the repository at this point in the history
  • Loading branch information
aDotInTheVoid committed Nov 28, 2023
1 parent 46a24ed commit b1a6cf4
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 0 deletions.
20 changes: 20 additions & 0 deletions tests/mir-opt/const_prop/issue_118328.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// unit-test: ConstProp
// compile-flags: -O
// skip-filecheck
#![allow(unused_assignments)]

struct SizeOfConst<T>(std::marker::PhantomData<T>);
impl<T> SizeOfConst<T> {
const SIZE: usize = std::mem::size_of::<T>();
}

// EMIT_MIR issue_118328.size_of.ConstProp.diff
fn size_of<T>() -> usize {
let mut a = 0;
a = SizeOfConst::<T>::SIZE;
a
}

fn main() {
assert_eq!(size_of::<u32>(), std::mem::size_of::<u32>());
}
21 changes: 21 additions & 0 deletions tests/mir-opt/const_prop/issue_118328.size_of.ConstProp.diff
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
- // MIR for `size_of` before ConstProp
+ // MIR for `size_of` after ConstProp

fn size_of() -> usize {
let mut _0: usize;
let mut _1: usize;
scope 1 {
debug a => _1;
}

bb0: {
StorageLive(_1);
_1 = const 0_usize;
_1 = const _;
- _0 = _1;
+ _0 = const 0_usize;
StorageDead(_1);
return;
}
}

0 comments on commit b1a6cf4

Please sign in to comment.