]> gcc.gnu.org Git - gcc.git/commit
Fortran: Assumed and explicit size class arrays [PR46691/99819].
authorPaul Thomas <pault@gcc.gnu.org>
Thu, 6 May 2021 13:41:33 +0000 (14:41 +0100)
committerPaul Thomas <pault@gcc.gnu.org>
Thu, 6 May 2021 13:42:59 +0000 (14:42 +0100)
commita2c593009fef1564dbef2237ee71e9fd08f5361e
tree131946c90eb097b53e49ef36e78730199828d238
parenteb1aa9ad2afbcd8f3e939310d5785ff8563a8c5c
Fortran: Assumed and explicit size class arrays [PR46691/99819].

2021-05-06  Paul Thomas  <pault@gcc.gnu.org>

gcc/fortran/ChangeLog

PR fortran/46691
PR fortran/99819
* class.c (gfc_build_class_symbol): Remove the error that
disables assumed size class arrays. Class array types that are
not deferred shape or assumed rank are given a unique name and
placed in the procedure namespace.
* trans-array.c (gfc_trans_g77_array): Obtain the data pointer
for class arrays.
(gfc_trans_dummy_array_bias): Suppress the runtime error for
extent violations in explicit shape class arrays because it
always fails.
* trans-expr.c (gfc_conv_procedure_call): Handle assumed size
class actual arguments passed to non-descriptor formal args by
using the data pointer, stored as the symbol's backend decl.

gcc/testsuite/ChangeLog

PR fortran/46691
PR fortran/99819
* gfortran.dg/class_dummy_6.f90: New test.
* gfortran.dg/class_dummy_7.f90: New test.
gcc/fortran/class.c
gcc/fortran/trans-array.c
gcc/fortran/trans-expr.c
gcc/testsuite/gfortran.dg/class_dummy_6.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/class_dummy_7.f90 [new file with mode: 0644]
This page took 0.07005 seconds and 6 git commands to generate.