| ! { dg-do compile } |
| ! Tests the fix for a further regression caused by the |
| ! fix for PR28788 and posted as PR28908. The problem was |
| ! caused by the patch preventing interface derived types |
| ! from associating with identical derived types in the |
| ! containing namespaces. |
| ! |
| ! Contributed by HJ Lu <hjl@lucon.org> |
| ! |
| module bar |
| implicit none |
| public |
| type domain_ptr |
| type(domain), POINTER :: ptr |
| end type domain_ptr |
| type domain |
| TYPE(domain_ptr) , DIMENSION( : ) , POINTER :: parents |
| TYPE(domain_ptr) , DIMENSION( : ) , POINTER :: nests |
| end type domain |
| end module bar |
| |
| module foo |
| contains |
| recursive subroutine integrate (grid) |
| use bar |
| implicit none |
| type(domain), POINTER :: grid |
| interface |
| subroutine solve_interface (grid) |
| use bar |
| TYPE (domain) grid |
| end subroutine solve_interface |
| end interface |
| end subroutine integrate |
| end module foo |