falconne wrote on Thu Mar 17 08:24:48 CET 2005:
I'm just starting out with EPIC on Linux and having a few problems with the debugger. I've noticed a few similar threads, but they were all to do with versions of PadWalker on ActivePerl, whereas my issue is in Linux and PadWalker appears to work, but EPIC doesn't like the way it's output is formatted. I have Eclipse Platform 3.0.1 using EPIC 0.3.0 and perl 5.8.5. The problem I have is with the display of complex variables (scalars display fine during the process, so it's not totally broke). If I try something like this: #!/usr/bin/perl use strict; use warnings; sub main { my %bar = (answer => 42, data => [2, 4, 6]); print "The answer is $bar{answer}\n"; } main(); When I step over the %bar assignment line, I get a popup saying "Error Parsing Debugger Variables". The terminal output shows (I have just taken the relevant bit: ---Waiting for Command (128--0) to finish---------------------------- !!!!!!!!!!!!!!!!!!Command (128--0) finished!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ############Cleanup Command (128--0) ############State isrunning false isfinished true Start 1+++++++++++++++++true line 4:1: expecting INDENT_END, found ' ' line 4:11: expecting PAREN_CL, found ' ' line 6:7: expecting EOF, found '2' !!!!! Parse Error!!!! !ENTRY org.epic.debug.perldebugger.perl **Error** 0 Mar 17, 2005 20:09:55.779 !MESSAGE Error Parsing Debugger Variables !STACK 0 java.lang.Exception: ******************************* ******************************* +++++++Error Parsing Vars++++++ ******************************* ******************************* %bar = ( 'answer' => 42 'data' => ARRAY(0x83bf77c) 0 2 1 4 2 6 ) ------------------------------- ------------------------------- +++++++Error Parsing Vars++++++ ------------------------------- ------------------------------- at org.epic.debug.varparser.PerlVarParser.logParsError(PerlVarParser.java:196) at org.epic.debug.varparser.PerlVarParser.parseVars(PerlVarParser.java:163) at org.epic.debug.varparser.PerlVarParser.parseVars(PerlVarParser.java:127) at org.epic.debug.PerlDB.setVarList(PerlDB.java:1197) at org.epic.debug.PerlDB.access$4(PerlDB.java:1187) at org.epic.debug.PerlDB$VarUpdateThread.run(PerlDB.java:1587) So it looks like the debugger spits out the values ok, but it is not being parsed. Strangely, if I remove the subroutine and just have those two lines, I don't get any errors, but all that displays in the Variables window is "*DB::single" In case the formatting was important and my spaces get clobbered, I've pasted the data display on the terminal with spaces replaced by underscores: %bar_=_( ___'answer'_=>_42 ___'data'_=>_ARRAY(0x83bf77c) ______0__2 ______1__4 ______2__6 ) Anyway, thanks in advance for any help.
Note: The above is an archived snapshot of a forum thread. Use the original thread at sf.net to post comments.