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-7.2.0/gfortran/Type-variants-for-integer-intrinsics.html