URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [testsuite/] [gfortran.fortran-torture/] [execute/] [userop.f90] - Rev 695
Compare with Previous | Blame | View Log
module uopsimplicit noneinterface operator (.foo.)module procedure myfooend interfaceinterface operator (*)module procedure boolmulend interfaceinterface assignment (=)module procedure int2boolend interfacecontainsfunction myfoo (lhs, rhs)implicit noneinteger myfoointeger, intent(in) :: lhs, rhsmyfoo = lhs + rhsend function! This is deliberately different from integer multiplicationfunction boolmul (lhs, rhs)implicit nonelogical boolmullogical, intent(IN) :: lhs, rhsboolmul = lhs .and. .not. rhsend functionsubroutine int2bool (lhs, rhs)implicit nonelogical, intent(out) :: lhsinteger, intent(in) :: rhslhs = rhs .ne. 0end subroutineend moduleprogram meuse uopsimplicit noneinteger i, jlogical b, cb = .true.c = .true.if (b * c) call abortc = .false.if (.not. (b * c)) call abortif (c * b) call abortb = .false.if (b * c) call aborti = 0b = iif (b) call aborti = 2b = iif (.not. b) call abortj = 3if ((i .foo. j) .ne. 5) call abortend program
