diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/class_allocate_2.f03')
-rw-r--r-- | gcc/testsuite/gfortran.dg/class_allocate_2.f03 | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/class_allocate_2.f03 b/gcc/testsuite/gfortran.dg/class_allocate_2.f03 new file mode 100644 index 00000000000..754faa9a9f4 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/class_allocate_2.f03 @@ -0,0 +1,23 @@ +! { dg-do compile } +! +! PR fortran/41582 +! +subroutine test() +type :: t +end type t +class(t), allocatable :: c,d +allocate(t :: d) +allocate(c,source=d) +end + +type, abstract :: t +end type t +type t2 + class(t), pointer :: t +end type t2 + +class(t), allocatable :: a,c,d +type(t2) :: b +allocate(a) ! { dg-error "requires a type-spec or SOURCE" } +allocate(b%t) ! { dg-error "requires a type-spec or SOURCE" } +end |