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