1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
// compile-flags:-Zpolymorphize=on // build-pass fn test<T>() { std::mem::size_of::<T>(); } pub fn foo<T>(_: T) -> &'static fn() { &(test::<T> as fn()) } fn outer<T>() { foo(|| ()); } fn main() { outer::<u8>(); }