[rt.cpan.org #11748] Inline::CPP config gets lost because of Inline::C bug

[email protected] ("Ian Goodacre via RT") Sat, 20 Apr 2013 04:43:47 -0400
Newsgroups perl.inline
Message-ID <[email protected]>
Sat Apr 20 04:43:46 2013: Request 11748 was acted upon.
Transaction: Correspondence added by iang
       Queue: Inline
     Subject: Inline::CPP config gets lost because of Inline::C bug
   Broken in: (no value)
    Severity: Important
       Owner: Nobody
  Requestors: [email protected]
      Status: open
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=11748 >


I have looked at this a little further and, while I don't see any evidence of a bug in Inline::C, the bug in Inline::CPP (see Bug #84762) can be fixed by a change to Inline::C.

An alternative to the change previously suggested is to change Inline::C::validate

    if (not $o->UNTAINT and not defined($o->{ILSM}{MAKEFILE}{INC})) {
	require FindBin;
	$o->{ILSM}{MAKEFILE}{INC} = "-I\"$FindBin::Bin\"";
    }


This has the very small advantage of not requiring FindBin unless it will be used.

I don't understand what is happening to be confident this is the best way to fix the bug in Inline::CPP or that it doesn't cause other problems, but it is consistent with the other initializations in Inline::C::validate - only setting INC to default value if it is not already set.