[Patch, Fortran] Two minor tweaks for type-bound procedure parsing

Tobias Burnus burnus@net-b.de
Mon Aug 25 18:45:00 GMT 2008


Hi Dennis,

Dennis Wassel wrote:
> 2008/8/25 Tobias Burnus <burnus@net-b.de>:
>   
>> [snip]
>> PS: g95 now started to support REAL(kind=16) on x86/x86-64 hardware [so far
>> only +, -, *, /].
>>     
> Are there any plans to include that into gfortran anytime soon? ifort
> has been supporting that for at least one minor version AFAIK, and I
> remember missing it in gfortran.
>   
Yes, there are plans, but there are only plans. And FX who thought at 
looking at it, now dropped out due to lack of time.

REAL(16) needs to be done in software -- on x86, x86-64 -- as it is not 
supported in hardware; if you want to use more than REAL(8) on x86, 
x86-64 you can use REAL(10). Or you use a system such as PowerPC which 
supports REAL(16) in silicon.

See also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32049
Issues:
a) Everywhere is assumed that either REAL(10) or REAL(16) is supported, 
but never both
b) Going beyond +-*/ (e.g. supporting cos()) requires some additional 
library work (ldbl-128 in glibc?)

> So much to do, so little time, I know, and I'd even start on that
> myself, if it wasn't _miles_ above my head. Got enough on my plate
> with my first simple patch right now :-)
>   
Starting small, increasing project size slowly and having far reaching 
dreams is ok ;-)

Still, I currently prefer to have Fortran 2003's OOP working to having a 
software emulated REAL(16) - especially since I almost never even use 
REAL(10).

Tobias



More information about the Fortran mailing list