Re: An Inline question, and a user's experience: Fwd: Using Inline::CPP and Math::Primes::FastSieve
[email protected] ("Sisyphus")
| Newsgroups | perl.inline |
|---|---|
| Message-ID | <F222A785327D4298A2D8B6C58EFC4109@desktop2> |
----- Original Message -----
From: "Dana Jacobsen"
> As you wrote, putting 'Inline->init()' after the inclusion of M::P::FS
> solves the issue in both cases. I can do this successfully:
>
> if (eval {require Math::Prime::FastSieve; Inline->init(); 1;}) {
> # We have MPFS, do fast stuff.
> } else {
> ...
> }
>
> The goal would be to have Inline handle it, or the module using Inline
> (e.g. Math::Prime::FastSieve) do it. But for now this works.
By the end of rhis week I'll have released Inline-0.50_02.
The documentation on how to write modules that use Inline will be revised to
include the Inline->init() option for working around this problem.
In case an *early* call to Inline->init() might interfere with the initial
compilation, I'll probably be recommending that it be done in and END{}
block:
END {
Inline->init();
}
That seems fine for me, and I don't think that will ever be too late a time
to make the Inline->init() call. (If I'm ever proven wrong about that, then
I can just re-write the docs again :-)
I don't really want to go altering Inline itself until I understand the
purpose(s) this weird section of code serves. (And that might take a while
;-)
Thanks for raising this Dana, David.
Cheers,
Rob