add test for layout optimizations

This commit is contained in:
Ralf Jung 2020-02-12 21:50:54 +01:00
parent 87644d120f
commit a843fd4e17

View file

@ -4,6 +4,7 @@ fn main() {
basic();
ref_protector();
ref_mut_protector();
rust_issue_68303();
}
fn basic() {
@ -66,3 +67,11 @@ fn ref_mut_protector() {
let rc = RefCell::new(0);
break_it(&rc, rc.borrow_mut())
}
/// Make sure we do not have bad enum layout optimizations.
fn rust_issue_68303() {
let optional=Some(RefCell::new(false));
let mut handle=optional.as_ref().unwrap().borrow_mut();
assert!(optional.is_some());
*handle=true;
}