https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85537
--- Comment #16 from Tiziano Müller <dev-zero at gentoo dot org> --- can confirm, changing the reproducer to procedure(ibar), pointer :: bar_ptr => null() bar_ptr => bar_impl makes it generate valid code with the warning Warning: trampoline generated for nested function 'bar_impl' [-Wtrampolines]