This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, fortran] PR27269 and PR27324 - Module equivalences


Quoting Paul Thomas <Paul.Thomas@jet.uk>:
OK for trunk and 4.1?

The patch looks sound to me, but I couldn't test it with my code, because I currently can't build gcc. Nevertheless, from only evaluating it passively, it's ok with one minor issue:


+    for (eq = head; eq; eq = eq->eq)
+      {
+        if (!(eq && eq->expr && eq->expr->symtree))

eq != NULL is already ensured by the loop condition, and shouldn't eq->expr == NULL be an internal error?

2006-04-28 Paul Thomas <pault@gcc.gnu.org>

	PR fortran/27269
	* module.c: Add static flag in_load_equiv.
	(mio_expr_ref): Return if no symtree and in_load_equiv.
	(load_equiv): If any of the equivalence members have no symtree, free
	the equivalence and the associated expressions.

	PR fortran/27324
	* trans-common.c (gfc_trans_common): Invert the order of calls to
	finish equivalences and gfc_commit_symbols.


2006-04-28 Paul Thomas <pault@gcc.gnu.org>


	PR fortran/27269
	PR fortran/27324
	* gfortran.dg/module_equivalence_2.f90: New test.


----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]