[erlang-questions] R12B-1 dialyzer 'Unsupported primop' error

Kostis Sagonas kostis@REDACTED
Mon Mar 3 20:56:10 CET 2008


John Webb wrote:
> In R12B-1 the following seemingly correct (if not so useful) program  
> yields the error {'Unsupported primop', bs_context_to_binary} when  
> dialyzer runs with the "Old Style" analysis option.
> 
>      -module(test).
>      -compile(export_all).
>      start(<<>>) -> ok.
> 
> The compiler seems to emit the primop when the function arguments  
> contain a binary match and there is no final catch-all clause. My code  
> runs as expected so I am assuming this is a dialyzer issue?

Yes.  The issue is that "old_style" has not been updated to support all 
primops that the current compiler generates.  Come to think of it, why 
should it?  We see little reason for a user to want "old_style" and at 
the same time generating .beam files by using the current compiler...

Unrelated to your mail, last week we decided to discontinue support for 
the "old_style" option and today we actually took it out all that code.
The current development version of Dialyzer spits out this error:

     Option --old_style is no longer supported

Sorry, but there will not be a fix for your problem.  The new Dialyzer 
is much much better and we see little reason to continue generating 
warnings without line information (as --old_style does).

Kostis



More information about the erlang-questions mailing list