On Jan 8, 2013, at 9:14 PM, Thomas Pfau <tfp...@gmail.com> wrote:

> It looks like the definition of PL_sv_undef has something to do with threads. 
>  Could this be broken because I enabled threads in my build?

It doesn't have anything to do with threads directly, except all PL_xxx global 
variables are not really global variables under threads, but are instead 
members of the interpreter struct.

> On Tue, Jan 8, 2013 at 9:24 PM, Thomas Pfau <tfp...@gmail.com> wrote:
> This is even causing problems with the generated constant function.  If I try 
> to get the value of a constant I get this:
> 
> $x = &VMS::CMS::CMS_K_ACCEPT

The ampersand is forcing it to be interpreted as a subroutine call, but that's 
not really a subroutine is it?

> Bizarre copy of UNKNOWN in list assignment at 
> /DISK$USERS/PFAU/PROG/PERL/vms-cms/blib/lib/VMS/CMS.pm line 490.

The error message means it doesn't know the type of the scalar that's having 
its flags checked (search for "Bizarre" in sv.c).  I see that most of your 
routines have return values of type SV *, so I would think that instead of

        RETVAL = &PL_sv_undef;

you would want:

        RETVAL = (SV *) &PL_sv_undef;

but I don't know if that would help with the immediate problem.

I haven't had time to download your module and try it.  Is the one on CPAN the 
latest?

________________________________________
Craig A. Berry
mailto:craigbe...@mac.com

"... getting out of a sonnet is much more
 difficult than getting in."
                 Brad Leithauser

Reply via email to