[PATCH 0/2] fortran: Ignore unused arguments for scalarisation [PR97896]

Mikael Morin mikael@gcc.gnu.org
Sat Aug 7 18:32:58 GMT 2021


This is a variant of the patch series previously posted for master at [1], without patches 1 to 5.
It has a more limited impact, which makes it more suitable for the release branches.

The problematic case is intrinsic procedures where an argument is actually not used in the code generated (KIND argument of INDEX in the testcase), which confuses the scalariser.

Thomas König comitted a change to workaround the problem, but it regressed in PR97896.  These patch put the workaround where I think it is more appropriate, namely at the beginning of the scalarisation procedure.  This is the patch 2 of the series, preceded with the revert in patch 1.  I intend to commit both of them squashed together.

Regression-tested on x86_64-linux-gnu.  Ok for 11 branch? 

[1] https://gcc.gnu.org/pipermail/fortran/2021-August/056317.html

Mikael Morin (2):
  Revert "Remove KIND argument from INDEX so it does not mess up
  fortran: Ignore unused args in scalarization [PR97896]

 gcc/fortran/intrinsic.c               | 48 +++------------------
 gcc/fortran/intrinsic.h               |  3 +-
 gcc/fortran/iresolve.c                | 21 ++-------
 gcc/fortran/trans-array.c             | 61 ++++++++++++++++++++++++++-
 gcc/fortran/trans-array.h             |  3 ++
 gcc/fortran/trans-decl.c              | 24 +----------
 gcc/fortran/trans-intrinsic.c         |  1 +
 gcc/fortran/trans-stmt.c              | 20 +++++++++
 gcc/testsuite/gfortran.dg/index_5.f90 | 23 ++++++++++
 9 files changed, 121 insertions(+), 83 deletions(-)
 create mode 100644 gcc/testsuite/gfortran.dg/index_5.f90


More information about the Gcc-patches mailing list