aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/compiler/src/v3_core.erl6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/compiler/src/v3_core.erl b/lib/compiler/src/v3_core.erl
index ec974cd383..9f1f3b635c 100644
--- a/lib/compiler/src/v3_core.erl
+++ b/lib/compiler/src/v3_core.erl
@@ -772,7 +772,11 @@ expr_map(M0,Es0,A,St0) ->
%% M3 = M2#{ K2 := 42 }
map_build_pair_chain(M,Es,A,St) ->
- map_build_pair_chain(M,Es,A,St,[]).
+ %% hack, remove iset if only literal
+ case map_build_pair_chain(M,Es,A,St,[]) of
+ {_,[#iset{arg=#c_literal{}=Val}],St1} -> {Val,[],St1};
+ Normal -> Normal
+ end.
map_build_pair_chain(M0,[],_,St,Mps) ->
{M0,Mps,St};