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

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc3/] [gcc/] [testsuite/] [gfortran.dg/] [pure_initializer_2.f90] - Rev 516

Compare with Previous | Blame | View Log

! { dg-do compile }
! PR42008 Wrongly rejected derived types with default initializers
! in PURE procedures
module mod_xyz
 implicit none
contains
 pure subroutine psub()
  type ilist
    type(ilist), pointer :: next => null() ! Valid
    integer :: i
  end type ilist
 end subroutine psub
end module mod_xyz

module mod_xyz2
 implicit none
contains
 pure subroutine psub()
  type ilist
    type(ilist), pointer :: next
    integer, pointer :: p => null() ! Valid
    integer :: i
  end type ilist
  type(ilist) :: var ! Valid
  var%next => null()
 end subroutine psub
end module mod_xyz2

module mod_xyz3
 implicit none
 type ilist
   type(ilist), pointer :: next => null() ! Valid
   integer :: i
 end type ilist
contains
 pure subroutine psub()
  type(ilist) :: var ! Valid
 end subroutine psub
end module mod_xyz3

pure function test()
  integer,pointer :: p => null() !{ dg-error "not allowed in a PURE procedure" }
  integer :: test
  test = p
end function test
! { dg-final { cleanup-modules "mod_xyz mod_xyz2 mod_xyz3" } }

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.