blob: d073f3e71864fd4b5cdf55e64d2bc338cca317d0 [file] [log] [blame]
! { dg-do run }
! { dg-additional-options "-fdump-tree-original" }
! PR fortran/106557 - nesting intrinsics ibset and transfer gives wrong result
program p
implicit none
character(1) :: s
write(s,'(i1)') ibset (transfer (0, 0), 0)
if (s /= '1') stop 1
write(s,'(i1)') ibclr (transfer (1, 0), 0)
if (s /= '0') stop 2
! These shall be fully resolved at compile time:
if (transfer (ibset (transfer (0, 0), 0), 0) /= 1) stop 3
if (transfer (ibclr (transfer (1, 0), 0), 0) /= 0) stop 4
end
! { dg-final { scan-tree-dump-times "_gfortran_stop_numeric" 2 "original" } }