# New Ticket Created by Nicholas Clark
# Please include the string: [perl #19630]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=19630 >
I was seeing this:
Generating config.h...done.
Generating feature.h...done.
Writing Parrot::Config module...done.
Use of uninitialized value in substitution iterator at lib/Parrot/Configure/Step.pm
line 121, <IN> line 111.
Generating Makefiles...done.
Recording this configuration in myconfig...done.
Moving platform files into place...done.
Generating libparrot.def...done.
Generating core pmc list...done.
Okay, we're done!
And it was annoying me. So I did this to track it down:
--- lib/Parrot/Configure/Step.pm~ Sat Dec 28 12:10:18 2002
+++ lib/Parrot/Configure/Step.pm Tue Dec 31 18:55:14 2002
@@ -120,7 +120,9 @@ sub genfile {
}
s{
\$\{(\w+)\}
- }{Configure::Data->get($1)}egx;
+ }{my $val=Configure::Data->get($1);
+ defined $val ? $val
+ : (warn "value for '$1' in $source is undef", '')}egx;
print OUT;
}
I think that something like that is a good idea, as this is more helpful:
Generating config.h...done.
Generating feature.h...done.
Writing Parrot::Config module...done.
value for 'asmfun_o' in config/gen/makefiles/root.in is undef at
lib/Parrot/Configure/Step.pm line 122, <IN> line 111.
Generating Makefiles...done.
Recording this configuration in myconfig...done.
Moving platform files into place...done.
Generating libparrot.def...done.
Generating core pmc list...done.
Okay, we're done!
So I think we also need the appended patch, which elimates the warning.
Nicholas Clark
--- config/auto/jit.pl~ Fri Dec 27 18:27:04 2002
+++ config/auto/jit.pl Tue Dec 31 18:59:16 2002
@@ -73,6 +73,8 @@ sub runstep {
copy_if_diff("config/gen/platform/$cpuarch.s", "asmfun.s");
Configure::Data->set(asmfun_o => 'asmfun$(O)');
+ } else {
+ Configure::Data->set(asmfun_o => '');
}
$jitcapable = $set_jitcapable if defined $set_jitcapable;