1! Tests -fget-definition returning source position of symbol definition.
2module m1
3 private :: f
4contains
5 pure subroutine s (x, yyy) bind(c)
6  intent(in) :: x
7  intent(inout) :: yyy
8 contains
9  pure subroutine ss
10  end subroutine
11 end subroutine
12 recursive pure function f() result(x)
13  real, allocatable :: x
14  x = 1.0
15 end function
16end module
17
18! RUN and CHECK lines at the bottom as this test is sensitive to line numbers
19! RUN: %flang_fc1 -fsyntax-only -fget-definition 6 17 18 %s | FileCheck --check-prefix=CHECK1 %s
20! RUN: %flang_fc1 -fsyntax-only -fget-definition 7 20 23 %s | FileCheck --check-prefix=CHECK2 %s
21! RUN: %flang_fc1 -fsyntax-only -fget-definition 14 3 4 %s | FileCheck --check-prefix=CHECK3 %s
22! CHECK1: x:{{.*}}getdefinition01.f90, 5, 21-22
23! CHECK2: yyy:{{.*}}getdefinition01.f90, 5, 24-27
24! CHECK3: x:{{.*}}getdefinition01.f90, 13, 24-25
25