Skip to content

MDN021 deprecated-relational-operator ​

warning enabled by default

A relational operator written .eq., .ne., .lt., .le., .gt., .ge..

Why ​

The symbolic operators ==, /=, <, <=, >, >= have been standard since Fortran 90 and read like mathematics. Fixable automatically (fobis lint --fix).

Reported ​

fortran
if (a .eq. b .and. c .ge. 0) then

Preferred ​

fortran
if (a == b .and. c >= 0) then

Suppressing ​

For one occurrence, with the reason on the same line (or alone on the line before the statement):

fortran
! fobis: ignore[MDN021] <why this occurrence is fine>

For the whole project, ignore = MDN021 in the fobos [lint] section.

Equivalent ​

Fortitude rule MOD021 (see Lint Rules).