On 2008-10-21, at 14:03:29 +0100, Nicholas Clark wrote:

> unfortunately that assignment back to PL_rsfp barfs under C++:
> 
> ccache g++ -c   -DDEBUG_LEAKING_SCALARS_ABORT -DDEBUGGING 
> -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include 
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g   -DVERSION=\"3.14_02\" 
> -DXS_VERSION=\"3.14_02\" -fPIC "-I../../.."   RealPPPort.c
> RealPPPort.xs: In function 'void XS_Devel__PPPort_PL_rsfp(CV*)':
> RealPPPort.xs:1134: error: invalid conversion from 'void* volatile' to 
> 'PerlIOl**'
> make[1]: *** [RealPPPort.o] Error 1

Gosh! That'll teach me to always use a g++ perl before
releasing my modules...

> I'm not sure what the best thing to do is. Is there a quick fix to make that
> function (and related macros) unavailable under __cplusplus?

Yes, I guess that would be good enough. This is only a
compile-time test, i.e. I want to know when things break.
No problem if that code doesn't run everywhere.

I just tried a (hopefully) slightly better fix.

If that's quick enough, I'll try to make a release tonight
and update blead. I just want to take a look at an open
CPAN ticket before.

Marcus

-- 
guru, n:
        A computer owner who can read the manual.

Attachment: signature.asc
Description: PGP signature

Reply via email to