blob: 20e29626f2d422f09ffecfa3ba7986057861081c [file] [log] [blame]
! { dg-do run }
program save_1
implicit none
integer i
integer foo1, foo2, foo3, foo4
do i=1,10
if (foo1().ne.i) then
STOP 1
end if
if (foo2().ne.i) then
STOP 2
end if
if (foo3().ne.i) then
STOP 3
end if
if (foo4().ne.i) then
STOP 4
end if
end do
end program save_1
integer function foo1 ()
integer j
save
save ! { dg-warning "Blanket SAVE" }
data j /0/
j = j + 1
foo1 = j
end function foo1
integer function foo2 ()
integer j
save j
save j ! { dg-warning "Duplicate SAVE" }
data j /0/
j = j + 1
foo2 = j
end function foo2
integer function foo3 ()
integer j ! { dg-warning "Duplicate SAVE" }
save
save j ! { dg-warning "SAVE statement" }
data j /0/
j = j + 1
foo3 = j
end function foo3
integer function foo4 ()
integer j ! { dg-warning "Duplicate SAVE" }
save j
save
data j /0/
j = j + 1
foo4 = j
end function foo4