URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gfortran.dg/] [dependency_37.f90] - Rev 694
Compare with Previous | Blame | View Log
! { dg-do compile }! { dg-options "-Warray-temporaries" }! PR 48231 - this used to create an unnecessary temporary.module UnitValue_Moduletype :: UnitValuereal :: Value = 1.0end typeinterface operator(*)module procedure ProductReal_LVend interface operator(*)interface assignment(=)module procedure Assign_LV_Realend interface assignment(=)containselemental function ProductReal_LV(Multiplier, Multiplicand) result(P_R_LV)real, intent(in) :: Multipliertype(UnitValue), intent(in) :: Multiplicandtype(UnitValue) :: P_R_LVP_R_LV%Value = Multiplier * Multiplicand%Valueend function ProductReal_LVelemental subroutine Assign_LV_Real(LeftHandSide, RightHandSide)real, intent(inout) :: LeftHandSidetype(UnitValue), intent(in) :: RightHandSideLeftHandSide = RightHandSide%Valueend subroutine Assign_LV_Realend module UnitValue_Moduleprogram TestProgramuse UnitValue_Moduletype :: TableFormreal, dimension(:,:), allocatable :: RealDataend type TableFormREAL :: CENTIMETERtype(TableForm), pointer :: Tableallocate(Table)allocate(Table%RealData(10,5))CENTIMETER = 42Table%RealData = 1Table%RealData(:,1) = Table%RealData(:,1) * CENTIMETERend program TestProgram! { dg-final { cleanup-modules "unitvalue_module" } }
