Мне лучше написать более полный ответ.
Нет, нет способа проверить фактическое определение макроса, вы можете только проверить, был ли определен макрос с таким именем. И вы можете проверять только имя макроса, но не альтернативные определения макросов с разными арностями. Это пережиток прошлого, до R13B, когда вы могли иметь только одно определение макроса на имя. Новый более точно имитирует функции в модуле.
«Стандартный» способ сделать это - использовать некоторый макрос-флаг, чтобы определить, какой набор макросов / функций использовать. Например:
-ifdef(DEBUG).
-define(DEBUG_PRINT(X), <... something long here ...>).
foo(X) -> <... debuggy stuff here ...>.
-else
-define(DEBUG_PRINT(X), ok).
foo(X) -> <... normal stuff here ...>.
-endif.