URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 302 |
Rev 384 |
! { dg-do compile }
|
! { dg-do compile }
|
! { dg-options "-std=legacy" }
|
! { dg-options "-std=legacy" }
|
!
|
!
|
! PR23843
|
! PR23843
|
! Make sure derived type I/O with PRIVATE components works where it's allowed
|
! Make sure derived type I/O with PRIVATE components works where it's allowed
|
module m1
|
module m1
|
type t1
|
type t1
|
integer i
|
integer i
|
end type t1
|
end type t1
|
end module m1
|
end module m1
|
|
|
module m2
|
module m2
|
use m1
|
use m1
|
|
|
type t2
|
type t2
|
private
|
private
|
type (t1) t
|
type (t1) t
|
end type t2
|
end type t2
|
|
|
type t3
|
type t3
|
private
|
private
|
integer i
|
integer i
|
end type t3
|
end type t3
|
|
|
contains
|
contains
|
subroutine test
|
subroutine test
|
character*20 c
|
character*20 c
|
type(t2) :: a
|
type(t2) :: a
|
type(t3) :: b
|
type(t3) :: b
|
|
|
a % t % i = 31337
|
a % t % i = 31337
|
b % i = 255
|
b % i = 255
|
|
|
write(c,*) a
|
write(c,*) a
|
if (trim(adjustl(c)) /= "31337") call abort
|
if (trim(adjustl(c)) /= "31337") call abort
|
write(c,*) b
|
write(c,*) b
|
if (trim(adjustl(c)) /= "255") call abort
|
if (trim(adjustl(c)) /= "255") call abort
|
end subroutine test
|
end subroutine test
|
end module m2
|
end module m2
|
|
|
use m2
|
use m2
|
call test
|
call test
|
end
|
end
|
|
|
! { dg-final { cleanup-modules "m1 m2" } }
|
! { dg-final { cleanup-modules "m1 m2" } }
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.