From 73793745269e8334807a606ea4d011215209ce0c Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Sun, 14 Dec 2008 06:58:38 +0000 Subject: [PATCH] re PR fortran/38504 (double minus sign when printing integer?) 2008-12-13 Jerry DeLisle PR libfortran/38504 * gfortran.dg/fmt_int_sign.f90: New test. From-SVN: r142748 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/fmt_int_sign.f90 | 16 ++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/fmt_int_sign.f90 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index b3a3277e81b..4cd90f02b0c 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-12-13 Jerry DeLisle + + PR libfortran/38504 + * gfortran.dg/fmt_int_sign.f90: New test. + 2008-12-13 Sebastian Pop * gcc.dg/graphite/pr38409.c: Fixed commit problem. diff --git a/gcc/testsuite/gfortran.dg/fmt_int_sign.f90 b/gcc/testsuite/gfortran.dg/fmt_int_sign.f90 new file mode 100644 index 00000000000..2257fd8296c --- /dev/null +++ b/gcc/testsuite/gfortran.dg/fmt_int_sign.f90 @@ -0,0 +1,16 @@ +! { dg-do run } +! { dg-options -fno-range-check } +! PR38504 double minus sign when printing integer +! Test case derived from example by Jos de Kloe +program IntAdtest + + integer, parameter :: i8_ = Selected_Int_Kind(18) ! = integer*8 + character(len=22) :: str_value + integer(i8_) :: value + character(len=*), parameter :: format_IntAd = "(i22)" + + value = -9223372036854775807_i8_ -1 + write(str_value, format_IntAd) value + if (str_value.ne." -9223372036854775808") call abort + +end program IntAdtest -- 2.30.2