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