diff options
author | Jakub Jelinek <jakub@redhat.com> | 2011-02-16 18:18:41 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2011-02-16 18:18:41 +0100 |
commit | c71f01a9d64d464d575d4a53547cbb78877f75eb (patch) | |
tree | 134175c892c419e296a230bcc87cfa3f64f6777a | |
parent | 65aab64fe9dce548577013326d08606ade204751 (diff) | |
download | gcc-c71f01a9d64d464d575d4a53547cbb78877f75eb.zip gcc-c71f01a9d64d464d575d4a53547cbb78877f75eb.tar.gz gcc-c71f01a9d64d464d575d4a53547cbb78877f75eb.tar.bz2 |
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
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr47757-1.f90 | 40 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr47757-2.f90 | 16 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr47757-3.f90 | 12 | ||||
-rw-r--r-- | libgfortran/ChangeLog | 7 | ||||
-rw-r--r-- | libgfortran/gfortran.map | 33 |
6 files changed, 113 insertions, 0 deletions
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 <jakub@redhat.com> + 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 diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 18daa42..44a562a 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,10 @@ +2011-02-16 Jakub Jelinek <jakub@redhat.com> + + 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. + 2011-02-15 Tobias Burnus <burnus@net-b.de> PR fortran/47716 diff --git a/libgfortran/gfortran.map b/libgfortran/gfortran.map index 359f6a8..211db00 100644 --- a/libgfortran/gfortran.map +++ b/libgfortran/gfortran.map @@ -1122,16 +1122,46 @@ GFORTRAN_1.4 { _gfortran_iall_i4; _gfortran_iall_i8; _gfortran_iall_i16; + _gfortran_miall_i1; + _gfortran_miall_i2; + _gfortran_miall_i4; + _gfortran_miall_i8; + _gfortran_miall_i16; + _gfortran_siall_i1; + _gfortran_siall_i2; + _gfortran_siall_i4; + _gfortran_siall_i8; + _gfortran_siall_i16; _gfortran_iany_i1; _gfortran_iany_i2; _gfortran_iany_i4; _gfortran_iany_i8; _gfortran_iany_i16; + _gfortran_miany_i1; + _gfortran_miany_i2; + _gfortran_miany_i4; + _gfortran_miany_i8; + _gfortran_miany_i16; + _gfortran_siany_i1; + _gfortran_siany_i2; + _gfortran_siany_i4; + _gfortran_siany_i8; + _gfortran_siany_i16; _gfortran_iparity_i1; _gfortran_iparity_i2; _gfortran_iparity_i4; _gfortran_iparity_i8; _gfortran_iparity_i16; + _gfortran_miparity_i1; + _gfortran_miparity_i2; + _gfortran_miparity_i4; + _gfortran_miparity_i8; + _gfortran_miparity_i16; + _gfortran_siparity_i1; + _gfortran_siparity_i2; + _gfortran_siparity_i4; + _gfortran_siparity_i8; + _gfortran_siparity_i16; _gfortran_norm2_r4; _gfortran_norm2_r8; _gfortran_norm2_r10; @@ -1154,6 +1184,9 @@ GFORTRAN_1.4 { _gfortran_transfer_real_write; _gfortran_transfer_real128; _gfortran_transfer_real128_write; + _gfortran_cshift0_16_char4; + _gfortran_eoshift0_16_char4; + _gfortran_eoshift2_16_char4; } GFORTRAN_1.3; F2C_1.0 { |