re PR fortran/36590 (internal error: Can't convert LOGICAL(1) to LOGICAL(1))
2008-07-02 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/36590 PR fortran/36681 * iresolve.c (resolve_mask_arg): Don't convert mask to kind=1 logical if it is of that type already. 2008-07-02 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/36590 PR fortran/36681 * gfortran.dg/count_mask_1.f90: New test. From-SVN: r137355
This commit is contained in:
parent
795a337af6
commit
04f2b60625
4 changed files with 22 additions and 1 deletions
|
@ -1,3 +1,10 @@
|
|||
2008-07-02 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||||
|
||||
PR fortran/36590
|
||||
PR fortran/36681
|
||||
* iresolve.c (resolve_mask_arg): Don't convert mask to
|
||||
kind=1 logical if it is of that type already.
|
||||
|
||||
2008-06-29 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||||
|
||||
PR fortran/36341
|
||||
|
|
|
@ -106,7 +106,7 @@ resolve_mask_arg (gfc_expr *mask)
|
|||
/* In the library, we access the mask with a GFC_LOGICAL_1
|
||||
argument. No need to waste memory if we are about to create
|
||||
a temporary array. */
|
||||
if (mask->expr_type == EXPR_OP)
|
||||
if (mask->expr_type == EXPR_OP && mask->ts.kind != 1)
|
||||
{
|
||||
ts.type = BT_LOGICAL;
|
||||
ts.kind = 1;
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
2008-07-02 Thomas Koenig <tkoenig@gcc.gnu.org>
|
||||
|
||||
PR fortran/36590
|
||||
PR fortran/36681
|
||||
* gfortran.dg/count_mask_1.f90: New test.
|
||||
|
||||
2008-07-02 Ira Rosen <irar@il.ibm.com>
|
||||
|
||||
* gcc.dg/vect/costmodel/spu/costmodel-vect-iv-9.c: Add noinline
|
||||
|
|
8
gcc/testsuite/gfortran.dg/count_mask_1.f90
Normal file
8
gcc/testsuite/gfortran.dg/count_mask_1.f90
Normal file
|
@ -0,0 +1,8 @@
|
|||
! { dg-do run }
|
||||
! PR 36590, PR 36681
|
||||
program test
|
||||
logical(kind=1),parameter :: t=.true.,f=.false.
|
||||
logical(kind=1),dimension(9) :: hexa,hexb
|
||||
data hexa/f,f,t,t,f,f,f,t,f/,hexb/f,t,f,f,f,t,t,f,f/
|
||||
isum=count(hexa(1:9).eqv.hexb(1:9))
|
||||
end program
|
Loading…
Add table
Reference in a new issue