pure function add(a, b) return(c) implicit none real, intent(in) :: a, b real :: c c = a + b end function add