diff --git a/test/known_problems/should_pass/poly_should_pass.erl b/test/known_problems/should_pass/poly_should_pass.erl index b40a313e..ab454f96 100644 --- a/test/known_problems/should_pass/poly_should_pass.erl +++ b/test/known_problems/should_pass/poly_should_pass.erl @@ -2,20 +2,7 @@ -gradualizer([solve_constraints]). --export([find1/0, - l/0]). - --spec lookup(T1, [{T1, T2}]) -> (none | T2). -lookup(_, []) -> none; -lookup(K, [{K, V}|_]) -> V; -lookup(K, [_|KVs]) -> lookup(K, KVs). - --spec find1() -> string(). -find1() -> - case lookup(0, [{0, "s"}]) of - none -> "default"; - V -> V - end. +-export([l/0]). -type t1() :: {}. -type t2() :: binary(). diff --git a/test/should_pass/poly_pass.erl b/test/should_pass/poly_pass.erl index 0d0ede2e..47d80d4e 100644 --- a/test/should_pass/poly_pass.erl +++ b/test/should_pass/poly_pass.erl @@ -25,7 +25,8 @@ invariant_tyvar1/1, invariant_tyvar2/1, use_enum_map1/1, - use_enum_map2/1 + use_enum_map2/1, + find1/0 ]). -gradualizer([solve_constraints]). @@ -216,3 +217,15 @@ use_enum_map1(Numbers) -> -spec use_enum_map2(#{'__struct__' := some_struct}) -> [boolean()]. use_enum_map2(SomeStruct) -> enum_map(SomeStruct, fun positive/1). + +-spec lookup(T1, [{T1, T2}]) -> (none | T2). +lookup(_, []) -> none; +lookup(K, [{K, V}|_]) -> V; +lookup(K, [_|KVs]) -> lookup(K, KVs). + +-spec find1() -> string(). +find1() -> + case lookup(0, [{0, "s"}]) of + none -> "default"; + V -> V + end.