From c71f01a9d64d464d575d4a53547cbb78877f75eb Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 16 Feb 2011 18:18:41 +0100 Subject: re PR libfortran/47757 (Unintentionally? not exported _gfortran_* symbols in libgfortran.so.3) PR libfortran/47757 * gfortran.map (GFORTRAN_1.4): Export _gfortran_{m,s}i{all,any,parity}_i{1,2,4,8,16} and _gfortran_{cshift0,eoshift{0,2}}_16_char4. * gfortran.dg/pr47757-1.f90: New test. * gfortran.dg/pr47757-2.f90: New test. * gfortran.dg/pr47757-3.f90: New test. From-SVN: r170215 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/pr47757-1.f90 | 40 +++++++++++++++++++++++++++++++++ gcc/testsuite/gfortran.dg/pr47757-2.f90 | 16 +++++++++++++ gcc/testsuite/gfortran.dg/pr47757-3.f90 | 12 ++++++++++ 4 files changed, 73 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/pr47757-1.f90 create mode 100644 gcc/testsuite/gfortran.dg/pr47757-2.f90 create mode 100644 gcc/testsuite/gfortran.dg/pr47757-3.f90 (limited to 'gcc') diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 619292c..a25d496 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2011-02-16 Jakub Jelinek + PR libfortran/47757 + * gfortran.dg/pr47757-1.f90: New test. + * gfortran.dg/pr47757-2.f90: New test. + * gfortran.dg/pr47757-3.f90: New test. + PR c++/47704 * g++.dg/cpp0x/enum8.C: New test. diff --git a/gcc/testsuite/gfortran.dg/pr47757-1.f90 b/gcc/testsuite/gfortran.dg/pr47757-1.f90 new file mode 100644 index 0000000..1c40f98 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr47757-1.f90 @@ -0,0 +1,40 @@ +! PR libfortran/47757 +! { dg-do run } + + integer(1) :: a1(2,2) + integer(2) :: a2(2,2) + integer(4) :: a4(2,2) + integer(8) :: a8(2,2) + logical :: mask(2,2) + logical :: mask2 + a1 = 0 + a2 = 0 + a3 = 0 + a4 = 0 + mask2 = .true. + mask = reshape([.true.,.true.,.false.,.true.],[2,2]) + print *, iany(a1, dim=1, mask=mask) + print *, iany(a2, dim=1, mask=mask) + print *, iany(a4, dim=1, mask=mask) + print *, iany(a8, dim=1, mask=mask) + print *, iall(a1, dim=1, mask=mask) + print *, iall(a2, dim=1, mask=mask) + print *, iall(a4, dim=1, mask=mask) + print *, iall(a8, dim=1, mask=mask) + print *, iparity(a1, dim=1, mask=mask) + print *, iparity(a2, dim=1, mask=mask) + print *, iparity(a4, dim=1, mask=mask) + print *, iparity(a8, dim=1, mask=mask) + print *, iany(a1, dim=1, mask=mask2) + print *, iany(a2, dim=1, mask=mask2) + print *, iany(a4, dim=1, mask=mask2) + print *, iany(a8, dim=1, mask=mask2) + print *, iall(a1, dim=1, mask=mask2) + print *, iall(a2, dim=1, mask=mask2) + print *, iall(a4, dim=1, mask=mask2) + print *, iall(a8, dim=1, mask=mask2) + print *, iparity(a1, dim=1, mask=mask2) + print *, iparity(a2, dim=1, mask=mask2) + print *, iparity(a4, dim=1, mask=mask2) + print *, iparity(a8, dim=1, mask=mask2) +end diff --git a/gcc/testsuite/gfortran.dg/pr47757-2.f90 b/gcc/testsuite/gfortran.dg/pr47757-2.f90 new file mode 100644 index 0000000..1f8a08f --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr47757-2.f90 @@ -0,0 +1,16 @@ +! PR libfortran/47757 +! { dg-do run { target fortran_large_int } } + + integer(16) :: a16(2,2) + logical :: mask(2,2) + logical :: mask2 + a16 = 0 + mask2 = .true. + mask = reshape([.true.,.true.,.false.,.true.],[2,2]) + print *, iany(a16, dim=1, mask=mask) + print *, iall(a16, dim=1, mask=mask) + print *, iparity(a16, dim=1, mask=mask) + print *, iany(a16, dim=1, mask=mask2) + print *, iall(a16, dim=1, mask=mask2) + print *, iparity(a16, dim=1, mask=mask2) +end diff --git a/gcc/testsuite/gfortran.dg/pr47757-3.f90 b/gcc/testsuite/gfortran.dg/pr47757-3.f90 new file mode 100644 index 0000000..9bfad82 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr47757-3.f90 @@ -0,0 +1,12 @@ +! PR libfortran/47757 +! { dg-do run { target fortran_large_int } } + + character(kind=4):: str(3,3), s(3) + str(1,:) = [4_'A', 4_'b', 4_'C'] + str(2,:) = [4_'A', 4_'b', 4_'C'] + str(3,:) = [4_'A', 4_'b', 4_'C'] + s = 4_'A' + print *, cshift(str, shift=2_16, dim=1_16) + print *, eoshift(str, shift=2_16, dim=1_16) + print *, eoshift(str, shift=2_16, boundary=s, dim=1_16) +end -- cgit v1.1