[Bug libfortran/48852] Invalid spaces in list-directed output of complex constants

jb at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu May 5 12:22:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48852

--- Comment #5 from Janne Blomqvist <jb at gcc dot gnu.org> 2011-05-05 12:11:02 UTC ---
(In reply to comment #4)
> (In reply to comment #3)
> > neither 0PFw.d nor 1PEw.dEe allow it). However, AFAICS leading blanks are still
> > allowed as they are part of the real parts, the prohibition against embedded
> > blanks in the complex output refer only to blanks other than the ones present
> > in the real fields, no?
> 
> As much as I'd like to, I cannot agree:
> 
> "The only embedded blanks permitted within a complex constant are between the
> separator and the end of a record and one blank at the beginning of the next
> record."
> 
> An "embedded blank within a complex constant" is any blank which neither leads
> the complex constant nor trails it; in other words, any space between the left
> and the right parenthesis. It is not permitted, except around record breaks.

Thinking about this some more, I think you're right. If not, the processor
could after all choose w such that any amount of leading blanks are present,
thus rendering more or less the entire rule forbidding embedded blanks (except
at those 2 specified locations if the constant straddles a record boundary)
meaningless.

I asked c.l.f, lets see if someone knowledgeable disagrees..

> If it is important, we can still ensure the tabular alignment of complex fields
> by right-flushing them in a field of width 2*w+3, where w is the width for a
> real constant.

Yes, I suppose this is what must be done.



More information about the Gcc-bugs mailing list