Hi,

I tried to define an operator, but it didn’t work.

Please help!

Below, I place a narrowed down example, where I define a new name for multiplication of two reals.

Thanks!

Arjan

The module:

```
Module LibTest
IMPLICIT NONE
PRIVATE
PUBLIC :: Float
INTEGER,PARAMETER :: Float = 4
INTERFACE OPERATOR (.Dot.)
MODULE PROCEDURE MapFloat
END INTERFACE
CONTAINS
FUNCTION MapFloat( M, y )
REAL( Float ) MapFloat
REAL(Float), INTENT( IN ) :: y
REAL(Float), INTENT( IN ) :: M
MapFloat = M*y
END FUNCTION MapFloat
END MODULE LibTest
```

and the program:

```
PROGRAM Test
USE LibTest
IMPLICIT NONE
REAL(Float) :: M = 12.,x = 13.,y
WRITE(*,*) M
WRITE(*,*) x
y = M .Dot. x
WRITE(*,*) y
END
```