piqi

Code pulled with git from git://github.com/alavrik/piqi.git with the last commit being a56ddd2

These are Intersection warnings for piqi.

(Only new warnings by Intersection-enabled analysis are listed. Warnings by current public version of Dialyzer are listed here.)

dialyzer -n -q -Wno_improper_lists piqi-erlang/ebin
piqi_piqi.erl:196: The call piqi_piqi:gen_anonymous_record(417618353,Y::[#field{name::'undefined' | binary() | [any()],type::'any' | 'binary' | 'bool' | 'float' | 'int' | 'string' | 'text' | 'undefined' | 'word' | {_,_},mode::'optional' | 'repeated' | 'required' | 'undefined',default::'undefined' | {_,_,_},code::'undefined' | integer(),proto_name::'undefined' | binary() | [any()],json_name::'undefined' | binary() | [any()],getopt_letter::'undefined' | binary() | [any()],getopt_doc::'undefined' | binary() | [any()],erlang_name::'undefined' | binary() | [any()]}]) will never return since the success typing is ('undefined',#anonymous_record{field::[#field{name::'undefined' | binary() | [any()],type::'any' | 'binary' | 'bool' | 'float' | 'int' | 'string' | 'text' | 'undefined' | 'word' | {_,_},mode::'optional' | 'repeated' | 'required' | 'undefined',default::'undefined' | {_,_,_},code::'undefined' | integer(),proto_name::'undefined' | binary() | [any()],json_name::'undefined' | binary() | [any()],getopt_letter::'undefined' | binary() | [any()],getopt_doc::'undefined' | binary() | [any()],erlang_name::'undefined' | binary() | [any()]}]}) or (pos_integer(),#anonymous_record{field::[#field{name::'undefined' | binary() | [any()],type::'any' | 'binary' | 'bool' | 'float' | 'int' | 'string' | 'text' | 'undefined' | 'word' | {_,_},mode::'optional' | 'repeated' | 'required' | 'undefined',default::'undefined' | {_,_,_},code::'undefined' | integer(),proto_name::'undefined' | binary() | [any()],json_name::'undefined' | binary() | [any()],getopt_letter::'undefined' | binary() | [any()],getopt_doc::'undefined' | binary() | [any()],erlang_name::'undefined' | binary() | [any()]}]}) -> [binary() | maybe_improper_list(any(),binary() | []) | byte(),...] and the contract is (Code::piqirun_code(),X::anonymous_record()) -> iolist()