//@ run-rustfix #![feature(explicit_tail_calls)] #![expect(incomplete_features)] fn f() {} fn g() { become (&f)() //~ error: tail calls can only be performed with function definitions or pointers } fn h() { let table = [f as fn()]; if let Some(fun) = table.get(0) { become fun(); //~ error: tail calls can only be performed with function definitions or pointers } } fn i() { become Box::new(&mut &f)(); //~ error: tail calls can only be performed with function definitions or pointers } fn main() { g(); h(); i(); }