[erlang-bugs] Different Dialyzer results for no_return() and none()
Loïc Hoguin
essen@REDACTED
Thu Oct 4 10:55:47 CEST 2012
Hey,
Not sure it still happens in HEAD, I only have R15B01 handy at the moment.
I found a small issue: none() doesn't behave the same as no_return().
I am implementing a special process as described by this:
http://www.erlang.org/doc/design_principles/spec_proc.html
I include "-Werror_handling" in my Dialyzer options.
I of course get a warning about system_terminate exiting. These two
specs don't behave the same:
-spec system_terminate(_, _, _, _) -> no_return().
-spec system_terminate(_, _, _, _) -> none().
Only the first suppresses the warning.
Typespecs documentation
(http://www.erlang.org/doc/reference_manual/typespec.html) tells me
no_return() stands for none() though.
--
Loïc Hoguin
Erlang Cowboy
Nine Nines
http://ninenines.eu
More information about the erlang-bugs
mailing list