Hello<div><br></div><div>I got error when gen_server callback returns not a proper process state, but another erlang term(), and dialyzer not warns me about this.</div><div>After specification of Module:handle_cast/2 with</div>
<div><br></div><div>-spec handle_cast(Msg :: term(), State :: #state{}) -> {noreply, NewState :: #state{}}.</div><div><br></div><div>where #state{} is record of process state, it not warns too (it also not warns about {stop, normal, State} return value).<br clear="all">
<div><br></div><div>Code of callback:</div><div><br></div><div><div>handle_cast({message}, _State) -></div><div>    NewState = {bugotak},</div><div>    {noreply, NewState};</div></div><div><br></div><div>Is it possible to make that dialyzer can see this mistake? Does it check types of gen_server callbacks?</div>
<div><br></div>-- <br>Max Treskin<br>
</div>