//@ compile-flags: -Zinline-mir=yes --crate-type=lib | |
//@ build-pass | |
use std::mem::ManuallyDrop; | |
pub struct Foo<T, const N: usize>([T; N]); | |
pub struct Dorp {} | |
impl Drop for Dorp { | |
fn drop(&mut self) {} | |
} | |
#[inline] | |
// SAFETY: call this with a valid allocation idk | |
pub unsafe fn drop<const M: usize>(x: *mut Foo<Dorp, M>) { | |
std::ptr::drop_in_place(x); | |
} |