| ! { dg-do compile } |
| ! This checks the fix for PR33295 in which the A_type in initA was |
| ! not promoted to module level and so not recognised as being the |
| ! same as that emanating directly from module a. |
| ! |
| ! Contributed by Janus Weil <jaydub66@gmail.com> |
| ! |
| module A |
| type A_type |
| real comp |
| end type |
| end module A |
| |
| module B |
| contains |
| function initA() |
| use A |
| implicit none |
| type(A_type):: initA |
| initA%comp=1.0 |
| end function |
| end module B |
| |
| program C |
| use B |
| use A |
| implicit none |
| type(A_type):: A_var |
| A_var = initA() |
| end program C |
| |
| ! { dg-final { cleanup-modules "A B" } } |
| |