[erlang-patches] Add --merge_plts feature to dialyzer, so its possible now to combine several PLTs into single one.

Stavros Aronis <>
Tue Jul 19 22:26:25 CEST 2011


Hi Anton,

I am sorry to inform you that in Dialyzer's case "the whole is greater that
the sum (or even the merge) of it's parts"!

When Dialyzer analyzes a set of modules without a PLT, it assumes that a
call to any external function will accept any term as an argument and return
a value that can also be any term. Therefore each of these
single-application-PLTs is going to be agnostic about calls to functions in
all other applications. As a result, these PLTs will be missing the
constraints that are imposed by these external calls and the information
stored within will be less strict. In the end, when you merge all these
PLTs, you will have a valid PLT, but it will also be less strict than the
one you will get by analyzing all the applications together.

I am not sure if there is any proper use for your trick.

On Tue, Jul 19, 2011 at 8:58 PM, Anton Fedorov <>wrote:

> To be able to generate plts for system in parallel, its useful to generate
> one-plt per application, and merge them after to one single big PLT.
>
> git fetch git://github.com/datacompboy/otp.git dialyzer_merge_plts
>
> --
> Regards,
> Anton Fedorov
> Call2ru service
> E-Mail: 
> Jabber: 
> ICQ: 272-35-262
> Mobile: +7-913-925-7974 [SMS 24h, Call 05:00-19:00 MSKT (GMT+3)]
>
> _______________________________________________
> erlang-patches mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-patches
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-patches/attachments/20110719/973e3331/attachment.html>


More information about the erlang-patches mailing list