Skip Menu |

This queue is for tickets about the JSON-XS CPAN distribution.

Report information
The Basics
Id: 27127
Status: rejected
Priority: 0/
Queue: JSON-XS

People
Owner: Nobody in particular
Requestors: ilial [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: (no value)
Fixed in: (no value)



Subject: compile error on OS X 10.4.9
CPAN.pm: Going to build M/ML/MLEHMANN/JSON-XS-1.21.tar.gz Checking if your kit is complete... Looks good Writing Makefile for JSON::XS /usr/bin/perl /System/Library/Perl/5.8.6/ExtUtils/xsubpp -typemap /System/Library/Perl/5.8.6/ExtUtils/typemap XS.xs > XS.xsc && mv XS.xsc XS.c Running Mkbootstrap for JSON::XS () chmod 644 XS.bs cp XS.bs blib/arch/auto/JSON/XS/XS.bs chmod 644 blib/arch/auto/JSON/XS/XS.bs cp XS.pm blib/lib/JSON/XS.pm cc -c -g -pipe -fno-common -DPERL_DARWIN -no-cpp-precomp -fno-strict-aliasing -I/usr/local/include -O3 -DVERSION=\"1.21\" -DXS_VERSION=\"1.21\" "-I/System/Library/Perl/5.8.6/darwin-thread-multi-2level/CORE" XS.c XS.xs: In function 'encode_str': XS.xs:173: warning: pointer targets in passing argument 1 of 'decode_utf8' differ in signedness XS.xs:226: error: 'UTF8_MAXBYTES' undeclared (first use in this function) XS.xs:226: error: (Each undeclared identifier is reported only once XS.xs:226: error: for each function it appears in.) XS.xs:227: warning: pointer targets in passing argument 2 of 'Perl_uvuni_to_utf8_flags' differ in signedness XS.xs:227: warning: pointer targets in assignment differ in signedness XS.xs: In function 'decode_str': XS.xs:611: error: 'UTF8_MAXBYTES' undeclared (first use in this function) XS.xs:671: warning: pointer targets in passing argument 2 of 'Perl_uvuni_to_utf8_flags' differ in signedness XS.xs:692: warning: pointer targets in passing argument 1 of 'decode_utf8' differ in signedness XS.xs: In function 'decode_json': XS.xs:1031: warning: pointer targets in passing argument 2 of 'Perl_utf8_distance' differ in signedness XS.xs:1031: warning: pointer targets in passing argument 3 of 'Perl_utf8_distance' differ in signedness XS.xs:1047: warning: pointer targets in passing argument 3 of 'Perl_pv_uni_display' differ in signedness make: *** [XS.o] Error 1 /usr/bin/make -j3 -- NOT OK Running make test Can't test without successful make Running make install make had returned bad status, install seems impossible
From: mbarry [...] cos.com
I've noticed the same error when building JSON-XS-1.2 and greater on perls that are below 5.8.7. It appears that the constant UTF8_MAX_LEN was changed to UTF8_MAXBYTES in version 1.2 of JSON::XS (using the constant from perl's utf8.h rather than redefining it). However, the constant UTF8_MAXBYTES did not appear in perl's utf8.h until 5.8.7 before that, the constant was UTF8_MAXLEN. Since UTF8_MAXLEN is defined in terms of UTF8_MAXBYTES in perl 5.8.7 and 5.8.8 (and future?), I think the right course is to use UTF8_MAXLEN in JSON::XS. On Mon May 14 13:51:39 2007, ILIAL wrote: Show quoted text
> CPAN.pm: Going to build M/ML/MLEHMANN/JSON-XS-1.21.tar.gz > Checking if your kit is complete... > Looks good > Writing Makefile for JSON::XS > /usr/bin/perl /System/Library/Perl/5.8.6/ExtUtils/xsubpp -typemap > /System/Library/Perl/5.8.6/ExtUtils/typemap XS.xs > XS.xsc && mv XS.xsc > XS.c > Running Mkbootstrap for JSON::XS () > chmod 644 XS.bs > cp XS.bs blib/arch/auto/JSON/XS/XS.bs > chmod 644 blib/arch/auto/JSON/XS/XS.bs > cp XS.pm blib/lib/JSON/XS.pm > cc -c -g -pipe -fno-common -DPERL_DARWIN -no-cpp-precomp > -fno-strict-aliasing -I/usr/local/include -O3 -DVERSION=\"1.21\" > -DXS_VERSION=\"1.21\" > "-I/System/Library/Perl/5.8.6/darwin-thread-multi-2level/CORE" XS.c > XS.xs: In function 'encode_str': > XS.xs:173: warning: pointer targets in passing argument 1 of > 'decode_utf8' differ in signedness > XS.xs:226: error: 'UTF8_MAXBYTES' undeclared (first use in this function) > XS.xs:226: error: (Each undeclared identifier is reported only once > XS.xs:226: error: for each function it appears in.) > XS.xs:227: warning: pointer targets in passing argument 2 of > 'Perl_uvuni_to_utf8_flags' differ in signedness > XS.xs:227: warning: pointer targets in assignment differ in signedness > XS.xs: In function 'decode_str': > XS.xs:611: error: 'UTF8_MAXBYTES' undeclared (first use in this function) > XS.xs:671: warning: pointer targets in passing argument 2 of > 'Perl_uvuni_to_utf8_flags' differ in signedness > XS.xs:692: warning: pointer targets in passing argument 1 of > 'decode_utf8' differ in signedness > XS.xs: In function 'decode_json': > XS.xs:1031: warning: pointer targets in passing argument 2 of > 'Perl_utf8_distance' differ in signedness > XS.xs:1031: warning: pointer targets in passing argument 3 of > 'Perl_utf8_distance' differ in signedness > XS.xs:1047: warning: pointer targets in passing argument 3 of > 'Perl_pv_uni_display' differ in signedness > make: *** [XS.o] Error 1 > /usr/bin/make -j3 -- NOT OK > Running make test > Can't test without successful make > Running make install > make had returned bad status, install seems impossible
From: MLEHMANN [...] cpan.org
On Tue May 22 09:42:32 2007, derby wrote: Show quoted text
> 5.8.8 (and future?), I think the right course is to use UTF8_MAXLEN in > JSON::XS.
the right course is not to break stable releases of perl, but to use a stable release of perl. if you need to use outdated and known-tzo-be buggy versions of perl, you need to cope with the problems yourself.
From: mbarry [...] cos.com
Come on Marc ... now you're just being silly. UTF8_MAXLEN is defined in 5.8.7 and 5.8.8 ... Are there issues with JSON::XS in 5.8.6 that are not documented? If you're not going to use UTF8_MAXLEN then you'll be dealing with a lot of naive fixes (like the one currently in the open list). Your module ... your call ... but you don't have to be flippant and you could at least update your Makefile.PL to require a perl greater than 5.8.7 On Tue May 22 18:34:52 2007, MLEHMANN wrote: Show quoted text
> On Tue May 22 09:42:32 2007, derby wrote: >
> > 5.8.8 (and future?), I think the right course is to use UTF8_MAXLEN in > > JSON::XS.
> > the right course is not to break stable releases of perl, but to use a > stable release of perl. > > if you need to use outdated and known-tzo-be buggy versions of perl, you > need to cope with the problems yourself.
From: steve at fisharerojo dot org
On Wed May 23 08:50:58 2007, derby wrote: Show quoted text
> Come on Marc ... now you're just being silly. UTF8_MAXLEN is defined in > 5.8.7 and 5.8.8 ... Are there issues with JSON::XS in 5.8.6 that are not > documented? > > If you're not going to use UTF8_MAXLEN then you'll be dealing with a lot > of naive fixes (like the one currently in the open list). > > Your module ... your call ... but you don't have to be flippant and you > could at least update your Makefile.PL to require a perl greater than
5.8.7 Show quoted text
> > On Tue May 22 18:34:52 2007, MLEHMANN wrote:
> > On Tue May 22 09:42:32 2007, derby wrote: > >
> > > 5.8.8 (and future?), I think the right course is to use UTF8_MAXLEN in > > > JSON::XS.
> > > > the right course is not to break stable releases of perl, but to use a > > stable release of perl. > > > > if you need to use outdated and known-tzo-be buggy versions of perl, you > > need to cope with the problems yourself.
>
Crap :-( I'll see about getting UTF8_MAXBYTES added to Devel::PPPort.
On Mon Jul 02 14:58:01 2007, SMPETERS wrote: Show quoted text
> On Wed May 23 08:50:58 2007, derby wrote:
> > Come on Marc ... now you're just being silly. UTF8_MAXLEN is defined in > > 5.8.7 and 5.8.8 ... Are there issues with JSON::XS in 5.8.6 that are not > > documented? > > > > If you're not going to use UTF8_MAXLEN then you'll be dealing with a lot > > of naive fixes (like the one currently in the open list). > > > > Your module ... your call ... but you don't have to be flippant and you > > could at least update your Makefile.PL to require a perl greater than
> 5.8.7
> > > > On Tue May 22 18:34:52 2007, MLEHMANN wrote:
> > > On Tue May 22 09:42:32 2007, derby wrote: > > >
> > > > 5.8.8 (and future?), I think the right course is to use
UTF8_MAXLEN in Show quoted text
> > > > JSON::XS.
> > > > > > the right course is not to break stable releases of perl, but to use a > > > stable release of perl. > > > > > > if you need to use outdated and known-tzo-be buggy versions of
perl, you Show quoted text
> > > need to cope with the problems yourself.
> >
> > Crap :-( > > I'll see about getting UTF8_MAXBYTES added to Devel::PPPort. >
Patch sent to D:PPP. See http://rt.cpan.org//Ticket/Display.html?id=27906
From: SMPETERS [...] cpan.org
On Mon Jul 02 15:27:29 2007, SMPETERS wrote: Show quoted text
> On Mon Jul 02 14:58:01 2007, SMPETERS wrote:
> > On Wed May 23 08:50:58 2007, derby wrote:
> > > Come on Marc ... now you're just being silly. UTF8_MAXLEN is
defined in Show quoted text
> > > 5.8.7 and 5.8.8 ... Are there issues with JSON::XS in 5.8.6 that
are not Show quoted text
> > > documented? > > > > > > If you're not going to use UTF8_MAXLEN then you'll be dealing
with a lot Show quoted text
> > > of naive fixes (like the one currently in the open list). > > > > > > Your module ... your call ... but you don't have to be flippant
and you Show quoted text
> > > could at least update your Makefile.PL to require a perl greater
than Show quoted text
> > 5.8.7
> > > > > > On Tue May 22 18:34:52 2007, MLEHMANN wrote:
> > > > On Tue May 22 09:42:32 2007, derby wrote: > > > >
> > > > > 5.8.8 (and future?), I think the right course is to use
> UTF8_MAXLEN in
> > > > > JSON::XS.
> > > > > > > > the right course is not to break stable releases of perl, but
to use a Show quoted text
> > > > stable release of perl. > > > > > > > > if you need to use outdated and known-tzo-be buggy versions of
> perl, you
> > > > need to cope with the problems yourself.
> > >
> > > > Crap :-( > > > > I'll see about getting UTF8_MAXBYTES added to Devel::PPPort. > >
> > Patch sent to D:PPP. See http://rt.cpan.org//Ticket/Display.html?
id=27906 UTF8_MAXBYTES added to Devel::PPPort 3.11_02. It will be part of Perl 5.10 (planned for Sept. 2007)
unsupported perl version