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

            Bug ID: 110326
           Summary: [gcc 14.0 regression]
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: juergen.reuter at desy dot de
  Target Milestone: ---

Hi,
let me open up an issue already. I believe there was a regression introduced in
gcc between June 11 and June 19, as our CI with a git-clone built gcc worked
last week, and fails this week. Two out of our ca. 340 functional tests fail
because they return zero results. I will try to boil this down to a smaller
reproducer (fingers crossed), but if you want to play around already, checkout
our code from here:
https://gitlab.tp.nt.uni-siegen.de/whizard/public
Note that you need noweb and OCaml besides gcc/gfortran. Do in the main
directory ./build_master.sh and autoreconf, then in a build directory _build 
do ../configure, make -j4, make -C tests/functional_tests -j4 check.
The failing tests are nlo_9.run and nlo_10.run in case you want to run them
already now.
There was a change in the Fortran directly, by this commit below, but this was
not responsible for these failures. There was a lot of work on
tree-optimization in the middle-end (?) last week, so I fear this might have
caused this. At the moment I am struggling to boil down what is going on. 
Cheers,
    Juergen
The master branch has been updated by Harald Anlauf <anl...@gcc.gnu.org>:

https://gcc.gnu.org/g:c1691509e5a8875f36c068a5ea101bf13f140948

commit r14-1795-gc1691509e5a8875f36c068a5ea101bf13f140948
Author: Harald Anlauf <anl...@gmx.de>
Date:   Mon Jun 12 23:08:48 2023 +0200

    Fortran: fix passing of zero-sized array arguments to procedures [PR86277]

    gcc/fortran/ChangeLog:

            PR fortran/86277
            * trans-array.cc (gfc_trans_allocate_array_storage): When passing a
            zero-sized array with fixed (= non-dynamic) size, allocate
temporary
            by the caller, not by the callee.

    gcc/testsuite/ChangeLog:

            PR fortran/86277
            * gfortran.dg/zero_sized_14.f90: New test.
            * gfortran.dg/zero_sized_15.f90: New test.

    Co-authored-by: Mikael Morin <mik...@gcc.gnu.org>

Reply via email to