URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 303 |
Rev 384 |
! Test that IOLENGTH works for derived types containing arrays
|
! Test that IOLENGTH works for derived types containing arrays
|
module iolength_2_mod
|
module iolength_2_mod
|
integer, parameter :: &
|
integer, parameter :: &
|
! 32 bit, i.e. 4 byte integer (every gcc architecture should have this?)
|
! 32 bit, i.e. 4 byte integer (every gcc architecture should have this?)
|
int32 = selected_int_kind(9), &
|
int32 = selected_int_kind(9), &
|
! IEEE double precision, i.e. 8 bytes
|
! IEEE double precision, i.e. 8 bytes
|
dp = selected_real_kind(15, 307)
|
dp = selected_real_kind(15, 307)
|
type foo
|
type foo
|
! This type should take up 5*4+4+8=32 bytes
|
! This type should take up 5*4+4+8=32 bytes
|
integer(int32) :: a(5), b
|
integer(int32) :: a(5), b
|
real(dp) :: c
|
real(dp) :: c
|
end type foo
|
end type foo
|
end module iolength_2_mod
|
end module iolength_2_mod
|
|
|
program iolength_2
|
program iolength_2
|
use iolength_2_mod
|
use iolength_2_mod
|
implicit none
|
implicit none
|
integer :: iol
|
integer :: iol
|
type(foo) :: d
|
type(foo) :: d
|
inquire (iolength = iol) d
|
inquire (iolength = iol) d
|
if ( 32 /= iol) then
|
if ( 32 /= iol) then
|
call abort
|
call abort
|
end if
|
end if
|
end program iolength_2
|
end program iolength_2
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.