Closed p5pRT closed 16 years ago
Using the OVERLOAD keyword in an XS method declarations causes the XS processor to generate bad code that doesn't compile.
For instance\, compiling...
===================================================================== #include "EXTERN.h" #include "perl.h" #include "XSUB.h"
#include "ppport.h"
MODULE = Bug::XSOverload PACKAGE = Bug::XSOverload
reports...
[salva@boletus:\~/t/Bug-XSOverload]$ /home/cpantest/perl/5.10.0-thread-multi/bin/perl Makefile.PL Checking if your kit is complete... Looks good Writing Makefile for Bug::XSOverload [salva@boletus:\~/t/Bug-XSOverload]$ make cp lib/Bug/XSOverload.pm blib/lib/Bug/XSOverload.pm /home/cpantest/perl/5.10.0-thread-multi/bin/perl /home/cpantest/perl/5.10.0-thread-multi/lib/5.10.0/ExtUtils/xsubpp -typemap /home/cpantest/perl/5.10.0-thread-multi/lib/5.10.0/ExtUtils/typemap XSOverload.xs > XSOverload.xsc && mv XSOverload.xsc XSOverload.c Please specify prototyping behavior for XSOverload.xs (see perlxs manual) cc -c -I. -fno-strict-aliasing -pipe -I/usr/pkg/include -O -DVERSION=\"\" -DXS_VERSION=\"\" -DPIC -fPIC "-I/home/cpantest/perl/5.10.0-thread-multi/lib/5.10.0/sparc64-netbsd-thread-multi/CORE" XSOverload.c XSOverload.c: In function 'XS_Bug__XSOverload_nil': XSOverload.c:50: error: 'ax' undeclared (first use in this function) XSOverload.c:50: error: (Each undeclared identifier is reported only once XSOverload.c:50: error: for each function it appears in.) XSOverload.c: In function 'boot_Bug__XSOverload': XSOverload.c:75: error: incompatible type for argument 3 of 'Perl_sv_setsv_flags' *** Error code 1
Stop. make: stopped in /home/salva/t/Bug-XSOverload
(Tested with both 5.8.8 and 5.10.0 with the same result)
Cheers\,
- Salva
On Wed\, 2008-01-16 at 08:46 -0800\, Salvador Fandiño wrote:
Using the OVERLOAD keyword in an XS method declarations causes the XS processor to generate bad code that doesn't compile.
That's been reported to ExtUtils::ParseXS' bug queue already\, but hasn't received a response yet: \<http://rt.cpan.org/Public/Bug/Display.html?id=31533>
-- Bye\, -Torsten
The RT System itself - Status changed from 'new' to 'open'
p5p@spam.wizbit.be - Status changed from 'open' to 'rejected'
Migrated from rt.perl.org#49844 (status was 'rejected')
Searchable as RT49844$