NOT (The GNU Fortran Compiler)

### 8.215 `NOT` — Logical negation ¶

Synopsis:

  `RESULT = NOT(I)`

Description:

  `NOT` returns the bitwise Boolean inverse of I.

Class:

  Elemental function

Arguments:

  I | The type shall be `INTEGER` or `UNSIGNED`.

Return value:

  The return type is `INTEGER`, of the same kind as the argument.

Specific names:

  Name | Argument | Return type | Standard
  --- | --- | --- | ---
  `NOT(A)` | `INTEGER A` | `INTEGER` | Fortran 95 and later
  `BNOT(A)` | `INTEGER(1) A` | `INTEGER(1)` | GNU extension
  `INOT(A)` | `INTEGER(2) A` | `INTEGER(2)` | GNU extension
  `JNOT(A)` | `INTEGER(4) A` | `INTEGER(4)` | GNU extension
  `KNOT(A)` | `INTEGER(8) A` | `INTEGER(8)` | GNU extension

Standard:

  Fortran 90 and later, has overloads that are GNU extensions, extension for `UNSIGNED` (see Unsigned integers)

See also:

  `IAND` — Bitwise logical and,
  `IEOR` — Bitwise logical exclusive or,
  `IOR` — Bitwise logical or,
  `IBITS` — Bit extraction,
  `IBSET` — Set bit,
  `IBCLR` — Clear bit