[erlang-questions] Debugger bug!
Gordon Guthrie
gordonguthrie@REDACTED
Tue Dec 12 22:37:35 CET 2006
I seem to be hitting a debugger bug in R10B.
I have the following function:
%%%-----------------------------------------------------------------------------
%%% File : bug.erl
%%% Author : Gordon Guthrie <gordonguthrie@REDACTED>
%%% Description :
%%%
%%% Created : 12 Dec 2006 by Gordon Guthrie
<gordonguthrie@REDACTED>
%%% Module chopped down to reproduce the bug in a small
function
%%%-----------------------------------------------------------------------------
-module(bug).
-export([apply/2]).
apply(Function,List)->
{Vals,RefTree,Errors,Refs}={[1,2],[],[],[]},
case Errors of
[] -> try {erlang:apply(util,list_to_atom(Function),Vals),
RefTree,Errors,Refs}
catch
exit:Reason ->
{0,RefTree,[{exit,Reason}|Errors],Refs};
error:Reason ->
{0,RefTree,[{error,Reason}|Errors],Refs}
end;
Other -> {0,RefTree,Errors,Refs} % Don't calc if there is an error
end.
In the shell it compiles fine with debugging on - and then a quick start
of the toolbar...
6> c(bug, [debug_info]).
./bug.erl:13: Warning: variable 'List' is unused
./bug.erl:24: Warning: variable 'Other' is unused
7>toolbar:start().
Then using the toolbar to load the debugger and try and interpret the beam
file and it all blows up...
{'try',16,
[{tuple,16,
[{call,16,
{remote,16,{atom,16,erlang},{atom,16,apply}},
[{atom,16,util},
{call,16,
{remote,16,
{atom,16,erlang},
{atom,16,list_to_atom}},
[{var,16,'Function'}]},
{var,16,'Vals'}]},
{var,17,'RefTree'},
{var,17,'Errors'},
{var,17,'Refs'}]}],
[],
[{clause,19,
[{tuple,19,[{atom,19,exit},{var,19,'Reason'},{var,19,'_'}]}],
[],
[{tuple,20,
[{integer,20,0},
{var,20,'RefTree'},
********Snipped*******************
=ERROR REPORT==== 12-Dec-2006::21:29:25 ===
** Generic server dbg_iserver terminating
** Last message in was {load,bug,
"/opt/erlang_apps/bug/bug.erl",
<<131,104,5,100,0,18,105,110,116,101,114,112,114,101,116,101,114,95,109,111,100,117,108,101,108,0,0,0,3,104,2,100,0,5,97,112,112,108,121,97,2,104,2,100,0,11,109,111,100,117,108,101,95,105,110,102,111,97,0,104,2,100,0,11,109,111,100,117,108,101,95,105,110,102,111,97,1,106,104,2,100,0,15,114,97,119,95,97,98,115,116,114,97,99,116,95,118,49,108,0,0,0,5,104,4,100,0,9,97,116
********Snipped*******************
** When Server state == {state,43,[],[],false,all,[]}
** Reason for termination ==
** {{badmatch,{dbg_iload,{unknown_expr,
{'try',16,
[{tuple,
16,
[{call,
16,
{remote,
16,
{atom,16,erlang},
********Snipped*******************
Gordon
More information about the erlang-questions
mailing list