From dd9eb0f70e0267f2dddd880332dfb28ee0203470 Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Sat, 26 Apr 2014 21:56:48 +0000 Subject: [PATCH] re PR libfortran/52539 (I/O: Wrong result for UTF-8/UCS-4 list-directed and namelist read and nml write) 2014-04-26 Jerry DeLisle PR libfortran/52539 * gfortran.dg/namelist_utf8.f90: New test. From-SVN: r209829 --- gcc/testsuite/ChangeLog | 5 ++++ gcc/testsuite/gfortran.dg/namelist_utf8.f90 | 30 +++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/namelist_utf8.f90 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4ed1b38c9ed6..7d01d44e3696 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2014-04-26 Jerry DeLisle + + PR libfortran/52539 + * gfortran.dg/namelist_utf8.f90: New test. + 2014-04-26 Uros Bizjak * gcc.dg/tree-ssa/alias-30.c (dg-options): Dump only fre1 details. diff --git a/gcc/testsuite/gfortran.dg/namelist_utf8.f90 b/gcc/testsuite/gfortran.dg/namelist_utf8.f90 new file mode 100644 index 000000000000..c494b8c3b772 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/namelist_utf8.f90 @@ -0,0 +1,30 @@ +! { dg-do run } +! PR52539 UTF-8 support for namelist read and write + +character(len=10, kind=4) :: str, str2 +character(len=25, kind=4) :: str3 + +namelist /nml/ str + +str = 4_'a'//char (int (z'4F60'),4) & + //char (int (z'597D'), 4)//4_'b' + +open(99, encoding='utf-8',form='formatted') +write(99, '(3a)') '&nml str = "', str, '" /' +write(99, '(a)') str +rewind(99) + +str = 4_'XXXX' +str2 = 4_'YYYY' +read(99,nml=nml) +read(99, *) str2 +if (str2 /= str) call abort +rewind(99) + +read(99,'(A)') str3 +if (str3 /= 4_'&nml str = "' // str // 4_'" /') call abort +read(99,'(A)') str3 +if (str3 /= str) call abort + +close(99, status='delete') +end -- 2.47.3