Funny things abound... Negative numbers show up as positive, which can be
pretty -let's say- irritating in computational applications :)

I've managed to boil this down to the following example

PROGRAM Minus

  implicit none
  integer :: N
  real, pointer, dimension(:) :: XP => NULL()

  N = 2
  allocate(XP(N))

  XP = +1.23
  print *, "pos X = ", XP
  XP = -1.23
  print *, "neg X = ", XP

  print *, "zero = ", XP+1.23

END PROGRAM Minus

which produces the following output on an OpenSolaris 11 machine (note the
additional space)

 pos X =    1.2300000       1.2300000
 neg X =   1.23000002      1.23000002
 zero =    0.0000000       0.0000000

gfortran about himself (or itself?):
Target: i386-pc-solaris2.11
Configured with: ../gcc-4.3.1/configure --prefix=/usr/local/lang
--program-suffix=_4.3.1 --enable-64bit --with-as=/usr/local/bin/gnu-as
--with-ld=/usr/ccs/bin/ld --enable-version-specific-runtime-libs
--enable-languages=c,c++,fortran
Thread model: posix
gcc version 4.3.1 (GCC)

Any pointers?


-- 
           Summary: PRINT and WRITE eat minus sign
           Product: gcc
           Version: 4.3.1
            Status: UNCONFIRMED
          Severity: major
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: dennis dot wassel at googlemail dot com
  GCC host triplet: i386-pc-solaris2.11
GCC target triplet: i386-pc-solaris2.11


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

Reply via email to