[erlang-questions] Can't run my command line Erlang program
Fri Nov 15 08:52:08 CET 2013
You can add them to your .plt with something like
# dialyzer --add_to_plt --apps crypto stdlib proper ...
Which should get rid of the warnings.
On Nov 14, 2013, at 8:03 PM, Andrew Pennebaker <andrew.pennebaker@REDACTED> wrote:
> Is there a way to clear the "unknown functions" from dialyzer output? They tend to distract from any warnings I'm trying to find.
> $ make lint
> erlc -Wall +debug_info ios7crypt.erl
> dialyzer *.beam --build_plt --quiet
> dialyzer *.beam
> Checking whether the PLT /Users/andrew/.dialyzer_plt is up-to-date... yes
> Proceeding with analysis...
> Unknown functions:
> done in 0m0.17s
> done (passed successfully)
> On Thu, Nov 14, 2013 at 10:59 PM, Andrew Pennebaker <andrew.pennebaker@REDACTED> wrote:
>> I think I was trying to account for errors in parsing integers. In any case, I think my program still works fine without this check, especially as we agree that dialyzer proves it's unnecessary.
>> On Thu, Nov 14, 2013 at 8:00 PM, Kostis Sagonas <kostis@REDACTED> wrote:
>>> On 11/15/2013 01:46 AM, Andrew Pennebaker wrote:
>>>> In particular, I'm confused what dialyzer doesn't like about line 60.
>>>> 59 FirstOne = case is_binary(FirstTemp) of
>>>> 60 true -> binary_to_list(FirstTemp);
>>>> 61 false -> FirstOneRaw
>>>> 62 end,
>>>> Not sure what's wrong. I tried using `_` instead of `false`, but got the
>>>> same warning. Should I use an if/else instead of case?
>>> Dialyzer is telling you that it thinks FirstTemp will never be a binary in your program, so the case statement you have there is unnecessary. So, effectively it tells you that you can rewrite the code above to:
>>> FirstOne = FirstOneRaw,
>>> The question is why do you expect that FirstTemp may be a binary at that point?
>> Andrew Pennebaker
> Andrew Pennebaker
> erlang-questions mailing list
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions