Tue Apr 23 23:49:15 2013: Request 11748 was acted upon.
Transaction: Correspondence added by SISYPHUS
       Queue: Inline
     Subject: Inline::CPP config gets lost because of Inline::C bug
   Broken in: (no value)
    Severity: Important
       Owner: Nobody
  Requestors: nick_...@pisem.net
      Status: open
 Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=11748 >


On Sat Apr 20 02:53:07 2013, iang wrote:
 
> I think the fault is in Inline::CPP, not Inline::C.

Yes, I now think that *is* right.

> If Inline::CPP
>    generates typemap data (if $typemap has non-zero length in
>    Inline::CPP::write_typemap) then Inline::CPP::validate is called
>    with the generated TYPEMAP data passed, but this calls
>    Inline::C::validate, which sets $o->{ILSM}{MAKEFILE}{INC}, unless
>    $o->UNTAINT is set.
[snip]
> Part of the issue is that when validating TYPEMAP, all the other
>    options are not passed to Inlince::C::validate. The initialization
>    there sets INC and the previously passed value is not appended
>    because it is not passed, only the TYPEMAP is passed.

Seems to me that Inline::C::validate is not really designed to receive that set 
of data, and Inline::CPP should probably not be passing that set of data to it.
Nevertheless, it can apparently be easily fixed by applying the suggested 
change to Inline::C::validate - so I'll go with the original fix.
A version of Inline containing this fix has been uploaded to CPAN as 
Inline-0.52_02. Unless, in the meantine, there's an issue found with 
Inline-0.52_02, it will be released as Inline-0.53 early next week.

Thanks again, Ian, for for the digging and the demo case.

Cheers,
Rob

Reply via email to