Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[dialyzer] crash in dialyzer_typesig #6473

Closed
RobinMorisset opened this issue Nov 15, 2022 · 0 comments · Fixed by #6483
Closed

[dialyzer] crash in dialyzer_typesig #6473

RobinMorisset opened this issue Nov 15, 2022 · 0 comments · Fixed by #6483
Assignees
Labels
bug Issue is reported as a bug team:VM Assigned to OTP team VM

Comments

@RobinMorisset
Copy link
Contributor

On master, the following code:

-module(dia3).
-compile([export_all]).

f(#{<<{}>> := X}) ->
    X;
f(X) when X; <<X:X>> ->
    f(X),
    X.

crashes dialyzer with the following error message:

dialyzer: Analysis failed with error:
{function_clause,[{erl_types,number_max2,
                             [unit],
                             [{file,"erl_types.erl"},{line,2532}]},
                  {dialyzer_typesig,'-bitstr_val_constr/3-fun-0-',4,
                                    [{file,"dialyzer_typesig.erl"},
                                     {line,1067}]},
                  {dialyzer_typesig,solve_one_c,2,
                                    [{file,"dialyzer_typesig.erl"},
                                     {line,2230}]},
                  {dialyzer_typesig,v2_solve,3,
                                    [{file,"dialyzer_typesig.erl"},
                                     {line,1858}]},
                  {dialyzer_typesig,v2_solve_conj,12,
                                    [{file,"dialyzer_typesig.erl"},
                                     {line,2065}]},
                  {dialyzer_typesig,v2_solve_disj,10,
                                    [{file,"dialyzer_typesig.erl"},
                                     {line,1993}]},
                  {dialyzer_typesig,v2_solve_disjunct,3,
                                    [{file,"dialyzer_typesig.erl"},
                                     {line,1956}]},
                  {dialyzer_typesig,v2_solve_conj,12,
                                    [{file,"dialyzer_typesig.erl"},
                                     {line,2065}]}]}
@RobinMorisset RobinMorisset added the bug Issue is reported as a bug label Nov 15, 2022
@rickard-green rickard-green added the team:VM Assigned to OTP team VM label Nov 16, 2022
@bjorng bjorng self-assigned this Nov 17, 2022
@bjorng bjorng linked a pull request Nov 17, 2022 that will close this issue
bjorng added a commit that referenced this issue Nov 21, 2022
@bjorng bjorng closed this as completed in ac41c1f Nov 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issue is reported as a bug team:VM Assigned to OTP team VM
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants