BUG: OTP 23.0 internal consistency check failed

Björn Gustavsson bjorn@REDACTED
Tue Aug 18 08:44:59 CEST 2020


This bug has been fixed in OTP-23.0.3.

A tip for reporting compiler bugs: Use "erlc -P some_file.erl" to run
the preprocessor and produce some_file.P. That file can then be
renamed to some_file.erl.

/Björn

On Sun, Aug 16, 2020 at 10:36 AM Ulf Wiger <ulf@REDACTED> wrote:
>
> Trying to build the aeternity source code on OTP 23.0  (and 23.0.2),
> the following error message appeared (after fixing some deps):
>
> ===> Compiling apps/aechannel/src/aesc_fsm.erl failed
> aesc_fsm: function prepare_initial_state/4+125:
>   Internal consistency check failed - please report this bug.
>   Instruction: {test,is_eq_exact,{f,5977},[{y,2},{atom,true}]}
>   Error:       {unassigned,{y,2}}:
>
> The problem can be reproduced by extracting the following source files
> and calling `erlc -W aesc_fsm.erl`
> (https://github.com/aeternity/aeternity)
>
> apps/aechannel/src/
>   aesc_fsm.erl
>   aesc_fsm.hrl
>   aesc_codec.hrl
>   aechannel.hrl
> apps/aecontract/include/hard_forks.hrl
> apps/aeutils/include/aeu_stacktrace.hrl
>
> (The -include_lib() instructions need to be changed to -include())
>
> I tried reducing the aesc_fsm.erl module to just the affected function
> + some helper functions and data declarations, but once the code
> compiled, the consistency check problem was gone.
>
> The error did not occur using OTP 22.3.
>
> BR,
> Ulf W



-- 
Björn Gustavsson, Erlang/OTP, Ericsson AB


More information about the erlang-questions mailing list