On Thu, Jul 14, 2005 at 08:14:26PM -0400, Rick Delaney wrote:
> > But I say that's a
> > special case to do with the fact that our's mix of two scoping
> > mechanisms, lexical and package, runs afoul of multi-package-in-one-file
> > programming idioms.
> > 
> >     package Foo;
> >     our @ISA = qw(...);  # or $VERSION or @EXPORT or ...
> > 
> >     package Bar;
> >     our @ISA = qw(...);
> > 
> > There's no corresponding idiom for "package Foo; my $x; package Bar; our
> > $x" or vice-versa.  Therefore, it should warn about the mask.
> 
> I am almost convinced by this argument.

What are your reservations?

I'd add to the argument that:

        package Foo;
        our $x = 42;

        package Bar;
        my $x = 23;

has been warning since 5.6.x and I can't recall anyone complaining.
Switching my and our around doesn't really change the scenario.


-- 
Michael G Schwern     [EMAIL PROTECTED]     http://www.pobox.com/~schwern
ROCKS FALL! EVERYONE DIES!
        http://www.somethingpositive.net/sp05032002.shtml

Reply via email to