C1278 A local variable of a pure subprogram, or of a BLOCK construct within a
pure subprogram, shall not have the SAVE attribute.
However, the following is accepted:
pure subroutine foo()
block
integer, save :: i
integer :: j = 5
end block
end subroutine foo
Expected:
integer, save :: i
1
Error: SAVE attribute at (1) cannot be specified in a PURE procedure
integer :: j = 5
1
Error: Initialization of variable at (1) is not allowed in a PURE procedure
--
Summary: BLOCK: C1278 - wrongly accepts SAVE in pure procedure
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Keywords: accepts-invalid
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: burnus at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42912