Skip to main content

W0048 - Avoid -dialyzer attribute

Warning

    -module(main).
-dialyzer({nowarn_function, foo/0}).
%% ^^^^^^^^^ 💡 warning: Avoid -dialyzer attribute.

Explanation

Dialyzer is a static analysis tool that identifies software discrepancies, such as definite type errors, code that is unreachable because of programming error, and unnecessary tests in single Erlang modules or an entire codebase.

The tool provides a mechanism for turning off warnings in a module via the -dialyzer attribute. This approach is not recommended, as it can lead to errors being missed. Instead, it is recommended to fix the errors instead of suppressing them.