llvm-project/flang/test/Semantics/resolve76.f90

31 lines
670 B
Fortran

! RUN: %S/test_errors.sh %s %t %f18
! 15.6.2.5(3)
module m1
implicit logical(a-b)
interface
module subroutine sub1(a, b)
real, intent(in) :: a
real, intent(out) :: b
end
logical module function f()
end
end interface
end
submodule(m1) sm1
contains
module procedure sub1
!ERROR: Left-hand side of assignment is not modifiable
a = 1.0
b = 2.0
!ERROR: No intrinsic or user-defined ASSIGNMENT(=) matches operand types REAL(4) and LOGICAL(4)
b = .false.
end
module procedure f
f = .true.
!ERROR: No intrinsic or user-defined ASSIGNMENT(=) matches operand types LOGICAL(4) and REAL(4)
f = 1.0
end
end