Cannot see variables in debugger.

Dr Bop
  • Dr Bop

    Dr Bop - 2007-06-04


    I'm running:
    Eclipse 3.1.2
    Epic Source Plug-in 0.5.37
    Perl Debug Plug-in 0.5.27
    PadWalker 1.5
    Perl v5.8.7

    on Linux 2.6.15

    The debugger seems to be running OK, in that I can start and single step thru my program.  However I cannot see any variables in the debugger.

    All variables in the program are declared with "my".  I also added "use PadWalker;" in my program, for lack of a better idea.

    Any help grovelling appreciated.

    - Dr Bop (not a real doctor)

    • Jan Ploski

      Jan Ploski - 2007-06-04

      You don't have to "use PadWalker". I suggest that you upgrade to 0.6.6 first, as it generally contains an improved version of the debugger. If it still doesn't work, enable the debugger console and paste its output here (read previous postings about the debugger console to get an idea).

    • Dr Bop

      Dr Bop - 2007-06-06


      I upgraded as Jan suggested, I now have the newest versions, but still have debugger errors.

      I'm running:
      Eclipse 3.2.2
      Epic Source Plug-in 0.6.6
      Perl Debug Plug-in 0.6.6
      PadWalker 1.5
      Perl v5.8.7

      on Linux 2.6.15 

      Trying to run the debugger yields:

      "use" not allowed in expression at /home/cariello/workspace/.metadata/.plugins/org.epic.debug/
      line 5483, near "{ "

      syntax error at /home/cariello/workspace/.metadata/.plugins/org.epic.debug/
      line 5483, near "{ use epic_breakpoints"

      syntax error at /home/cariello/workspace/.metadata/.plugins/org.epic.debug/
      line 5507, near "}"

      Compilation failed in require.

      BEGIN failed--compilation aborted.

      • Jan Ploski

        Jan Ploski - 2007-06-06

        Can you post 20 lines above and below line 5483 from /home/cariello/workspace/.metadata/.plugins/org.epic.debug/

      • Jan Ploski

        Jan Ploski - 2007-06-09

        This problem is fixed in 0.6.7 (just out).

    • mamue110

      mamue110 - 2007-06-07

      i've got the same Problem. Variable inspection is also not working.

      • Jan Ploski

        Jan Ploski - 2007-06-07

        Same request as for drbop: post 20 lines above and below the line with "use epic_breakpoints" from /home/cariello/workspace/.metadata/.plugins/org.epic.debug/

    • Dr Bop

      Dr Bop - 2007-06-09

      Hey Jan,

      Here's the sub with the line which causes the issue.  Line 5483 is marked with =====>

      Thanks for any and all help,

      sub postponed {

          # If there's a break, process it.
          if ($ImmediateStop) {

              # Right, we've stopped. Turn it off.
              $ImmediateStop = 0;

              # Enter the command loop when DB::DB gets called.
              $signal = 1;

          # If this is a subroutine, let postponed_sub() deal with it.
          return &postponed_sub unless ref \$_[0] eq 'GLOB';

          # Not a subroutine. Deal with the file.
          local *dbline = shift;
          my $filename = $dbline;
          $filename =~ s/^_<//;
          local $\ = '';
          $signal = 1, print $OUT "'$filename' loaded...\n"
            if $break_on_load{$filename};
          print_lineinfo( ' ' x $stack_depth, "Package $filename.\n" ) if $frame;

          # Do we have any breakpoints to put in this file?
      ====>    \{ use epic_breakpoints; my \$osingle = \$single; \$single = 0; \$single = epic_breakpoints::_postponed(\$filename, \$line) || \$osingle; }
      return unless $postponed_file{$filename};

          # Yes. Mark this file as having breakpoints.
          $had_breakpoints{$filename} |= 1;

          # "Cannot be done: unsufficient magic" - we can't just put the
          # breakpoints saved in %postponed_file into %dbline by assigning
          # the whole hash; we have to do it one item at a time for the
          # breakpoints to be set properly.
          #%dbline = %{$postponed_file{$filename}};

          # Set the breakpoints, one at a time.
          my $key;

          for $key ( keys %{ $postponed_file{$filename} } ) {

              # Stash the saved breakpoint into the current file's magic line array.
              $dbline{$key} = ${ $postponed_file{$filename} }{$key};

          # This file's been compiled; discard the stored breakpoints.
          delete $postponed_file{$filename};

      } ## end sub postponed

      • Jan Ploski

        Jan Ploski - 2007-06-09

        The backslashes in line 5483 are all wrong (they are not present on my machine)... Which version of Java do you use (can be seen in Eclipse's Help/About Eclipse SDK/Configuration dialog)?

    • Dr Bop

      Dr Bop - 2007-06-10

      Sweet !!!   Everything A-OK.

      Dr Bop (not a real doctor)

      BTW Jan, are you an EPIC developer ?

      • Jan Ploski

        Jan Ploski - 2007-06-10

        > BTW Jan, are you an EPIC developer ?

        Yes, if you click on my username you can find out.


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

Sign up for the SourceForge newsletter:

No, thanks