1! { dg-do compile } 2! 3! PR 54949: [F03] abstract procedure pointers not rejected 4! 5! Contributed by Janus Weil <janus@gcc.gnu.org> 6 7 implicit none 8 9 abstract interface 10 subroutine abssub1 11 end subroutine 12 end interface 13 pointer :: abssub1 ! { dg-error "PROCEDURE POINTER attribute conflicts with ABSTRACT attribute" } 14 15 pointer :: abssub2 16 abstract interface 17 subroutine abssub2 ! { dg-error "PROCEDURE POINTER attribute conflicts with ABSTRACT attribute" } 18 end subroutine 19 end interface 20 21 abssub1 => sub ! { dg-error "is not a variable" } 22 abssub2 => sub 23 24contains 25 26 subroutine sub 27 end subroutine 28 29end 30