OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gfortran.dg/] [move_alloc_13.f90] - Rev 700

Go to most recent revision | Compare with Previous | Blame | View Log

! { dg-do run}
!
! PR fortran/51970
! PR fortran/51977
!
type t
end type t
type, extends(t) :: t2
  integer :: a
end type t2

class(t), allocatable :: y(:), z(:)

allocate(y(2), source=[t2(2), t2(3)])
call func2(y,z)

select type(z)
  type is(t2)
    if (any (z(:)%a /= [2, 3])) call abort()
  class default
    call abort()
end select

contains
  function func(x)
   class (t), allocatable :: x(:), func(:)
   call move_alloc (x, func)
  end function

  function func1(x)
   class (t), allocatable :: x(:), func1(:)
   call move_alloc (func1, x)
  end function

  subroutine func2(x, y)
   class (t), allocatable :: x(:), y(:)
   call move_alloc (x, y)
  end subroutine
end

Go to most recent revision | Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.