Uploaded image for project: 'Erlang/OTP'
  1. Erlang/OTP
  2. ERL-1276

Internal consistency check failed

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 23.0.1
    • Fix Version/s: 23.0.3
    • Component/s: compiler
    • Labels:
      None

      Description

      Compiling this file reproduces the error:

       

      -module(foo).
      -export([demo/1]).
      
      demo(#{map := Map} = Result) ->
        case (case is_map_key("ABC", Map) of
          false -> false;
          _ -> is_map_key("DEF", Map)
        end) of
          true ->
            {"DEF", "GHI", "ABC"};
          false ->
            case (case is_map_key("JKL", Map) of
              false -> false;
              _ -> is_map_key("DEF", Map)
            end) of
              true ->
                {"DEF", "GHI", "JKL"};
              false ->
                case (case is_map_key("ABC", Map) of
                  false -> false;
                  _ -> is_map_key("MNO", Map)
                end) of
                  true ->
                    {"MNO", nil, "ABC"};
                  false ->
                    case is_map_key("JKL", Map) of
                      true -> {"JKL", nil, nil}
                    end
                end
            end
        end,
      
        Result.
      

      Thanks!

        Attachments

          Activity

            People

            Assignee:
            bjorn Björn Gustavsson
            Reporter:
            josevalim José Valim
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: