[erlang-questions] dialyzer apparently-erroneously thinking a spec is underspecified
Thu Dec 10 22:51:35 CET 2015
by inspection, the spec on the boop function is "wrong", but this code
passes dialyzer, unless you run it with -Wunderspecs or -Wspecdiffs, at
which point it complains:
tt.erl:10: The specification for tt:boop/1 states that the function might
also return 'glory' but the inferred return is 'hello' | 'micronauts'
So dialyzer does notice that 'micronauts' might be returned, and does know
that the glory() type does not include that as a choice, but believes that
the spec is just underspecified, rather than violated. Why is that?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the erlang-questions