2 // compile-flags: -Z mir-opt-level=4
5 #![feature(lang_items)]
8 struct NonNull<T: ?Sized>(*const T);
10 struct Unique<T: ?Sized>(NonNull<T>);
13 pub struct Box<T: ?Sized>(Unique<T>);
15 impl<T: ?Sized> Drop for Box<T> {
21 unsafe fn box_free<T: ?Sized>(ptr: Unique<T>) {
26 fn dealloc<T: ?Sized>(_: *const T) {}
30 pub fn foo(a: Option<Box<Foo<usize>>>) -> usize {