Fortran-extract-interface-result.f90 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. interface
  2. logical function func_simple()
  3. end function func_simple
  4. logical function func_simple_1()
  5. end function
  6. logical function func_simple_2()
  7. end
  8. pure logical function func_simple_pure()
  9. end function func_simple_pure
  10. recursive pure integer function func_simple_recursive_pure(i)
  11. integer, intent(in) :: i
  12. end function func_simple_recursive_pure
  13. elemental logical function func_simple_elemental()
  14. end function func_simple_elemental
  15. integer(selected_int_kind(0)) function func_with_use_and_args(egg, ham)
  16. use foo
  17. use bar, only:&
  18. & i_am_dim
  19. integer, intent(in) :: egg(i_am_dim)
  20. integer, intent(in) :: ham(i_am_dim, 2)
  21. end function func_with_use_and_args
  22. character(20) function func_with_parameters(egg, ham)
  23. character*(*), parameter :: x_param = '01234567890'
  24. character(*), parameter :: &
  25. y_param &
  26. = '!&!&!&!&!&!'
  27. character(len(x_param)), intent(in) :: egg
  28. character(len(y_param)), intent(in) :: ham
  29. end function func_with_parameters
  30. function func_with_parameters_1(egg, ham) result(r)
  31. integer, parameter :: x_param = 10
  32. integer z_param
  33. parameter(z_param = 2)
  34. real, intent(in), dimension(x_param) :: egg
  35. integer, intent(in) :: ham
  36. logical :: r(z_param)
  37. end function func_with_parameters_1
  38. character(10) function func_with_contains(mushroom, tomoato)
  39. character(5) mushroom
  40. character(5) tomoato
  41. end function func_with_contains
  42. Function func_mix_local_and_result(egg, ham, bacon) Result(Breakfast)
  43. Integer, Intent(in) :: egg, ham
  44. Real, Intent(in) :: bacon
  45. Real :: tomato, breakfast
  46. End Function func_mix_local_and_result
  47. subroutine sub_simple()
  48. end subroutine sub_simple
  49. subroutine sub_simple_1()
  50. end subroutine
  51. subroutine sub_simple_2()
  52. end
  53. subroutine sub_simple_3()
  54. end sub&
  55. &routine&
  56. & sub_simple_3
  57. subroutine sub_with_contains(foo)
  58. character*(len('!"&''&"!')) &
  59. foo
  60. end subroutine sub_with_contains
  61. subroutine sub_with_renamed_import(i_am_dim)
  62. integer, parameter :: d = 2
  63. complex :: i_am_dim(d)
  64. end subroutine sub_with_renamed_import
  65. subroutine sub_with_external(proc)
  66. external proc
  67. end subroutine sub_with_external
  68. subroutine sub_with_end()
  69. end subroutine sub_with_end
  70. end interface