diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/class_dummy_2.f03')
-rw-r--r-- | gcc/testsuite/gfortran.dg/class_dummy_2.f03 | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/class_dummy_2.f03 b/gcc/testsuite/gfortran.dg/class_dummy_2.f03 new file mode 100644 index 000000000..c1735822b --- /dev/null +++ b/gcc/testsuite/gfortran.dg/class_dummy_2.f03 @@ -0,0 +1,33 @@ +! { dg-do run } +! +! PR 45674: [OOP] Undefined references for extended types +! +! Contributed by Dietmar Ebner <dietmar.ebner@gmail.com> + +module fails_mod + implicit none + type :: a_t + integer :: a + end type + type, extends(a_t) :: b_t + integer :: b + end type +contains + subroutine foo(a) + class(a_t) :: a + end subroutine foo +end module fails_mod + +module fails_test + implicit none +contains + subroutine bar + use fails_mod + type(b_t) :: b + call foo(b) + end subroutine bar +end module fails_test + +end + +! { dg-final { cleanup-modules "fails_mod fails_test" } } |