aboutsummaryrefslogtreecommitdiffstats
path: root/lib/dialyzer/test/small_SUITE_data/src/tuple1.erl
blob: d608275efe4d8aa1257f5366a9ce0bef6d436eb9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
%%%-------------------------------------------------------------------
%%% File    : tuple1.erl
%%% Author  : Tobias Lindahl <[email protected]>
%%% Description : Exposed two bugs in the analysis;
%%%               one supressed warning and one crash.
%%%
%%% Created : 13 Nov 2006 by Tobias Lindahl <[email protected]>
%%%-------------------------------------------------------------------
-module(tuple1).

-export([t1/2, t2/2, t3/2, bar/2]).

t1(List = [_|_], X) ->
  lists:mapfoldl(fun foo/2, X, List).

t2(List = [_|_], X) ->
  lists:mapfoldl(fun bar/2, X, List).

t3(List = [_|_], X) ->
  lists:mapfoldl(fun baz/1, X, List).


foo(1, 1) -> a;
foo(a, 1) -> b.

bar(1, 1) -> {b, b};
bar(a, 1) -> {a, a}.

baz(1) -> 1.