%% In 17, the linter says that map(A) redefines 'type map', which is
%% allowed until next release. However, Dialyzer used to replace
%% map(A) with #{}, which resulted in warnings.

-module(maps_redef2).

-export([t/0]).

-type map(_A) :: integer().

t() ->
    M = new(),
    t1(M).

-spec t1(map(_)) -> map(_).

t1(A) ->
    A + A.

-spec new() -> map(_).

new() ->
    3.

Fix a bug concerning map() types
[dialyzer] Fix a bug concerning map() types
