[Patch, Fortran] PR34342 - BOZ diagnostic, Fortran 2003 BOZ, BOZ extensions
Sat Dec 8 02:02:00 GMT 2007
Tobias Burnus wrote:
> :ADDPATCH fortran:
> This patch adds:
> a) Fortran 2003 BOZ, i.e. real(boz), dble(boz),
> cmplx(boz,y)/cmplx(x,boz) are treated as if the BOZ had been TRANSFERed.
> b) Using BOZ in DATA statements to initialize non-integer variables
> gives now an error with -std=f95/f2003
> c) Using BOZ in DATA statement for non-integer variables, now TRANSFERs
> the bit pattern and does not convert the integer value to be compatible
> with several other compilers. (Only for REAL and COMPLEX variables.)
> d) Using "real r = boz" now also TRANSFERs the bit pattern as long as
> there is no expression on the right-hand side; i.e. in "real r = boz +
> 1" the boz is regarded as integer. (For expressions with BOZ, different
> compilers behave quite differently.)
> e) Improve the BOZ documentation by (1) telling more about BOZ and (2)
> by making clear how gfortran extends the standard syntax.
> If anyone has an idea how to reject with -f2003 BOZ of the following
> type I'd be happy:
> r = z'1234' + 1.0
> Build and regression tested on x86-64-linux.
> OK for the trunk?
I have not had a chance to review yet. Maybe tomorrow. Is this getting into
the new features area that should wait for 4.4 branch? Or is it really a bug?
I have similar question for the reading of "NaN" and "Infinity" patch.
More information about the Gcc-patches