Hi,

the following program shows that the X edit descriptor
can get "lost" when splitting a WRITE with ADVANCE="NO":

      program x_with_advance_bug
c This variant works as expected,
      write (*,'(A,"  ")',advance="no") "<"
      write (*,'(A)') ">"
c while this one misses the 2X:
      write (*,'(A,2X)',  advance="no") "<"
      write (*,'(A)') ">"
c These two give identical, correct results
      write (*,'(A,"  ",A)') "<", ">"
      write (*,'(A,2X,A)'  ) "<", ">"
      end

I get:

<  >
<>
<  >
<  >

The second output is wrong.  See the F2003 standard, section
10.7.1 on position editing.

Cheers,
-ha


-- 
           Summary: X edit descriptor lost with ADVANCE="NO"
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libfortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: anlauf at gmx dot de
  GCC host triplet: i686-pc-linux-gnu


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

Reply via email to