----- Original Message -----
From: "Kort, Eric" <[EMAIL PROTECTED]
>   SV* *svReturnVal
>
> and then
>
>   svReturnVal = av_store(avArray, 2, svNewVal);

I'm not sure if that is a typo, but I suppose that av_store returns a
pointer to a SV, ie. a SV* and _not_ a SV** which is what you have declared
svReturnVal as. If it isn't a type then:

    SV *svReturnVal;
    svReturnVal = av_store(avArray, 2, svNewVal);

Should work. If not you could always use one of these (at least under *nix):

    grep -r av_store /where/ever/your/perl/src/is/*

And then look for the declaration of the function. Another way (if you don't
have the source) albeit dirty could be:

    void *ptr;
    ptr = av_store(avArray, 2, svNewVal);
    *((void*)0) = 0;

This should create a core dump. After that you could:

    gcc yourapp -c yourapp.core
    where 10

After that you could simply try to cast the ptr to stuff until it seemes to
make sense:

    print *((SV**)ptr)
    print *((SV*)ptr)

Etc.

Just some quick .02

--
Aigars



Reply via email to