On Mon, 27 Oct 2003, Dan Sugalski wrote:

> On Mon, 27 Oct 2003, Andy Dougherty wrote:
>
> > On Thu, 23 Oct 2003, Dan Sugalski wrote:
> >
> > Determining if your C library has setenv / unsetenv...Use of uninitialized value 
> > in string ne at (eval 21) line 91, <IN> chunk 10.
> >  (no) done.
>
> I think this might have something to do with #3:

Turns out not.  What's partly confusing is buffering.  Since stdio and
stderr are buffered differently, it turns out that the error did not
appear near the thing that was triggering it.

Specifically, the problem is ${inline} in config/gen/feature_h/feature_h.in

if (${inline} ne '') {
    #  . . .
}

but config/auto/inline.pl does

    if ($test) {
        Configure::Data->set(
        inline => $test
        );
    }

i.e., there is no 'else' clause.

I think the best fix is simply to unconditionally set inline:

diff -r -u parrot-current/config/auto/inline.pl parrot-andy/config/auto/inline.pl
--- parrot-current/config/auto/inline.pl        Fri Oct 24 04:40:44 2003
+++ parrot-andy/config/auto/inline.pl   Mon Oct 27 16:51:46 2003
@@ -41,9 +41,7 @@
        }
     }

-    if ($test) {
-       Configure::Data->set(
-           inline => $test
-       );
-    }
+    Configure::Data->set(
+       inline => $test
+    );
 }


Tracking this would have been easier with the following patch:

--- parrot-current/Configure.pl Thu Sep 25 19:00:25 2003
+++ parrot-andy/Configure.pl    Mon Oct 27 16:52:58 2003
@@ -16,6 +16,8 @@
 use Parrot::BuildUtil;
 use Parrot::Configure::RunSteps;

+$| = 1;
+
 $parrot_version = parrot_version();
 @parrot_version = parrot_version();



-- 
    Andy Dougherty              [EMAIL PROTECTED]

Reply via email to