2 ! { dg-options "-fdump-tree-optimized -O" }
10 integer(c_intptr_t
) :: a
11 integer(transfer(transfer(4_c_intptr_t
, c_null_ptr
),1_c_intptr_t
)) :: b
12 a
= transfer (transfer("ABCE", m
), 1_c_intptr_t
)
14 if ( int(z
'45434241') /= a
&
15 .and
. int(z
'41424345') /= a
&
16 .and
. int(z
'4142434500000000',kind
=8) /= a
) &
20 ! Examples contributed by Steve Kargl and James Van Buskirk
30 print *, transfer(32512, x
) ! Works.
31 print *, transfer(32512, m
) ! Caused ICE.
46 integer(C_INTPTR_T
), parameter :: const(*) = [32512,32520]
49 array
= transfer([integer(C_INTPTR_T
)::32512,32520],array
)
50 ! write(*,*) transfer(result,const)
51 ! write(*,*) transfer(array,const)
58 fun
= transfer(32512_C_INTPTR_T
,fun
)
61 ! { dg-final { scan-tree-dump-times "i_do_not_exist" 0 "optimized" } }