diff options
author | Dominique d'Humieres <dominiq@gcc.gnu.org> | 2019-02-25 11:39:38 +0100 |
---|---|---|
committer | Dominique d'Humieres <dominiq@gcc.gnu.org> | 2019-02-25 11:39:38 +0100 |
commit | b8f412849b4fbc170fcc9cf1053d44cfc4165d48 (patch) | |
tree | 7a14a1e55cc678a1246745695bee936a3f34cc4c /gcc | |
parent | 5c561248378ab07fb2abd6766b16572d8b903545 (diff) | |
download | gcc-b8f412849b4fbc170fcc9cf1053d44cfc4165d48.zip gcc-b8f412849b4fbc170fcc9cf1053d44cfc4165d48.tar.gz gcc-b8f412849b4fbc170fcc9cf1053d44cfc4165d48.tar.bz2 |
re PR libfortran/89274 (Inconsistent list directed output of INTEGER(16))
2019-02-25 Dominique d'Humieres <dominiq@gcc.gnu.org>
PR libfortran/89274
* gfortran.dg/list_directed_large.f90: New test.
2019-02-25 Dominique d'Humieres <dominiq@gcc.gnu.org>
PR libfortran/89274
* io/write.c (write_integer): Add width for INTEGER(16).
From-SVN: r269187
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/list_directed_large.f90 | 16 |
2 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 70e692b..bbe27aa 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-02-25 Dominique d'Humieres <dominiq@gcc.gnu.org> + + PR libfortran/89274 + * gfortran.dg/list_directed_large.f90: New test. + 2019-02-25 Jakub Jelinek <jakub@redhat.com> PR target/89434 diff --git a/gcc/testsuite/gfortran.dg/list_directed_large.f90 b/gcc/testsuite/gfortran.dg/list_directed_large.f90 new file mode 100644 index 0000000..ab631d7 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/list_directed_large.f90 @@ -0,0 +1,16 @@ +! { dg-do run } +! { dg-require-effective-target fortran_large_int } +! PR libfortran/89274 Inconsistent list directed output of INTEGER(16) +! +integer(16) :: j(2) +character(82) :: str +j = huge(1_16) +write(str,*) j +if (str /= " 170141183460469231731687303715884105727 170141183460469231731687303715884105727") stop 1 +j = 1 +write(str,*) j +if (str /= " 1 1") stop 2 +j = -huge(1_16) +write(str,*) j +if (str /= " -170141183460469231731687303715884105727 -170141183460469231731687303715884105727") stop 3 +end |