Considering .EQV. as == for booleans is more or less correct: a .eqv. b is true if a and b are either both true or both false, and it would result in false otherwise. Most modern Fortran compilers will squawk if either a or b isn't a boolean (Fortran logical), so a fragment like
int = 42
boole = .TRUE.
write(*,*) 'is int .eqv. boole true?', int .eqv. boole
will cause a compile-time error, which is, on the whole, probably a good thing.
As I said in my original post, I've been programming Fortran for quite a few years and never found a use for .eqv.
. As an aside, Fortran is insensitive to case; I tend to use uppercase for Fortran keywords and lowercase for everything else.
Information about American English usage here and here. Floating point issues? Please read this before posting. — emc