Try the following:
MODULE module_procedures_abstract_interface
use, intrinsic :: iso_fortran_env, only: dp => real64
implicit none
ABSTRACT INTERFACE
function fun_2_args(x, y)
import :: dp
real(dp) :: fun_2_args
real(dp), intent(in) :: x, y
end function fun_2_args
END INTERFACE
PROCEDURE(fun_2_args) :: fun1, fun2
END MODULE module_procedures_abstract_interface