develooper Front page | perl.perl5.porters | Postings from January 2005

Module export symbols not getting imported (Perl5.8.0)

Thread Next
From:
Hal Morris
Date:
January 24, 2005 03:32
Subject:
Module export symbols not getting imported (Perl5.8.0)
Message ID:
Pine.NEB.4.61.0501232217160.12608@panix2.panix.com

I'm running on Redhat Linux version 9.0.

I'm having a rash of previously working code breaking when module exported 
symbols no longer get imported to another module that 'uses' them.

The situation looks like:

main perl file:

...
use A;
use B;

A contains 'use B'

main calls function f() in A.pm, which calls function g() in B.pm, which 
is treated as an undefined method.

Running under the debugger, A.pm definitely contains 'use B.pm', but on 
entry to [A::]f(), I find:

   DB <<1>> p scalar keys %A::
   9
   DB <<2>> use B
   DB <<3>> p scalar keys %A::
   113

Closer examination shows the A.pm symbol table grew via importation of 
symbols from B.pm that should already have gotten imported.

Is anything like this known to occur in 5.8.0 that could be prevented 
through an upgrade?

Workarounds, diagnostic strategies, anything might help.  I'll be glad to 
try something out and submit the results.  This is occurring in a pretty 
big system and I don't know how to isolate it.

If this is the wrong forum I'm having trouble finding the right one, and I 
have in the past worked with perl5 porters (I was sort of the perl for UTS 
liason).

Best wishes,   Hal

Thread Next


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