module math_module
  use, intrinsic :: iso_c_binding
  implicit none

contains

  subroutine add_number(x, y, sum) bind(C, name="add_number")
    implicit none
    real(c_float), intent(in), value :: x, y
    real(c_float), intent(out) :: sum
    sum = x + y
  end subroutine add_number

end module math_module
