Minor typo, see below.
On 9/22/18 10:23 AM, Thomas Koenig wrote:
Hello world,
the attached patch lets the middle-end know that variables
associated with intent(out) arguments become undefined, by
issuing an assignment to a special value (a "clobber")
before entering the procedure.
Originally, I had also planned to do so on entry to the
procedure, see https://gcc.gnu.org/ml/fortran/2018-09/msg00148.html .
This turned out to cause regressions; some details are outlined
in the PR.
Regression-tested. OK for trunk?
! { dg-do compile }
! { dg-options "-O -fno-inline -fdump-tree-optimized -fdump-tree-original" }
! PR fortran/41453
! Check that there is one clobber in the *.original tree, plus that
! the constant 123456789 has been removed tue to the INTENT(OUT).
s/tue/due/
and
program main
use x
implicit none
integer :: a
a = 12345689 <---- missing 7 digit?
call foo(a)
print *,a
end program main
Otherwise OK.
Jerry