1! { dg-do run } 2! Tests the fix for PR31994, aka 31867, in which the offset 3! of 'a' in both subroutines was being evaluated incorrectly. 4! The testcase for PR31867 is char_length_5.f90 5! 6! Contributed by Elizabeth Yip <elizabeth.l.yip@boeing.com> 7! and Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> 8! 9program main 10 call PR31994 11 call PR31994_comment6 12contains 13 subroutine PR31994 14 implicit none 15 complex (kind=4), dimension(2,2) :: a, b, c 16 a(1,1) = (1.,1.) 17 a(2,1) = (2.,2.) 18 a(1,2) = (3.,3.) 19 a(2,2) = (4.,4.) 20 b=conjg (transpose (a)) 21 c=transpose (a) 22 c=conjg (c) 23 if (any (b .ne. c)) call abort () 24 end subroutine PR31994 25 subroutine PR31994_comment6 26 implicit none 27 real ,dimension(2,2)::a 28 integer ,dimension(2,2) :: b, c 29 a = reshape ((/1.,2.,3.,4./), (/2,2/)) 30 b=int (transpose(a)) 31 c = int (a) 32 c = transpose (c) 33 if (any (b .ne. c)) call abort () 34 end subroutine PR31994_comment6 35END program main 36