[fortran,patch] Complete front-end support for __float128

FX fxcoudert@gmail.com
Thu Aug 26 15:00:00 GMT 2010


> Why do you need a flag at all?  Simply support real(kind=16).

Indeed, I'm not sure what's the right course. I'll be glad to have other maintainers' opinion on that.

Some people have codes, in standard Fortran, that autodetect the floating-point mode with the largest precision and use that. If we introduce soft-float modes, they might be annoyed as everything slows down immensely... and they have no way to detect "the most precise hardware-supported floating-point type".

Also, take a user that doesn't have the quad-math library we're talking about. They could install everything, and then their code might not even compile any more.

On the other hand, I suppose that most people actually hardcode kind numbers rather than use carefully crafted selected_real_kind calls, so it may not be such a big deal.

> And why should having both real(kind=10) and real(kind=16) be a problem?

For a long time, the gfortran sources (front-end, library and tests) assumed that there existed at most 3 fp types, corresponding to float, double and long double, and that long double's width was either 80 or 128 bits. It's just some one remaining place where I cleaned up this assumption.



More information about the Fortran mailing list