aboutsummaryrefslogtreecommitdiffstats
path: root/lib/compiler/src/sys_core_fold.erl
diff options
context:
space:
mode:
authorBjörn Gustavsson <[email protected]>2018-04-26 10:35:40 +0200
committerBjörn Gustavsson <[email protected]>2018-04-26 10:35:40 +0200
commita36e197b53e7f4e67c2e47f3a4410e7e07af3900 (patch)
tree93cbba3e6b7489c0f7f9e71599b4580d26ac379e /lib/compiler/src/sys_core_fold.erl
parented4a3e682c28b6bfda7008f627f1bf3e748ba211 (diff)
parent88faa3b4082485ccf7e2c1be9e351be355818fe7 (diff)
downloadotp-a36e197b53e7f4e67c2e47f3a4410e7e07af3900.tar.gz
otp-a36e197b53e7f4e67c2e47f3a4410e7e07af3900.tar.bz2
otp-a36e197b53e7f4e67c2e47f3a4410e7e07af3900.zip
Merge branch 'bjorn/compiler/misc'
* bjorn/compiler/misc: beam_validator: Clear X registers in wait_timeout sys_core_fold: Eliminate crash for map update in guard
Diffstat (limited to 'lib/compiler/src/sys_core_fold.erl')
-rw-r--r--lib/compiler/src/sys_core_fold.erl2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/compiler/src/sys_core_fold.erl b/lib/compiler/src/sys_core_fold.erl
index bb3a9c7628..167383a202 100644
--- a/lib/compiler/src/sys_core_fold.erl
+++ b/lib/compiler/src/sys_core_fold.erl
@@ -214,6 +214,8 @@ opt_guard_try(#c_case{clauses=Cs}=Term) ->
Term#c_case{clauses=opt_guard_try_list(Cs)};
opt_guard_try(#c_clause{body=B0}=Term) ->
Term#c_clause{body=opt_guard_try(B0)};
+opt_guard_try(#c_let{vars=[],arg=#c_values{es=[]},body=B}) ->
+ B;
opt_guard_try(#c_let{arg=Arg,body=B0}=Term) ->
case opt_guard_try(B0) of
#c_literal{}=B ->