https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100906
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |burnus at gcc dot gnu.org --- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> --- I have committed: r12-2431-gb3d4011ba10275fbd5d6ec5a16d5aaebbdfb5d3c https://gcc.gnu.org/pipermail/gcc-patches/2021-July/575729.html which should fix most diagnostic issues with character len /= 1 – except for: * len=0 – in my understanding, that's valid when using a descriptor but not when passing the argument as address to the byte stream -> with current patch not rejected. * const-length > 1 module variables with BIND(C). Those should now be valid as well, but that was not touched by this patch. Regarding len=0 and other things, see also thread starting at https://mailman.j3-fortran.org/pipermail/j3/2021-July/013189.html * * * Other TODO with regards to things diagnostic in my patch: * See 'sorry' in the patch and in the testsuite. Namely: len=* and len=: require an array descriptor, but for scalars and (len=*, only) for assumed/explicit-size arrays no descriptor is used. (Hence, the code aborts with an error) -> Requires an update both for the call and for the function type and for the function interface declaration. * * * Attached/submitted patch by José: There is a minor overlap to my committed patch and some overlap to the issues listed above, but I have not sorted it out, yet.