aboutsummaryrefslogtreecommitdiffstats
path: root/lib/debugger/src/dbg_ieval.erl
diff options
context:
space:
mode:
authorAnthony Ramine <[email protected]>2014-02-04 02:47:59 +0100
committerAnthony Ramine <[email protected]>2014-02-10 15:19:07 +0100
commitfb8b207dff92916b1525ed1461dac96ce0922a4d (patch)
treed5cbbd3100bd07c5a9bf1bdcc768a48debdbb8c5 /lib/debugger/src/dbg_ieval.erl
parent23790daf1a2d384b0fc11c655fa825151d9fa420 (diff)
downloadotp-fb8b207dff92916b1525ed1461dac96ce0922a4d.tar.gz
otp-fb8b207dff92916b1525ed1461dac96ce0922a4d.tar.bz2
otp-fb8b207dff92916b1525ed1461dac96ce0922a4d.zip
Truly test debugger in erl_eval_SUITE copy
The module was not interpreted. This surfaced two bugs, related to shadowed variables in binary patterns in comprehension generators, and guard filters not properly detected. The guard detection code from dbg_iload is deleted in favor of erl_lint:is_guard_test/1. The erl_lint module is now safe to use because it can handle all expressions emitted by sys_pre_expand, the following warning is thus obsolete and has been removed from code: %% Cannot use erl_lint here as sys_pre_expand has transformed source.
Diffstat (limited to 'lib/debugger/src/dbg_ieval.erl')
-rw-r--r--lib/debugger/src/dbg_ieval.erl2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/debugger/src/dbg_ieval.erl b/lib/debugger/src/dbg_ieval.erl
index f4b6d488a5..6ebce9b890 100644
--- a/lib/debugger/src/dbg_ieval.erl
+++ b/lib/debugger/src/dbg_ieval.erl
@@ -1032,7 +1032,7 @@ eval_generate([V|Rest], P, Bs0, CompFun, Ieval) ->
case catch match1(P, V, erl_eval:new_bindings(), Bs0) of
{match,Bsn} ->
Bs2 = add_bindings(Bsn, Bs0),
- CompFun(Bs2) ++ eval_generate(Rest, P, Bs2, CompFun, Ieval);
+ CompFun(Bs2) ++ eval_generate(Rest, P, Bs0, CompFun, Ieval);
nomatch ->
eval_generate(Rest, P, Bs0, CompFun, Ieval)
end;