peter klausler 4171f80d54 [flang] DATA stmt processing (part 3/4): Remaining prep work
Rolls up small changes across the frontend to prepare for the large
forthcoming patch (part 4/4) that completes DATA statement processing
via conversion to initializers.

Reviewed By: PeteSteinfeld

Differential Revision: https://reviews.llvm.org/D82137
2020-06-19 09:09:05 -07:00

40 lines
809 B
Fortran

! RUN: %S/test_errors.sh %s %t %f18
subroutine s1
integer x
block
import, none
!ERROR: 'x' from host scoping unit is not accessible due to IMPORT
x = 1
end block
end
subroutine s2
block
import, none
!ERROR: 'y' from host scoping unit is not accessible due to IMPORT
y = 1
end block
end
subroutine s3
implicit none
integer :: i, j
block
import, none
!ERROR: No explicit type declared for 'i'
real :: a(16) = [(i, i=1, 16)]
real :: b(16)
!ERROR: No explicit type declared for 'j'
data(b(j), j=1, 16) / 16 * 0.0 /
end block
end
subroutine s4
real :: i, j
!ERROR: Must have INTEGER type, but is REAL(4)
real :: a(16) = [(i, i=1, 16)]
real :: b(16)
!ERROR: Must have INTEGER type, but is REAL(4)
data(b(j), j=1, 16) / 16 * 0.0 /
end