<div dir="ltr"><div>Hello,</div><div><br></div><div>In looking the source of Dialyzer "no local return", i find this code</div><div><a href="https://github.com/erlang/otp/blob/master/lib/dialyzer/src/dialyzer.erl#L386-L397">https://github.com/erlang/otp/blob/master/lib/dialyzer/src/dialyzer.erl#L386-L397</a></div><div><br></div><div>In particular, i see that there are two types that can return this message. "only_normal" and "both".</div><div><br></div><div>I understand the other possible "no_return" warnings here, but i do not understand what situations does "only_normal" and "both" means here and how they get differentiated. I tried to understand how Dialyzer get to this decision in the code before that, but i got bogged down.</div><div><br></div><div>In particular, i do not understand what the tuple returned by find_terminals here <a href="https://github.com/erlang/otp/blob/master/lib/dialyzer/src/dialyzer_dataflow.erl#L3842">https://github.com/erlang/otp/blob/master/lib/dialyzer/src/dialyzer_dataflow.erl#L3842</a> means.</div><div><br></div><div>Thank you for your help, would be greatly appreciated</div><div><br></div><div>Thomas Depierre<br></div></div>