[Patch, fortran] PR38657 - [4.4, 4.3 Regression] PUBLIC/PRIVATE Common blocks

Paul Richard Thomas paul.richard.thomas@gmail.com
Sat Jan 17 12:32:00 GMT 2009


The original fix for this had to be removed because, as Harald Anlauf
pointer out, it inflated the size of module files by including all the
common blocks, even if they were inaccessible.

Given the mechanism of the original fix and the need to give priority
to common blocks that are not use associated, the attached patch
evolved and can be said now to be 'obvious'.

Bootstraps and regtests on trunk and 4.3 with FC9/x86_64.

The module files have been verified for both branches.

I have applied it to trunk as revision 143463.  Given Richard's desire
to get 4.3.3 out of the door, should I also apply to the 4.3 branch?

Cheers

Paul

2009-01-17  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/38657
	* module.c (write_common_0): Add argument 'this_module' and
	check that non-use associated common blocks are written first.
	(write_common): Call write_common_0 twice, once with true and
	then with false.

2009-01-17  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/38657
	* gfortran.dg/module_commons_3.f90: Reapply.


-- 
The knack of flying is learning how to throw yourself at the ground and miss.
       --Hitchhikers Guide to the Galaxy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: submit.diff
Type: application/octet-stream
Size: 3221 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20090117/c3b0ee3a/attachment.obj>


More information about the Gcc-patches mailing list