[erlang-questions] Polymorphic opaque types and dialyzer

Siraaj Khandkar siraaj@REDACTED
Sun Jul 6 22:55:46 CEST 2014


Any update on this? Any plans for Dialyzer to ever support polymorphic 
opaque types?


On 03/13/2012 08:38 AM, Dmitry Groshev wrote:
> Dialyzer can't handle polymorphic opaque type:
>
> $ echo "-module(opaque)." >> opaque.erl
> $ echo "-opaque test(A) :: {A, A}." >> opaque.erl
> $ dialyzer --src opaque.erl
>    Checking whether the PLT
> /home/si14/work/repos/saelmon/.saelmon_dialyzer.plt is up-to-date...
> yes
>    Proceeding with analysis...
> =ERROR REPORT==== 13-Mar-2012::16:32:50 ===
> Error in process <0.30.0> with exit value:
> {{nocatch,{error,"Polymorphic opaque types not supported
> yet"}},[{erl_types,'-t_opaque_from_records/1-anonymous-2-',3,[{file,"erl_types.erl"},{line,564}]},{dict,map_bucket,2,[{file,"dict.erl"},{line,459}]},{dict,map_bkt_list,2,...
>
>
> dialyzer: Analysis failed with error:
> {{nocatch,{error,"Polymorphic opaque types not supported yet"}},
>   [{erl_types,'-t_opaque_from_records/1-anonymous-2-',3,
>               [{file,"erl_types.erl"},{line,564}]},
>    {dict,map_bucket,2,[{file,[...]},{line,...}]},
>    {dict,map_bkt_list,2,[{file,...},{...}]},
>    {dict,map_bkt_list,2,[{...}|...]},
>    {dict,map_seg_list,2,[...]},
>    {dict,map_dict,2,...},
>    {erl_types,t_opaque_from_records,...},
>    {dialyzer_typesig,...}]}
> Last messages in the log cache:
>    Reading files and computing callgraph... done in 0.06 secs
>    Removing edges... done in 0.01 secs
>    Typesig analysis for SCC: [{opaque,module_info,0}]
>
> Is there any solution to this? Will it be fixed in upcoming releases of Erlang?




More information about the erlang-questions mailing list