Ivan Zhechev 6c1ac141d3 [Flang] Ported test_errors.sh to Python
To enable Flang testing on Windows, shell scripts have to be ported to Python. In this patch the "test_errors.sh" script is ported to python ("test_errors.py"). The RUN line of existing tests was changed to make use of the python script.

Used python regex in place of awk/sed.

Reviewed By: Meinersbur

Differential Revision: https://reviews.llvm.org/D107575
2021-09-06 08:19:42 +00:00

45 lines
1011 B
Fortran

! RUN: %python %S/test_errors.py %s %flang_fc1
subroutine s1
type :: t
integer :: i
integer :: s1
integer :: t
end type
!ERROR: 't' is already declared in this scoping unit
integer :: t
integer :: i, j
type(t) :: x
!ERROR: Derived type 't2' not found
type(t2) :: y
external :: v
type(t) :: v, w
external :: w
!ERROR: 'z' is not an object of derived type; it is implicitly typed
i = z%i
!ERROR: 's1' is an invalid base for a component reference
i = s1%i
!ERROR: 'j' is not an object of derived type
i = j%i
!ERROR: Component 'j' not found in derived type 't'
i = x%j
!ERROR: 'v' is an invalid base for a component reference
i = v%i
!ERROR: 'w' is an invalid base for a component reference
i = w%i
i = x%i !OK
end subroutine
subroutine s2
type :: t1
integer :: i
end type
type :: t2
type(t1) :: x
end type
type(t2) :: y
integer :: i
!ERROR: Component 'j' not found in derived type 't1'
k = y%x%j
k = y%x%i !OK
end subroutine