У меня есть следующий код FORTRAN:
FUNCTION inverse_deterministic_cdf(dist, p) RESULT(value)
!=========== result ============
REAL(C_DOUBLE) :: value
!====== input parameters =======
TYPE(deterministic), INTENT(IN) :: dist
REAL(C_DOUBLE), INTENT(IN) :: p
!======= subroutine body =======
value = p ! This is only here to suppress unused dummy argument warning
value = dist%value
END FUNCTION inverse_deterministic_cdf
В этом случае inverse_deterministic_cdf
- это реализация интерфейса inverse_cdf
, поэтому здесь есть неиспользованный p
.Как вы можете видеть, у меня есть метод подавления неиспользованного фиктивного аргумента, но он кажется мне не изящным.У кого-нибудь есть лучшие практики, как они справляются с этим?(Я также хочу, чтобы это не зависело от компилятора.) Я знаю, как универсально подавлять предупреждения, но я хочу, чтобы меня предупреждали , когда у меня есть неиспользуемый фиктивный аргумент, и я его не ожидаю.
Изменить, чтобы добавить (по запросу):
Интерфейс inverse_cdf
определяется следующим образом:
INTERFACE inverse_cdf
MODULE PROCEDURE inverse_distribution_cdf, inverse_normal_cdf, inverse_lognormal_cdf, inverse_deterministic_cdf
END INTERFACE