Inline::CPP v0.34 as of this moment has 96 smoke tests in, 79 passes, and 17 fails. None of the failures exhibit the Parse::RecDescent bug. Fixed!
Of the 17 failures, 15 are on Solaris 2.11, with the failure point, "/bin/sh: CC: command not found" We're trying to detect the correct compiler to use through some logic in Makefile.PL: #============================================================================ # Make an intelligent guess about what compiler to use #============================================================================ my $cc_guess; my $libs_guess; if ($Config{gccversion} and $Config{cc} =~ m#\bgcc\b[^/]*$# ) { ($cc_guess = $Config{cc}) =~ s[\bgcc\b([^/]*)$(?:)][g\+\+$1]; $libs_guess = '-lstdc++'; } elsif ($Config{osname} =~ /^MSWin/) { $cc_guess = 'cl -TP -EHsc'; $libs_guess = 'MSVCIRT.LIB'; } elsif ($Config{osname} eq 'linux') { $cc_guess = 'g++'; $libs_guess = '-lstdc++'; } elsif ($Config{osname} eq 'cygwin') { $cc_guess = 'g++'; $libs_guess = '-lstdc++'; } elsif ($Config{osname} eq 'darwin'){ my $stdlib_query = 'find /usr/lib/gcc -name "libstdc++*" | grep $( uname -p )'; my $stdcpp = `$stdlib_query`; + $stdcpp =~ s/^(.*)\/[^\/]+$/$1/; $cc_guess = 'g++'; $libs_guess = "-L$stdcpp -lstdc++"; } elsif ($Config{osname} eq 'solaris' or $Config{osname} eq 'SunOS') { if ($Config{cc} eq 'gcc') { $cc_guess = 'g++'; $libs_guess = '-lstdc++'; } else { $cc_guess = 'CC'; $libs_guess ='-lCrun'; } } # Sane defaults for other (probably unix-like) operating systems else { $cc_guess = 'g++'; $libs_guess = '-lstdc++'; } Any Solaris gurus out there who might know why we're not correctly detecting the compiler for Solaris 2.11? It looks to me like the 'if( $config{cc} eq 'gcc' ) .... " code is falling through to the else clause that sets $cc_guess to 'CC', and in this case probably shouldn't be. Dave -- David Oswald daosw...@gmail.com