develooper Front page | perl.perl5.porters | Postings from March 2000

perl -MO status

From:
Tom Christiansen
Date:
March 27, 2000 19:48
Subject:
perl -MO status
Message ID:
23155.954215276@chthon
I'm going through 5.6's perlcompile and trying all the examples,
and many/most of them always/often have serious/fatal difficulties
ranging from incorrect/spurious output to completely blowing up.

Does this stuff have an owner?

1)  With Deparse, virtually anything nontrivial gets me

    Can't call method "sibling" on an undefined value at lib/B/Deparse.pm line 257.
    CHECK failed--call queue aborted.

2) Before Deprase dies, you often get a lot of these:

    Exiting subroutine via next at /opt/perl/5.005.6.0/lib/5.6.0/i686-linux/B/Deparse.pm lin
    e 257.
    Exiting subroutine via next at /opt/perl/5.005.6.0/lib/5.6.0/i686-linux/B/Deparse.pm lin
    e 257.

3) From Lint you can get this:

    Undefined value assigned to typeglob at lib/B/Lint.pm line 291.

4)   And with Xref, this simple thing:

    sub start {
       my($self, $tag, $attr, $attrseq, $orig) = @_;
       if ($tag eq 'a' && exists $attr->{href}) {
	   if ($attr->{href} =~ s/\Q$from/$to/g) {
	       # must reconstruct the start tag based on $tag and $attr.
	       # wish we instead were told the extent of the 'href' value
	       # in $orig.
	       my $tmp = "<$tag";
	       for (@$attrseq) {
		   my $encoded = encode_entities($attr->{$_});
		   $tmp .= qq( $_="$encoded ");
	       }
	       $tmp .= ">";
	       $self->output($tmp);
	       return;
	   }
       }
       $self->output($orig);
    }

Produces this with Xref:

    Package (lexical)
      $attr             i2, 3
      $attrseq          i2, 9
      $encoded          i10, 11
      $orig             i2, &18, 18
      $self             i2, 14, 18
      $tag              i2, 3, 8
      $tmp              i8, &14, 11, 13, 14
      %$attr            3, 4
      %%$attr           4, 10
      %%%$attr          10
      @$attrseq         9

This %%%%% business is getting out of hand.

That's as far as I've gotten.  You already got a few perlcc bug
reports, too.

--tom



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About