1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
module custom_operator_02_a
implicit none
public :: operator(.negation.)
interface operator(.negation.)
module procedure negative
end interface
contains
function negative(i) result(res)
integer, intent(in) :: i
integer :: res
res = -i
end function negative
end module custom_operator_02_a
module custom_operator_02_b
integer :: negation = 5
end module custom_operator_02_b
program custom_operator_02
use custom_operator_02_b
use custom_operator_02_a
implicit none
integer :: res, x
x = 10
res = .negation. x
print *, res
end program custom_operator_02
|