1! { dg-do compile } 2! 3module m1 4contains 5pure pure subroutine a1(b) ! { dg-error "Duplicate PURE attribute specified" } 6 real, intent(in) :: b ! { dg-error "Unexpected data declaration statement" } 7end subroutine a1 ! { dg-error "Expecting END MODULE" } 8end module m1 9 10module m2 11contains 12elemental elemental subroutine a2(b) ! { dg-error "Duplicate ELEMENTAL attribute" } 13 real, intent(in) :: b ! { dg-error "Unexpected data declaration statement" } 14end subroutine a2 ! { dg-error "Expecting END MODULE" } 15end module m2 16 17module m3 18contains 19recursive recursive subroutine a3(b) ! { dg-error "Duplicate RECURSIVE attribute" } 20 real, intent(in) :: b ! { dg-error "Unexpected data declaration statement" } 21end subroutine a3 ! { dg-error "Expecting END MODULE" } 22end module m3 23