The following doesnt compile in Intel Fortran XE 2011:
TYPE type1
procedure(interface1),POINTER::p
END TYPE type1
ABSTRACT INTERFACE
integer functi
Add the nopass
attribute to the declaration of the procedure pointer component.
procedure(interface1), pointer, nopass :: p
Edit: In response to your comment, if you want to use the pass keyword, the interface would have to be changed as such:
ABSTRACT INTERFACE integer function interface1(passed_object, a) import :: type1 class(type1), intent(...) :: passed_object real, intent(in) :: a END function interface1 END INTERFACE