-module(unused_unknown_type). -export([t/0]). -export_type([unused/0]). -export_type([wide/0, deep/0]). -export_type([owide/0, odeep/0]). -export_type([arg/0, rargs1/0, rargs2/0]). -type unused() :: unknown:type1(). -record(unused_rec, {a :: unknown:type2(), b :: {{{{{{{{{{{{{{{{{{{{rfoo:rbar()}}}}}}}}}}}}}}}}}}}}}). -record(rec, {a}). -type unused_rec() :: #rec{a :: unknown:type3()}. -type wide() :: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,xxx:y()}. -type owide() :: {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,owww:y()}. %% Deeper than the hardcoded limit in erl_types.erl of 16. -type deep() :: {{{{{{{{{{{{{{{{{{{{foo:bar()}}}}}}}}}}}}}}}}}}}}. -type odeep() :: {{{{{{{{{{{{{{{{{{{{ofoo:obar()}}}}}}}}}}}}}}}}}}}}. -type arg1(A) :: [A]. -type arg() :: arg1({a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,yyy:x()}). %% No warning about www:x/0 because parameters are currently not %% handled if the parameterized type cannot be found. -type rargs1() :: zzz:arg({a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,www:x()}). -type rargs2() :: dict:dict({a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,zzz:x()}, any()). %% No warning. The check is commented out as it takes too long. -spec t() -> 'a' | {{{{{{{{{{{{{{{{{{{{sfoo:sbar()}}}}}}}}}}}}}}}}}}}}. t() -> a.