On Thu, 16 Dec 2004, Michael G Schwern wrote:

> On Thu, Dec 16, 2004 at 09:57:44AM -0500, Andy Dougherty wrote:
> > > If POSIX was loaded and works, it should be quiet about it.
> > > If it was loaded but doesn't work (ie. its autoloaded functions are non
> > > functional) then the require should have failed.
> >
> > The require does fail, but with a warning that isn't trapped.
>
> Actually the require succeeded, but with a warning that isn't trapped.
> I checked, POSIX::ARG_MAX() is called and returns the right value.

Well, I checked too, and it was failing for me.  I tested with the
following patch:

--- perl-current/lib/ExtUtils/MM_Unix.pm        2004-12-15 08:11:11.000000000 
-0500
+++ perl-andy/lib/ExtUtils/MM_Unix.pm   2004-12-16 19:32:29.000000000 -0500
@@ -3612,11 +3612,14 @@

     if (!defined $self->{_MAX_EXEC_LEN}) {
         if (my $arg_max = eval { require POSIX;  &POSIX::ARG_MAX }) {
+           warn("MM_Unix: require POSIX succeeded.\n");
             $self->{_MAX_EXEC_LEN} = $arg_max;
         }
         else {      # POSIX minimum exec size
+           warn("MM_Unix: require POSIX failed.\n");
             $self->{_MAX_EXEC_LEN} = 4096;
         }
+       warn("MM_Unix: MAX_EXEC_LEN = " . $self->{_MAX_EXEC_LEN} . "\n");
     }

     return $self->{_MAX_EXEC_LEN};


There's probably something subtly different about our build set-ups, but
it doesn't really matters anyway.  I'll stop replying to this thread and
go and close the ticket.

-- 
    Andy Dougherty              [EMAIL PROTECTED]

Reply via email to