| ! { dg-do compile } |
| ! |
| ! PR fortran/66257 |
| ! Check that typebound function calls are accepted as actual argument. |
| ! |
| MODULE test_class |
| IMPLICIT NONE |
| PRIVATE |
| PUBLIC:: test |
| |
| INTEGER, PARAMETER :: dp = SELECTED_REAL_KIND(15) |
| |
| TYPE test |
| PRIVATE |
| CONTAINS |
| PRIVATE |
| PROCEDURE, PUBLIC:: E |
| PROCEDURE, PUBLIC:: Om |
| END TYPE test |
| |
| CONTAINS |
| |
| ELEMENTAL FUNCTION E (self, a) |
| IMPLICIT NONE |
| CLASS(test), INTENT(IN):: self |
| REAL(kind=dp), INTENT(IN):: a |
| REAL(kind=dp):: E |
| |
| E = a |
| END FUNCTION E |
| |
| ELEMENTAL FUNCTION Om (self, z) |
| IMPLICIT NONE |
| CLASS(test), INTENT(IN):: self |
| REAL(kind=dp), INTENT(IN):: z |
| REAL(kind=dp):: Om |
| |
| Om = self%E(self%E(z)) |
| Om = log10(self%E(z)) |
| END FUNCTION Om |
| END MODULE test_class |