Changeset 2622


Ignore:
Timestamp:
03/20/24 16:34:00 (7 weeks ago)
Author:
jderouillat
Message:

Logical comparison requires eqv (not eq)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS3/trunk/src/interface/fortran/ilogical_bool_conversion.f90

    r2620 r2622  
    2121    ctrue  =  cxios_set_logical_true() 
    2222    cfalse =  cxios_set_logical_false() 
    23     if (tmp.eq..false.) then 
     23    if (tmp.eqv..false.) then 
    2424      tmp = cfalse 
    2525    else 
     
    3737    cfalse =  cxios_set_logical_false() 
    3838    do ij=1,ni_(1) 
    39        if (tmp(ij).eq..false.) then 
     39       if (tmp(ij).eqv..false.) then 
    4040          tmp(ij) = cfalse 
    4141       else 
     
    5555    do j=1,ni_(2) 
    5656      do i=1,ni_(1) 
    57         if (tmp(i,j).eq..false.) then 
     57        if (tmp(i,j).eqv..false.) then 
    5858          tmp(i,j) = cfalse 
    5959        else 
     
    7575      do j=1,ni_(2) 
    7676        do i=1,ni_(1) 
    77           if (tmp(i,j,k).eq..false.) then 
     77          if (tmp(i,j,k).eqv..false.) then 
    7878            tmp(i,j,k) = cfalse 
    7979          else 
     
    9797        do j=1,ni_(2) 
    9898          do i=1,ni_(1) 
    99             if (tmp(i,j,k,l).eq..false.) then 
     99            if (tmp(i,j,k,l).eqv..false.) then 
    100100              tmp(i,j,k,l) = cfalse 
    101101            else 
     
    121121          do j=1,ni_(2) 
    122122            do i=1,ni_(1) 
    123               if (tmp(i,j,k,l,m).eq..false.) then 
     123              if (tmp(i,j,k,l,m).eqv..false.) then 
    124124                tmp(i,j,k,l,m) = cfalse 
    125125              else 
     
    147147            do j=1,ni_(2) 
    148148              do i=1,ni_(1) 
    149                 if (tmp(i,j,k,l,m,p).eq..false.) then 
     149                if (tmp(i,j,k,l,m,p).eqv..false.) then 
    150150                  tmp(i,j,k,l,m,p) = cfalse 
    151151                else 
     
    175175              do j=1,ni_(2) 
    176176                do i=1,ni_(1) 
    177                   if (tmp(i,j,k,l,m,p,q).eq..false.) then 
     177                  if (tmp(i,j,k,l,m,p,q).eqv..false.) then 
    178178                    tmp(i,j,k,l,m,p,q) = cfalse 
    179179                  else 
     
    193193    IMPLICIT NONE 
    194194    LOGICAL (KIND=C_BOOL), INTENT(INOUT) :: tmp 
    195     if (tmp.eq..false.) then 
     195    if (tmp.eqv..false.) then 
    196196      tmp = .false. 
    197197    else 
     
    206206    INTEGER :: ij 
    207207    do ij=1,ni_(1) 
    208        if (tmp(ij).eq..false.) then 
     208       if (tmp(ij).eqv..false.) then 
    209209          tmp(ij) = .false. 
    210210       else 
     
    221221    do j=1,ni_(2) 
    222222      do i=1,ni_(1) 
    223         if (tmp(i,j).eq..false.) then 
     223        if (tmp(i,j).eqv..false.) then 
    224224          tmp(i,j) = .false. 
    225225        else 
     
    238238      do j=1,ni_(2) 
    239239        do i=1,ni_(1) 
    240           if (tmp(i,j,k).eq..false.) then 
     240          if (tmp(i,j,k).eqv..false.) then 
    241241            tmp(i,j,k) = .false. 
    242242          else 
     
    257257        do j=1,ni_(2) 
    258258          do i=1,ni_(1) 
    259             if (tmp(i,j,k,l).eq..false.) then 
     259            if (tmp(i,j,k,l).eqv..false.) then 
    260260              tmp(i,j,k,l) = .false. 
    261261            else 
     
    278278          do j=1,ni_(2) 
    279279            do i=1,ni_(1) 
    280               if (tmp(i,j,k,l,m).eq..false.) then 
     280              if (tmp(i,j,k,l,m).eqv..false.) then 
    281281                tmp(i,j,k,l,m) = .false. 
    282282              else 
     
    301301            do j=1,ni_(2) 
    302302              do i=1,ni_(1) 
    303                 if (tmp(i,j,k,l,m,p).eq..false.) then 
     303                if (tmp(i,j,k,l,m,p).eqv..false.) then 
    304304                  tmp(i,j,k,l,m,p) = .false. 
    305305                else 
     
    326326              do j=1,ni_(2) 
    327327                do i=1,ni_(1) 
    328                   if (tmp(i,j,k,l,m,p,q).eq..false.) then 
     328                  if (tmp(i,j,k,l,m,p,q).eqv..false.) then 
    329329                    tmp(i,j,k,l,m,p,q) = .false. 
    330330                  else 
     
    340340  END SUBROUTINE xios_bool_to_logical_7d 
    341341   
    342   !SUBROUTINE xios_bool_to_logical_0d(tmp, ni_) 
    343   !  IMPLICIT NONE 
    344   !  LOGICAL (KIND=C_BOOL), INTENT(INOUT) :: tmp(:) 
    345   !  INTEGER, INTENT(IN) :: ni_(:) 
    346   !  INTEGER :: ij 
    347   !  do ij=1,ni_(1) 
    348   !     if (tmp(ij).eq..false.) then 
    349   !        tmp(ij) = .false. 
    350   !     else 
    351   !        tmp(ij) = .true. 
    352   !     endif 
    353   !  enddo 
    354   !END SUBROUTINE xios_bool_to_logical_0d 
    355  
    356  
    357342END MODULE logical_bool_conversion 
    358343 
Note: See TracChangeset for help on using the changeset viewer.