brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.1 KiB · 1f9f78d Raw
63 lines · plain
1! RUN: %python %S/test_symbols.py %s %flang_fc12! References to generic functions with forward-referenced specifics.3!DEF: /m Module4module m5contains6 !DEF: /m/specific4 PUBLIC (Function) Subprogram INTEGER(4)7 !DEF: /m/specific4/x INTENT(IN) ObjectEntity INTEGER(4)8 integer function specific4(x)9  !REF: /m/specific4/x10  integer, intent(in) :: x(*)11 end function12 !DEF: /m/test PUBLIC (Subroutine) Subprogram13 !DEF: /m/test/specific1 EXTERNAL (Function) Subprogram INTEGER(4)14 subroutine test (specific1)15  !DEF: /m/test/generic (Function) Generic16  interface generic17   !REF: /m/test/specific118   procedure :: specific119   !DEF: /m/test/specific2 EXTERNAL, PURE (Function) Subprogram INTEGER(4)20   procedure :: specific221   !DEF: /m/test/specific3 EXTERNAL (Function) Subprogram INTEGER(4)22   procedure :: specific323   !DEF: /m/test/specific4 EXTERNAL (Function) Subprogram INTEGER(4)24   procedure :: specific425  end interface26  interface27   !REF: /m/test/specific128   !DEF: /m/test/specific1/x INTENT(IN) ObjectEntity INTEGER(4)29   integer function specific1(x)30    !REF: /m/test/specific1/x31    integer, intent(in) :: x32   end function33   !REF: /m/test/specific234   !DEF: /m/test/specific2/x INTENT(IN) ObjectEntity INTEGER(4)35   !DEF: /m/test/specific2/y INTENT(IN) ObjectEntity INTEGER(4)36   pure integer function specific2(x, y)37    !REF: /m/test/specific2/x38    !REF: /m/test/specific2/y39    integer, intent(in) :: x, y40   end function41   !REF: /m/test/specific342   !DEF: /m/test/specific3/x INTENT(IN) ObjectEntity INTEGER(4)43   !DEF: /m/test/specific3/y INTENT(IN) ObjectEntity INTEGER(4)44   integer function specific3(x, y)45    !REF: /m/test/generic46    import :: generic47    !REF: /m/test/specific3/x48    !REF: /m/test/specific3/y49    !REF: /m/test/specific250    integer, intent(in) :: x, y(generic(1, x))51   end function52   !REF: /m/test/specific453   !DEF: /m/test/specific4/x INTENT(IN) ObjectEntity INTEGER(4)54   integer function specific4(x)55    !REF: /m/test/specific4/x56    integer, intent(in) :: x(:)57   end function58  end interface59  !REF: /m/test/specific460  print *, generic([1])61 end subroutine62end module63