On 2 March 2016 at 15:35, Klaus S. Madsen <k...@jobindex.dk> wrote:
> Sorry,
>
> A small correction. The test works with a "home compiled" perl 5.16.3
> without ithreads support. With 5.22.1 without ithreads support I run into
> the same issue that r1702395 should have solved with sprintf warnings.
>
> While I'm no expert in this, I believe that the comment in r1702395 is
> wrong. It's not because of the thread context that the number of arguments
> is wrong, it's because of the way WrapXS.pm handles functions with variable
> parameter length (i.e. ... functions).
>
> In the .xs code items is the number of elements in the MARK array. However
> when WrapXS.pm generates code for a ... function, it will increment MARK, so
> that it points to the second argument to the function. It will not, however
> decrement items, which means that items and MARK now are out of sync. I
> suspect that MARK is incremented to skip the object that the function is
> called on.
>
> I've attached a simple patch that updates the comment and removes the ifdef
> around the decrementation of items, which solves the test-failures for
> non-threaded perl 5.22.
>

Thanks, committed in r1733564.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@perl.apache.org
For additional commands, e-mail: dev-h...@perl.apache.org

Reply via email to