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.

Reply via email to