[Fortran-dev] Merged from trunk; [patch, committed] ISO_Fortran_binding.h

Tobias Burnus burnus@net-b.de
Tue Mar 6 17:02:00 GMT 2012


Dear Paul, dear all,

I have merged (Rev. 184999) the trunk (Rev. 184980) to the fortran-dev 
branch, which now followed GCC 4.8.

Additionally, I have committed to the fortran-dev branch (Rev. 185004) 
the first rough and incomplete version of ISO_Fortran_binding.h, which 
tries to follow TS 29113. In terms of the generated code, it should 
mostly be a no op, except that GFC_DIMENSION_SET now also sets the extent.

(See attachment. I wrote it some weeks ago, but I think it makes sense 
to have it already in svn despite its embryonic state.)

The library currently does not set "sm" - thus, it breaks if the 
compiler itself expects this. The library currently also only handles 
the old ubound/stride - thus, if the compiler does not properly set 
those, it will also fail. I have not checked what the compiler currently 
uses. At least in simple cases, it sets both the old ubound/stride and 
the new sm/extent.

The "sm" information needs the element size in bytes. In order to obtain 
it, it is insufficient to modify only libgfortran.h's macros - thus, a 
larger patch is required. Most convenient would be if one could directly 
convert the code to only use sm/extent, but it should be also possible 
to write the code such that also ubound/stride are set.

But before starting this, the compiler itself needs to be in a 
reasonable state such that one can easily assign the breakage. - It 
might be, but I have not looked at the generated code for more than a 
year. - Additional, new code (inline sum and other features) might have 
to be first updated, though, updating after the library changes might be 
also possible.

Tobias

PS: I do *not* intent to work on fortran-dev in the next weeks. However, 
I might work on it during the 4.8 development.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: commit.diff
Type: text/x-patch
Size: 8795 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20120306/0f07913e/attachment.bin>


More information about the Fortran mailing list