Skip to content

Fill the gap to treat t_sup and t_inf for bitstr between Dialyzer and Fialyzer #281

@yuezato

Description

@yuezato

The current version of Fialyzer does not implement the following parts:
https://github.com/erlang/otp/blob/OTP-22.0.7/lib/hipe/cerl/erl_types.erl#L2567-L2568
https://github.com/erlang/otp/blob/OTP-22.0.7/lib/hipe/cerl/erl_types.erl#L2876-L2889

Therefore, for example, the current implementation rejects the following, which is accepted by Dialyzer:

-module(binary_test).
-export([main/1]).

main(X) ->
    _ = binary_to_integer(X), %% binary -> integer.
    _ = bit_size(X). %% bitstring -> integer >= 0.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions