https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69368

Thomas Koenig <tkoenig at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |major

--- Comment #68 from Thomas Koenig <tkoenig at gcc dot gnu.org> ---
The problem here is that there is a large existing codebase
which depends on memory management which was

- illegal from the start

- the only game in town if you wanted to do any
  sort of dynamic memory management.

because FORTRAN 66 and 77 explicitly forbade any sort
of dynamic memory management. We can lament the fact
fifty years later, but we cannot change it.

The idea was to use

      COMMON /FOO/ A(1)

in a subroutine (even a library), and use

      COMMON /FOO/ A(10000)

or whatever 'dynamic' size you needed for your memory
in the main program.

This idiom appears to be common enough that, if we
don't support it, or support it only with a severe
performance penalty, we will simply push people away from
gfortran.

Reply via email to