<div dir="ltr"><div><div><div><div>Dialyzer crashes when analysing a case clause with an empty map pattern when it is known that the pattern can never match.<br><br></div>Minimal example:<br><br></div></div>function(Tuple) when is_tuple(Tuple) -><br>
    case Tuple of #{} -> ok end.<br><br></div>Result:<br><br>dialyzer: Analysis failed with error:<br>{{case_clause,#{}},<br> [{cerl_prettypr,lay_literal,2,[{file,"cerl_prettypr.erl"},{line,468}]},<br>  {cerl_prettypr,lay_ann,2,[{file,"cerl_prettypr.erl"},{line,411}]},<br>
  {cerl_prettypr,format,2,[{file,"cerl_prettypr.erl"},{line,271}]},<br>  {dialyzer_dataflow,format_patterns,1,<br>                     [{file,"dialyzer_dataflow.erl"},{line,3351}]},<br>  {dialyzer_dataflow,do_clause,6,[{file,"dialyzer_dataflow.erl"},{line,1245}]},<br>
  {dialyzer_dataflow,handle_clauses,9,<br>                     [{file,"dialyzer_dataflow.erl"},{line,1177}]},<br>  {dialyzer_dataflow,handle_case,3,<br>                     [{file,"dialyzer_dataflow.erl"},{line,936}]},<br>
  {dialyzer_dataflow,do_clause,6,<br>                     [{file,"dialyzer_dataflow.erl"},{line,1372}]}]}<br><br></div>