BUG: Dialyzer crashing in OTP 23

Ulf Wiger ulf@REDACTED
Fri Jun 4 20:19:55 CEST 2021


While preparing the Aeternity code for OTP 24, I came across a Dialyzer
crash when using OTP 23.

We release the software using OTP 22, but run OTP 23-based builds in our
CI. However, Dialyzer is only run on OTP 22 in the CI.

This is the crash:
```
=ERROR REPORT==== 4-Jun-2021::20:04:10.238902 ===
Error in process <0.29614.2> with exit value:
{function_clause,
    [{dialyzer_dep,bind_list1,
         [[],
          [{output,single,
               {set,
                   {set,1,16,16,8,80,48,
                       {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
                       {{[],[],[],[],[],[],[],[],[],[],[],[],
                         [external],
                         [],[],[]}}}}}],
          {dict,172,35,64,32,175,105,
              {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
              {{[[175186|
                  {output,single,
                      {set,
                          {set,1,16,16,8,80,48,
                              {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],
                               []},
                              {{[],[],[],[],[],[],[],[],[],[],[],[],
                                [178840],
                                [],[],[]}}}}}],
...
                [],[],[],[],[],[],[],[],[],[],[],[],[]},
               {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}}],
         [{file,"dialyzer_dep.erl"},{line,456}]},
     {dialyzer_dep,traverse,4,[{file,"dialyzer_dep.erl"},{line,150}]},

 {dialyzer_dep,traverse_clauses,6,[{file,"dialyzer_dep.erl"},{line,263}]},
     {dialyzer_dep,traverse,4,[{file,"dialyzer_dep.erl"},{line,141}]},
     {dialyzer_dep,traverse_defs,5,[{file,"dialyzer_dep.erl"},{line,243}]},
     {dialyzer_dep,traverse,4,[{file,"dialyzer_dep.erl"},{line,161}]},
     {dialyzer_dep,traverse,4,[{file,"dialyzer_dep.erl"},{line,184}]},
     {dialyzer_dep,traverse_clauses,6,
         [{file,"dialyzer_dep.erl"},{line,263}]}]}
```

To reproduce, check out the current master of
https://github.com/aeternity/aeternity

I first encountered it with 23.0.3, but also on 23.3.4.1. It works well
with OTP 22.

Can't yet test it on OTP 24, among other things because we run into
internal compiler crashes when trying to build the code. You can take a
look at https://github.com/aeternity/aeternity/pull/3655

BR,
Ulf W
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20210604/883e1144/attachment.htm>


More information about the erlang-questions mailing list