diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/import7.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/import7.f90 | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/import7.f90 b/gcc/testsuite/gfortran.dg/import7.f90 new file mode 100644 index 000000000..c115cc3f2 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/import7.f90 @@ -0,0 +1,58 @@ +! { dg-do compile } +! +! PR39688: IMPORT of derived type fails +! +! Contributed by Bob Corbett <robert.corbett@sun.com> + + MODULE MOD + TYPE T1 + SEQUENCE + TYPE(T2), POINTER :: P + END TYPE + TYPE T2 + SEQUENCE + INTEGER I + END TYPE + END + + PROGRAM MAIN + USE MOD, T3 => T1, T4 => T2 + TYPE T1 + SEQUENCE + TYPE(T2), POINTER :: P + END TYPE + INTERFACE SUBR + SUBROUTINE SUBR1(X) + IMPORT T3 + TYPE(T3) X + END SUBROUTINE + SUBROUTINE SUBR2(X) + IMPORT T1 + TYPE(T1) X + END SUBROUTINE + END INTERFACE + TYPE T2 + SEQUENCE + REAL X + END TYPE + END + + SUBROUTINE SUBR1(X) + USE MOD + TYPE(T1) X + END + + SUBROUTINE SUBR2(X) + TYPE T1 + SEQUENCE + TYPE(T2), POINTER :: P + END TYPE + TYPE T2 + SEQUENCE + REAL X + END TYPE + TYPE(T1) X + END + +! { dg-final { cleanup-modules "mod" } } + |