Front page | perl.perl5.porters |
Postings from January 2017
[perl #2743] perl -MO status
From:
James E Keenan via RT
Date:
January 2, 2017 13:16
Subject:
[perl #2743] perl -MO status
Message ID:
rt-4.0.24-24776-1483362993-1831.2743-15-0@perl.org
On Tue, 28 Mar 2000 11:39:03 GMT, tchrist@chthon.perl.com wrote:
> 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
This bug ticket was originally filed nearly 17 years ago. Its original complaint was focused on the code examples in the document 'perlcompile.pod' which no longer exists. That document has apparently been largely superseded by B::Deparse.
I recommend that we close this ticket. (I'll take it for the purpose of closing it within 7 days unless there is objection.) If there are deficiencies in B::Deparse's documentation, we should open a new ticket.
Thank you very much.
--
James E Keenan (jkeenan@cpan.org)
---
via perlbug: queue: perl5 status: open
https://rt.perl.org/Ticket/Display.html?id=2743