diff options
Diffstat (limited to 'lib/stdlib')
| -rw-r--r-- | lib/stdlib/src/dets_utils.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/dets_v8.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/dets_v9.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/dict.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/digraph.erl | 6 | ||||
| -rw-r--r-- | lib/stdlib/src/erl_lint.erl | 3 | ||||
| -rw-r--r-- | lib/stdlib/src/file_sorter.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/lists.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/otp_internal.erl | 14 | ||||
| -rw-r--r-- | lib/stdlib/src/qlc.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/rand.erl | 6 | ||||
| -rw-r--r-- | lib/stdlib/src/unicode.erl | 4 | ||||
| -rw-r--r-- | lib/stdlib/src/zip.erl | 4 | 
13 files changed, 49 insertions, 16 deletions
diff --git a/lib/stdlib/src/dets_utils.erl b/lib/stdlib/src/dets_utils.erl index 196158cd48..34a8ddddaa 100644 --- a/lib/stdlib/src/dets_utils.erl +++ b/lib/stdlib/src/dets_utils.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %%  -%% Copyright Ericsson AB 2001-2013. All Rights Reserved. +%% Copyright Ericsson AB 2001-2016. All Rights Reserved.  %%   %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -747,6 +747,8 @@ all_allocated([{X,Y} | L], _X0, Y0, A) when Y0 < X ->  all_allocated_as_list(Head) ->      all_allocated_as_list(all(get_freelists(Head)), 0, Head#head.base, []). +-dialyzer({no_improper_lists, all_allocated_as_list/4}). +  all_allocated_as_list([], _X0, _Y0, []) ->      [];  all_allocated_as_list([], _X0, _Y0, A) -> diff --git a/lib/stdlib/src/dets_v8.erl b/lib/stdlib/src/dets_v8.erl index 49126193b8..1bf53d91b1 100644 --- a/lib/stdlib/src/dets_v8.erl +++ b/lib/stdlib/src/dets_v8.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 2001-2013. All Rights Reserved. +%% Copyright Ericsson AB 2001-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -36,6 +36,8 @@  %% For backward compatibility.  -export([sz2pos/1]). +-dialyzer(no_improper_lists). +  -compile({inline, [{sz2pos,1},{scan_skip,7}]}).  -compile({inline, [{skip_bytes,5}, {get_segp,1}]}).  -compile({inline, [{wl_lookup,5}]}). diff --git a/lib/stdlib/src/dets_v9.erl b/lib/stdlib/src/dets_v9.erl index 361780c776..6c406fc03a 100644 --- a/lib/stdlib/src/dets_v9.erl +++ b/lib/stdlib/src/dets_v9.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %%  -%% Copyright Ericsson AB 2001-2013. All Rights Reserved. +%% Copyright Ericsson AB 2001-2016. All Rights Reserved.  %%   %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -34,6 +34,8 @@  -export([cache_segps/3]). +-dialyzer(no_improper_lists). +  -compile({inline, [{max_objsize,1},{maxobjsize,1}]}).  -compile({inline, [{write_segment_file,6}]}).   -compile({inline, [{sz2pos,1},{adjsz,1}]}). diff --git a/lib/stdlib/src/dict.erl b/lib/stdlib/src/dict.erl index 6ce3710f87..f921e28ef6 100644 --- a/lib/stdlib/src/dict.erl +++ b/lib/stdlib/src/dict.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %%  -%% Copyright Ericsson AB 2000-2014. All Rights Reserved. +%% Copyright Ericsson AB 2000-2016. All Rights Reserved.  %%   %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -333,6 +333,8 @@ update_counter(Key, Incr, D0) when is_number(Incr) ->  			D0, Slot),      maybe_expand(D1, Ic). +-dialyzer({no_improper_lists, counter_bkt/3}). +  counter_bkt(Key, I, [?kv(Key,Val)|Bkt]) ->      {[?kv(Key,Val+I)|Bkt],0};  counter_bkt(Key, I, [Other|Bkt0]) -> diff --git a/lib/stdlib/src/digraph.erl b/lib/stdlib/src/digraph.erl index e51e560542..8a4df95027 100644 --- a/lib/stdlib/src/digraph.erl +++ b/lib/stdlib/src/digraph.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 1996-2014. All Rights Reserved. +%% Copyright Ericsson AB 1996-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -338,6 +338,8 @@ edge(G, E) ->  %%  -spec new_edge_id(graph()) -> edge(). +-dialyzer({no_improper_lists, new_edge_id/1}). +  new_edge_id(G) ->      NT = G#digraph.ntab,      [{'$eid', K}] = ets:lookup(NT, '$eid'), @@ -350,6 +352,8 @@ new_edge_id(G) ->  %%  -spec new_vertex_id(graph()) -> vertex(). +-dialyzer({no_improper_lists, new_vertex_id/1}). +  new_vertex_id(G) ->      NT = G#digraph.ntab,      [{'$vid', K}] = ets:lookup(NT, '$vid'), diff --git a/lib/stdlib/src/erl_lint.erl b/lib/stdlib/src/erl_lint.erl index 9ef4acdf5f..8d2df1cf66 100644 --- a/lib/stdlib/src/erl_lint.erl +++ b/lib/stdlib/src/erl_lint.erl @@ -3531,6 +3531,8 @@ check_qlc_hrl(Line, M, F, As, St) ->  %% deprecated_function(Line, ModName, FuncName, [Arg], State) -> State.  %%  Add warning for calls to deprecated functions. +-dialyzer({no_match, deprecated_function/5}). +  deprecated_function(Line, M, F, As, St) ->      Arity = length(As),      MFA = {M, F, Arity}, @@ -3560,6 +3562,7 @@ deprecated_function(Line, M, F, As, St) ->      end.  -dialyzer({no_match, deprecated_type/5}). +  deprecated_type(L, M, N, As, St) ->      NAs = length(As),      case otp_internal:obsolete_type(M, N, NAs) of diff --git a/lib/stdlib/src/file_sorter.erl b/lib/stdlib/src/file_sorter.erl index aed857aa77..3aeaff8dc4 100644 --- a/lib/stdlib/src/file_sorter.erl +++ b/lib/stdlib/src/file_sorter.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 2001-2013. All Rights Reserved. +%% Copyright Ericsson AB 2001-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -28,6 +28,8 @@           check/1, check/2,            keycheck/2, keycheck/3]). +-dialyzer(no_improper_lists). +  -include_lib("kernel/include/file.hrl").  -define(CHUNKSIZE, 16384). diff --git a/lib/stdlib/src/lists.erl b/lib/stdlib/src/lists.erl index 62b6ca8a21..2b4472cdf7 100644 --- a/lib/stdlib/src/lists.erl +++ b/lib/stdlib/src/lists.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 1996-2013. All Rights Reserved. +%% Copyright Ericsson AB 1996-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -2267,6 +2267,8 @@ ukeysplit_2(I, Y, EY, [Z | L], R) ->  ukeysplit_2(_I, Y, _EY, [], R) ->      [Y | R]. +-dialyzer({no_improper_lists, ukeymergel/3}). +  ukeymergel(I, [T1, [H2 | T2], [H3 | T3] | L], Acc) ->      %% The fourth argument, [H2 | H3] (=HdM), may confuse type      %% checkers. Its purpose is to ensure that the tests H2 == HdM diff --git a/lib/stdlib/src/otp_internal.erl b/lib/stdlib/src/otp_internal.erl index bc70c296da..0dc2626ae8 100644 --- a/lib/stdlib/src/otp_internal.erl +++ b/lib/stdlib/src/otp_internal.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 1999-2015. All Rights Reserved. +%% Copyright Ericsson AB 1999-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -23,6 +23,8 @@  %%---------------------------------------------------------------------- +-dialyzer({no_match, obsolete/3}). +  -type tag()     :: 'deprecated' | 'removed'. %% | 'experimental'.  -type mfas()    :: mfa() | {atom(), atom(), [byte()]}.  -type release() :: string(). @@ -697,18 +699,20 @@ is_snmp_agent_function(del_agent_caps,        1) -> true;  is_snmp_agent_function(get_agent_caps,        0) -> true;  is_snmp_agent_function(_,		      _) -> false. +-dialyzer({no_match, obsolete_type/3}). +  -spec obsolete_type(module(), atom(), arity()) ->  	'no' | {tag(), string()} | {tag(), mfas(), release()}.  -dialyzer({no_match, obsolete_type/3}).  obsolete_type(Module, Name, NumberOfVariables) ->      case obsolete_type_1(Module, Name, NumberOfVariables) of -	{deprecated=Tag,{_,_,_}=Replacement} -> -	    {Tag,Replacement,"in a future release"}; +        {deprecated=Tag,{_,_,_}=Replacement} -> +            {Tag,Replacement,"in a future release"};  	{_,String}=Ret when is_list(String) ->  	    Ret; -	{_,_,_}=Ret -> -	    Ret; +        {_,_,_}=Ret -> +            Ret;  	no ->  	    no      end. diff --git a/lib/stdlib/src/qlc.erl b/lib/stdlib/src/qlc.erl index 24e64efee7..b396ba7057 100644 --- a/lib/stdlib/src/qlc.erl +++ b/lib/stdlib/src/qlc.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 2004-2015. All Rights Reserved. +%% Copyright Ericsson AB 2004-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -51,6 +51,8 @@  -export([template_state/0, aux_name/3, name_suffix/2, vars/1,           var_ufold/2, var_fold/3, all_selections/1]). +-dialyzer(no_improper_lists). +  %% When cache=list lists bigger than ?MAX_LIST_SIZE bytes are put on  %% file. Also used when merge join finds big equivalence classes.  -define(MAX_LIST_SIZE, 512*1024). diff --git a/lib/stdlib/src/rand.erl b/lib/stdlib/src/rand.erl index dc060e82d9..d455abf7b0 100644 --- a/lib/stdlib/src/rand.erl +++ b/lib/stdlib/src/rand.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 2015. All Rights Reserved. +%% Copyright Ericsson AB 2015-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -256,6 +256,8 @@ exs64_uniform(Max, {Alg, R}) ->  %% =====================================================================  -type exsplus_state() :: nonempty_improper_list(uint58(), uint58()). +-dialyzer({no_improper_lists, exsplus_seed/1}). +  exsplus_seed({A1, A2, A3}) ->      {_, R1} = exsplus_next([(((A1 * 4294967197) + 1) band ?UINT58MASK)|  			    (((A2 * 4294967231) + 1) band ?UINT58MASK)]), @@ -263,6 +265,8 @@ exsplus_seed({A1, A2, A3}) ->  			    tl(R1)]),      R2. +-dialyzer({no_improper_lists, exsplus_next/1}). +  %% Advance xorshift116+ state for one step and generate 58bit unsigned integer  -spec exsplus_next(exsplus_state()) -> {uint58(), exsplus_state()}.  exsplus_next([S1|S0]) -> diff --git a/lib/stdlib/src/unicode.erl b/lib/stdlib/src/unicode.erl index 3e8e6f5101..617da11ba8 100644 --- a/lib/stdlib/src/unicode.erl +++ b/lib/stdlib/src/unicode.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %%  -%% Copyright Ericsson AB 2008-2013. All Rights Reserved. +%% Copyright Ericsson AB 2008-2016. All Rights Reserved.  %%   %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -561,6 +561,8 @@ do_o_binary(F,L) ->  	    erlang:iolist_to_binary(List)      end. +-dialyzer({no_improper_lists, do_o_binary2/2}). +  do_o_binary2(_F,[]) ->      <<>>;  do_o_binary2(F,[H|T]) -> diff --git a/lib/stdlib/src/zip.erl b/lib/stdlib/src/zip.erl index bec0bd3f6d..f8ba6f18e9 100644 --- a/lib/stdlib/src/zip.erl +++ b/lib/stdlib/src/zip.erl @@ -1,7 +1,7 @@  %%  %% %CopyrightBegin%  %% -%% Copyright Ericsson AB 2006-2013. All Rights Reserved. +%% Copyright Ericsson AB 2006-2016. All Rights Reserved.  %%  %% Licensed under the Apache License, Version 2.0 (the "License");  %% you may not use this file except in compliance with the License. @@ -1566,6 +1566,8 @@ append_bins([_|_]=List, B) ->  append_bins([], B) ->      B. +-dialyzer({no_improper_lists, pwrite_iolist/3}). +  pwrite_iolist(B, Pos, Bin) ->      {Left, Right} = split_binary(B, Pos),      Sz = erlang:iolist_size(Bin),  | 
