This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
[Patch, Fortran] PR39594 - 4.3/4.4 regression with COMMON variable as actual argument
- From: Tobias Burnus <burnus at net-b dot de>
- To: "'fortran at gcc dot gnu dot org'" <fortran at gcc dot gnu dot org>, gcc-patches <gcc-patches at gcc dot gnu dot org>, Jakub Jelinek <jakub at redhat dot com>
- Date: Thu, 02 Apr 2009 21:20:42 +0200
- Subject: [Patch, Fortran] PR39594 - 4.3/4.4 regression with COMMON variable as actual argument
Hello all,
as Jakub has found out the problem was introduced when procedure
pointers in COMMON were supported. Before every COMMON member was had
also the flavour FL_VARIABLE, but with procpointer it stayed FL_UNKNOWN.
The patch does do two things:
a) It added the FL_VARIABLE flavour in resolve.c - here one already
knows that it can never become a proc pointer. (That patch is nice, but
it does not help with the regression; I still think it belongs there for
completeness.)
b) It does something similar in primary.c. It took me a while to realize
that although sym->referenced is set, this does not become fully active
as for FL_UNKNOWN some settings are reset. Again, setting the flavour is
not needed, but I think it is cleaner to do so before doing a "break".
Build and being regtested on x86-64-linux. OK for the 4.5 trunk and for
the 4.4? (I assume there is nothing from the RM side which speaks
against it?)
Tobias