[erlang-bugs] Dialyzer can yield false positives and false negatives after checking PLT

James Fish james@REDACTED
Fri Mar 13 00:56:06 CET 2015


Hi,

If a function is removed from a module and the module has previously been
added to a PLT, the function will not be removed from PLT when the PLT is
checked. This results in dialyzer failing to produce a callgraph warning
when doing success typings analysis if the remove function is still called
in another module

As the function is not removed from the PLT a prior warning, such as a
contract types warning, might be emitted when the removed function nolonger
exists.

I have attached an archive with a minimal example, which prints a contract
types warning instead of a callgraph warning. This example has been tested
on OTP R15B03 and 17.4.

Regards,

James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-bugs/attachments/20150312/5722dc77/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: plt_gc.tar.gz
Type: application/x-gzip
Size: 756 bytes
Desc: not available
URL: <http://erlang.org/pipermail/erlang-bugs/attachments/20150312/5722dc77/attachment.bin>


More information about the erlang-bugs mailing list