! { dg-do compile } ! { dg-options "-Wsurprising" } ! PR 37221 - also warn about too-long MOLD for TRANSFER if not simplifying. ! Test case based on contribution by Tobias Burnus. program main character(len=10) :: str integer :: i str = transfer(65+66*2**8+67*2**16+68*2**24,str) ! { dg-warning "has partly undefined result" } write (*,*) str(1:4) i = 65+66*2**8+67*2**16+68*2**24 str = transfer(i,str) ! { dg-warning "has partly undefined result" } write (*,*) str(1:4) str = transfer(i,str(1:4)) write (*,*) str(1:4) end program