in reply to Re: Perl Cross References
in thread Perl Cross References

Hi,

it's the 25% that bite us (both):

rj@pollux:~/_ELRIC/implementation/src/examples> perl -MO=Xref -we 1 File -e Subroutine (definitions) Package UNIVERSAL &VERSION s0 &can s0 &isa s0 Package attributes &bootstrap s0 -e syntax OK
and - btw. B::XRef works "good" for all smaller scripts I call it on as long as they aren't complicated and ~ 50 lines of code not more. Even then:
Use of uninitialized value in string eq at /usr/lib/perl5/5.6.1/i586-l +inux/B/Xref.pm line 117. Use of uninitialized value in substitution (s///) at /usr/lib/perl5/5. +6.1/i586-linux/B/Xref.pm line 124. Use of uninitialized value in string eq at /usr/lib/perl5/5.6.1/i586-l +inux/B/Xref.pm line 117. Use of uninitialized value in substitution (s///) at /usr/lib/perl5/5. +6.1/i586-linux/B/Xref.pm line 124. Use of uninitialized value in concatenation (.) or string at /usr/lib/ +perl5/5.6.1/i586-linux/B/Xref.pm line 130. Use of uninitialized value in string eq at /usr/lib/perl5/5.6.1/i586-l +inux/B/Xref.pm line 117. etc. etc. (cut for node readability) Use of uninitialized value in substitution (s///) at /usr/lib/perl5/5. +6.1/i586-linux/B/Xref.pm line 124. Use of uninitialized value in concatenation (.) or string at /usr/lib/ +perl5/5.6.1/i586-linux/B/Xref.pm line 130. Use of uninitialized value in concatenation (.) or string at /usr/lib/ +perl5/5.6.1/i586-linux/B/Xref.pm line 130.
Ugly isn't it? But after that the references spill out. So one must say: unusable for larger projects. Who needs cross references on small scripts???

Update:

I thought B::Xref spills out human readable output by default (no params).. :-) Is this considered human readable?

Subroutine deflate Package (lexical) $$eref 51 $@$$eref 56 $@$@$$eref 60 $@$@$@$$eref 65 $@$@$@$@$$eref 70 $eref i50, 51 $i i55, 56, 59, 59, 55, 70, 71 $inner i60, 62, 63, 64, 55, 69 $j i59, 60, 65, 66, 67, 59 $key i49 $outer i56, 62, 63, 64, 55, 69 $size i51, 66, 59, 55, 71 @$$eref 51, 56 @$@$$eref 56, 60 @$@$@$$eref 60, 65 @$@$@$@$$eref 65, 70 @$@$@$@$@$$eref 70 Package main @_ 49, 50

Bye
 PetaMem

Edit by tye to change PRE tags to CODE tags

Replies are listed 'Best First'.
Re: Re: Re: Perl Cross References
by Courage (Parson) on Jun 04, 2002 at 17:54 UTC
    You're right, things are worse than I thought. And yes, cross-referencing usage starts from large ammount of code.

    Anyway, did you tried latest perl (5.8.0-RC1)?
    Just curious.
    Also, thank you for your experience, with your help I will be careful when will be planning using any compiler stuff.

    Courage, the Cowardly Dog.
    PS. Something fishy is going on there, or my name is Vadim Konovalov. And it's not.