Similar to the D/C prefixes to real functions to specify the input/output types, GNU Fortran offers B/I/J/K prefixes to integer functions for compatibility with DEC programs. The types implied by each are:
B
-INTEGER(kind=1)
I
-INTEGER(kind=2)
J
-INTEGER(kind=4)
K
-INTEGER(kind=8)
GNU Fortran supports these with the flag -fdec-intrinsic-ints. Intrinsics for which prefixed versions are available and in what form are noted in Intrinsic Procedures. The complete list of supported intrinsics is here:
Intrinsic | B | I | J | K |
---|---|---|---|---|
ABS |
BABS |
IIABS |
JIABS |
KIABS |
BTEST |
BBTEST |
BITEST |
BJTEST |
BKTEST |
IAND |
BIAND |
IIAND |
JIAND |
KIAND |
IBCLR |
BBCLR |
IIBCLR |
JIBCLR |
KIBCLR |
IBITS |
BBITS |
IIBITS |
JIBITS |
KIBITS |
IBSET |
BBSET |
IIBSET |
JIBSET |
KIBSET |
IEOR |
BIEOR |
IIEOR |
JIEOR |
KIEOR |
IOR |
BIOR |
IIOR |
JIOR |
KIOR |
ISHFT |
BSHFT |
IISHFT |
JISHFT |
KISHFT |
ISHFTC |
BSHFTC |
IISHFTC |
JISHFTC |
KISHFTC |
MOD |
BMOD |
IMOD |
JMOD |
KMOD |
NOT |
BNOT |
INOT |
JNOT |
KNOT |
REAL |
-- |
FLOATI |
FLOATJ |
FLOATK |
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-10.2.0/gfortran/Type-variants-for-integer-intrinsics.html