https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92482
Ivan Tubert-Brohman <ivan.tubert-brohman at schrodinger dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ivan.tubert-brohman@schrodi | |nger.com --- Comment #3 from Ivan Tubert-Brohman <ivan.tubert-brohman at schrodinger dot com> --- I also encountered this issue. I was trying the example given by Metcalf et al. on _Modern Fortran Explained_ (2018), section 21.4, "Assumed character length": interface subroutine err_msg(string) bind(c) use iso_c_binding character(*, c_char), intent(in):: string end subroutine err_msg end interface The example worked with the Intel Fortran compiler, but with gfortran 11.1 I get Error: Character argument ‘string’ at (1) must be length 1 because procedure ‘err_msg’ is BIND(C) I only comment to confirm that both a famous author and an alternative compiler implementation agree with the interpretation of the standard that this should work. :-)