blob: 44714086f86bd505f29610e0886a698fc016e50d [file] [log] [blame]
! { dg-do run }
! { dg-options "-finit-local-zero -fbackslash" }
program init_flag_1
call real_test
call logical_test
call int_test
call complex_test
call char_test
end program init_flag_1
! Test some initializations for both implicitly and
! explicitly declared local variables.
subroutine real_test
real r1
real r2(10)
dimension r3(10,10)
if (r1 /= 0.0) STOP 1
if (r2(2) /= 0.0) STOP 2
if (r3(5,5) /= 0.0) STOP 3
if (r4 /= 0.0) STOP 4
end subroutine real_test
subroutine logical_test
logical l1
logical l2(2)
if (l1 .neqv. .false.) STOP 5
if (l2(2) .neqv. .false.) STOP 6
end subroutine logical_test
subroutine int_test
integer i1
integer i2(10)
dimension i3(10,10)
if (i1 /= 0) STOP 7
if (i2(2) /= 0) STOP 8
if (i3(5,5) /= 0) STOP 9
if (i4 /= 0) STOP 10
end subroutine int_test
subroutine complex_test
complex c1
complex c2(20,20)
if (c1 /= (0.0,0.0)) STOP 11
if (c2(1,1) /= (0.0,0.0)) STOP 12
end subroutine complex_test
subroutine char_test
character*1 c1
character*8 c2, c3(5)
character c4(10)
if (c1 /= '\0') STOP 13
if (c2 /= '\0\0\0\0\0\0\0\0') STOP 14
if (c3(1) /= '\0\0\0\0\0\0\0\0') STOP 15
if (c3(5) /= '\0\0\0\0\0\0\0\0') STOP 16
if (c4(5) /= '\0') STOP 17
end subroutine char_test