]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
module.c (mio_gmp_real): Correct writing of negative numbers.
authorTobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
Tue, 29 Jun 2004 17:21:37 +0000 (19:21 +0200)
committerTobias Schlüter <tobi@gcc.gnu.org>
Tue, 29 Jun 2004 17:21:37 +0000 (19:21 +0200)
fortran/
* module.c (mio_gmp_real): Correct writing of negative numbers.

testsuite/
* gfortran.fortran-torture/execute/parameter_2.f90: New test.

Also corrected dates in previous ChangeLog entries

From-SVN: r83862

gcc/fortran/ChangeLog
gcc/fortran/module.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f90 [new file with mode: 0644]

index 9193234effc4cf9fd504282e11f24084b88b5265..e3df360f717551e44084b097be9646a05d7e0c96 100644 (file)
@@ -1,4 +1,8 @@
-2004-06-22  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * module.c (mio_gmp_real): Correct writing of negative numbers.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
 
        PR fortran/15963
        * expr.c (check_intrinsic_op): Allow comparison of characters.
index eace654810a5f476c174c6cd0bab77b4ca41633a..cf8f453400adbc6c8a2375d98818dd157cc96228 100644 (file)
@@ -2274,6 +2274,15 @@ mio_gmp_real (mpf_t * real)
       atom_string = gfc_getmem (strlen (p) + 20);
 
       sprintf (atom_string, "0.%s@%ld", p, exponent);
+
+      /* Fix negative numbers.  */
+      if (atom_string[2] == '-')
+       {
+         atom_string[0] = '-';
+         atom_string[1] = '0';
+         atom_string[2] = '.';
+       }
+
       write_atom (ATOM_STRING, atom_string);
 
       gfc_free (atom_string);
index ae3a5d2c1b009ca3fae491a12d7dcfab15d60004..4589808a7d340bd952ab25eacc152ba1f1e60728 100644 (file)
@@ -1,4 +1,8 @@
-2004-06-25  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * gfortran.fortran-torture/execute/parameter_2.f90: New test.
+
+2004-06-29  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>
 
        PR fortran/15963
        * gfortran.fortran-torture/execute/initialization_1.f90: New test.
diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f90 b/gcc/testsuite/gfortran.fortran-torture/execute/parameter_2.f90
new file mode 100644 (file)
index 0000000..1e97104
--- /dev/null
@@ -0,0 +1,7 @@
+module m
+  parameter (p = -1.) ! negative numbers used to get output incorrectly
+end module m
+
+use m
+if (p .ne. -1.) CALL abort()
+end