Dialyzer: report call to undefined function

Tobias Lindahl Tobias.Lindahl@REDACTED
Sat May 20 12:37:19 CEST 2006


Vlad Dumitrescu wrote:
> Seeing Dializer in R11 is what triggered my question :-)
> 
> Is this information returned among the usual warnings and errors? From
> my quick glance it isn't, but I think it should.

No it is only printed. The report was originally a debug feature to let 
us find a suitable initial plt for Dialyzer, but we found that it was 
pretty useful for the user as well, so we kept the print-out.

We haven't worked much on the infrastructure for getting warnings from 
inside of Erlang, but this is something we probably should do. Then this 
kind of information can be passed in some kind of structure together 
with the warnings.

Tobias

> 
> I won't be using the tools from the command line, but as Erlang
> functions, so things going to stdout are harder to catch. I already
> did that for yecc, but it's not really a good solution.
> 
> regards,
> Vlad
> 
> On 5/19/06, kostis@REDACTED <kostis@REDACTED> wrote:
> 
>> Vlad Dumitrescu wrote:
>> >
>> > I think it would be useful if Dialyzer would also report calls to
>> > undefined or unexported functions. I often spell names wrong :-)
>>
>> First of all, for those who have not read the release notes of R11
>> in detail, let me mention that Dialyzer is now part of Erlang/OTP.
>>
>> Part of what Vlad is asking for is already present in Dialyzer.
>> When Dialyzer finishes its analysis, it spits out information of
>> the form:
>>
>>   Unknown functions: [{mod1,f,4},{mod2,g,3}]
>>
>> If "mod1" is one of the modules that are analyzed, this means that
>> the function f/4 is either undefined or unexported from that module.
>>
>> Kostis
>>



More information about the erlang-questions mailing list