dialyzer bug?
Tobias Lindahl
tobias.lindahl@REDACTED
Thu Apr 14 11:51:52 CEST 2005
Thanks for the report. We already have a patch that solves the problem.
The patch can be found at the Dialyzer homepage
http://www.it.uu.se/research/group/hipe/dialyzer/
Tobias
On Thu, 14 Apr 2005, Samuel Rivas wrote:
> Hi,
>
> Next code makes dialyzer to output an error:
>
> -module(test).
> -export([test/1]).
>
> test(Foo) ->
> Foo/bar.
>
> When dialyzer (v1.3.0) tries to analyse it the next error rises:
>
> <HiPE (v 3.4.0)> Error: [hipe:781]: ERROR: {function_clause,
> [{hipe_icode_type,
> find_signature_mfa,
> ['/']},
> {hipe_icode_type,
> find_plt_return,
> 2},
> {hipe_icode_type,
> check_for_tuple_as_fun,
> 2},
> {hipe_icode_type,
> warn_on_call_1,
> 3},
> {hipe_icode_type,
> warn_on_call,
> 4},
> {hipe_icode_type,
> warn_on_instr,
> 3},
> {hipe_icode_type,warn_on_bb,3},
> {hipe_icode_type,
> warn_on_type_errors,
> 5}]}
>
> I found this error in a bigger project (a confusion with bit syntax led
> me to write Something = Stuff/binary), the behaviour was slightly
> different when dialyzer tried to read the wrong code within the whole
> project analysis, it showed the error in the warning window, in the test
> case the error is shown in a separate window. Sadly I wasn't able to
> write a synthetic test that achieves the same result :(
>
> Aside, experimenting with the compiler I found out that expressions like
> a/b, a+b, ... generate a warning, but expressions like A/b don't. I
> suppose it would be wise to warn in all these cases.
>
> Regards
> --
> Samuel
>
More information about the erlang-questions
mailing list