Dialyzer: report call to undefined function

Ulf Wiger (AL/EAB) <>
Mon May 22 10:33:56 CEST 2006



That's my hacked version (I haven't checked the
OTP version to see how they differ.)

What I did was simply to remove all modules in the 
analysed set from the plt, and also the modules that
depend on them, directly or indirectly.

That means that if you would include e.g. lists.beam,
most of the data in the plt would be thrown away.
Of course, if the modules being removed from the plt
are not in the analysed set, they show up at the end, 
when Dialyzer reports the missing modules.

The --new_plt option was simply to enable saving a 
larger plt than that of just stdlib.

/Ulf W

> -----Original Message-----
> From:  
> [mailto:] On Behalf Of Bengt Kleberg
> Sent: den 22 maj 2006 07:16
> To: 
> Subject: Re: Dialyzer: report call to undefined function
> 
> On 2006-05-20 13:01, Tobias Lindahl wrote:
> ...deleted
> > where Dialyzer can run in the background. We have been playing with 
> > the idea of keeping checksums for modules and pruning the 
> plt based on this.
> > In conjunction with keeping plt:s for subsystems and 
> keeping track of 
> > dependencies, we shoud be able to squeeze the times quite a 
> bit, but 
> > it
> 
> i thought that happens when setting DIALYZER_INIT_PLT to 
> $dialyzer_home/plt/dialyzer_otp_plt, and starting like this, 
> the first time:
> 
> dialyzer --new_plt $plt_file
> 
> then always afterwards use:
> 
> dialyzer --init_plt $plt_file --new_plt $plt_file
> 
> 
> how does the above work otherwise?
> 
> 
> bengt
> 



More information about the erlang-questions mailing list