[Patch,fortran] PR 27740 Symbol versioning for libgfortran

Janne Blomqvist Janne.Blomqvist@tkk.fi
Sat Nov 4 12:38:00 GMT 2006


Hi,

the attached patch implements symbol versioning for libgfortran. At the 
same time it does some namespace cleanup, so that all the exported 
symbols have names beginning with _gfortran_.

Originally my plan was to wait for the ISO_C_BINDING to do the namespace 
cleanup of the intrinsics that are written in Fortran (the problem is 
that standard Fortran does not allow symbol names to begin with "_"), 
but after discussing this with FX on #gcc we agreed that there is a risk 
that ISO_C_BINDING won't be ready to get into 4.3, especially if we want 
to follow the normal gcc rules.  So instead we decided to implement a 
(undocumented, for gfortran internal use only) command line option 
-fallow-leading-underscore. FX implemented this as well as the namespace 
cleanup, but I don't think he ever submitted the patch to the mailing 
list, so it's included here as part of this patch.

In addition to the patch, I'm attaching the new file 
libgfortran/gfortran.map, as well as the script I used to create the map 
file.

The F2C stuff is versioned separately, the idea being that the F2C ABI 
should not change even though we certainly want to improve the gfortran 
ABI in the future.

Ok for trunk? 4.2?

-- 
Janne Blomqvist
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ChangeLog
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061104/ec5a8ade/attachment.ksh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: createmap.sh
Type: application/x-shellscript
Size: 490 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061104/ec5a8ade/attachment.bin>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gfortran.map
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061104/ec5a8ade/attachment-0001.ksh>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: symvers.diff
Type: text/x-patch
Size: 17478 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061104/ec5a8ade/attachment-0001.bin>


More information about the Gcc-patches mailing list