Hi all, In the ghc docs I found that "-Dsymbol=value" does not affect -D macros passed to the C compiler when compiling via C, the mode used when optimization is on.
So the perl5 ccflags defined must be passed using -optc. The following change in Makefile.PL fixed it: --- /tmp/Perl6-Pugs-6.2.7/Makefile.PL 2005-06-13 06:59:36.000000000 -0500 +++ /work/BUILD/Perl6-Pugs-6.2.7/Makefile.PL 2005-07-07 19:34:11.000000000 -0500 @@ -140,7 +140,7 @@ my $flags = "$Config{ccflags} $Config{ccdlflags}"; if ($flags =~ /\S/) { $flags =~ s{([\\"'])}{\\$1}g; - $ccdlflags .= qq[ -optl "$_" ] + $ccdlflags .= (/^-D/ ? ' -optc' : ' -optl') . qq["$_" ] for split /\s+/, $flags; } } -- Salvador Ortiz Garcia <[EMAIL PROTECTED]> MatÃas Software Group