#289 Error parsing debugger variables

v0.5.x
closed-fixed
Debugger (177)
5
2006-09-04
2006-08-24
Alan Malloy
No

I have just installed EPIC for the first time. I
currently have version 0.5, but I tried 0.4 earlier and
had the same problem. I have Cygwin Perl, but I was not
sure how to install Padwalker for that, so I went ahead
and got ActivePerl too, and Eclipse now points to that,
with the correct version of Padwalker installed.
The debugger correctly displays local variables of most
types: filehandles, scalars, and lists are all
displayed in the Variables pane. However, if I declare
a hash local variable, then I get an error message
evrey time I step through a line in the active
subroutine. The dialog says, "Error Parsing Debugger
Variables." If I ask to view details, the following is
displayed:
Error Parsing Debugger Variables
*******************************
*******************************
+++++++Error Parsing Vars++++++
*******************************
*******************************

NS00000007$resultS00000005undefNS00000004$valS00000003'z'NS00000006%testsUse
of uninitialized value in string eq at
C:/Ubicom/workspace/.metadata/.plugins/org.epic.debug/dumpvar_epic.pm
line 233.
at
C:/Ubicom/workspace/.metadata/.plugins/org.epic.debug/dumpvar_epic.pm
line 233
dumpvar_epic::unwrap('HASH(0x193fe3c)', 3, -1)
called at
C:/Ubicom/workspace/.metadata/.plugins/org.epic.debug/dumpvar_epic.pm
line 399
dumpvar_epic::dumplex('%tests', 'HASH(0x193fe3c)',
-1) called at (eval 24)[C:/Perl/lib/perl5db.pl:628] line 2
eval '($@, $!, $^E, $,, $/, $\\, $^W) =
@saved;package main; $^D = $^D | $DB::db_stop;
;{eval { require PadWalker; PadWalker->VERSION(0.08)
}or print $DB::OUT ("PadWalker module not found -
please install\\n");do \'dumpvar_epic.pm\' unless
defined &dumpvar_epic::dumpvar_epic;defined
&dumpvar_epic::dumpvar_epic or print $DB::OUT
"dumpvar_epic.pl not available.\\n";my $h = eval {
PadWalker::peek_my(2) };my @vars = split (\'
\',\'\');$@ and $@ =~ s/ at .*//, print $DB::OUT
($@);my $savout =
select($DB::OUT);dumpvar_epic::dumplex($_,$h->{$_},defined
$option{dumpDepth} ? $option{dumpDepth} : -1,@vars) for
sort keys %$h;print "E";select($savout);};;
;' called at C:/Perl/lib/perl5db.pl line 628
DB::eval called at C:/Perl/lib/perl5db.pl line 3410
DB::DB called at
C:/Ubicom/workspace/sdk70/doc/tmp.pl line 12
main::case('z') called at
C:/Ubicom/workspace/sdk70/doc/tmp.pl line 31

S00000003...INS00000003'a'S00000007'alpha'NS00000003'b'S00000006'beta'NS00000009'default'S0000000fCODE(0x191b0e8)S0000006a
->
&main::__ANON__[C:/Ubicom/workspace/sdk70/doc/tmp.pl:30]
in
C:/Ubicom/workspace/sdk70/doc/tmp.pl:30-30NS00000003'x'S00000005'chi'OE-------------------------------
-------------------------------
+++++++Error Parsing Vars++++++
-------------------------------
-------------------------------

The script I was working on is attached. I was just
playing around with how to write a switch/case
statement in Perl. I get similar results in any other
script with a lexically scoped hash, whether at the
global level or in a subroutine.
Any ideas?

Discussion

  • Alan Malloy

    Alan Malloy - 2006-08-24

    My perl file

     
  • Alan Malloy

    Alan Malloy - 2006-08-24

    Logged In: YES
    user_id=1583295

    I forgot to mention my relevant version info. I am running
    Windows XP, With Eclipse 3.2. The build ID for my version of
    Eclipse is M20060629-1905. On reflection, the M suggests it
    may be a milestone build as opposed to a release build,
    which would be worrying. However, I am certain I installed
    it in early July, and 3.2 was released in June, so I must
    have a good version.

     
  • Jan Ploski

    Jan Ploski - 2006-08-25

    Logged In: YES
    user_id=86907

    The problem only occurs (for me) if the "Enable warnings"
    preference is checked in EPIC Preferences. So a quick
    workaround would be to uncheck it.

    Anyway, I just committed a fix to CVS - so it will become
    available in the next release of stable and testing.

     
  • Alan Malloy

    Alan Malloy - 2006-08-25

    Logged In: YES
    user_id=1583295

    Well, by God, it works. Thanks for the tip. Does this
    disable any other useful features I might want? When I
    checked "enable warnings" I thought it was a setting to
    enable compiler warnings, but if it's just debugger warnings
    I don't really care.

     
  • Jan Ploski

    Jan Ploski - 2006-08-25

    Logged In: YES
    user_id=86907

    The setting passes the -w parameter to the Perl intepreter
    invoked either for compilation or for actually executing a
    script. I never use it myself because 'use warnings;' in
    the script source code is just as good for me (indeed,
    better, as it does not cause EPIC's internal helper scripts
    to execute in warnings-on mode - which can hurt, as we have
    seen).

     
  • Jan Ploski

    Jan Ploski - 2006-09-04
    • status: open --> closed-fixed
     
  • Jan Ploski

    Jan Ploski - 2006-09-04

    Logged In: YES
    user_id=86907

    Fixed in stable 0.4.8 and testing 0.5.4.

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks