Skip Menu |

This queue is for tickets about the URI-XSEscape CPAN distribution.

Report information
The Basics
Id: 114233
Status: resolved
Priority: 0/
Queue: URI-XSEscape

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

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



Subject: Fails to compile on most systems
See http://matrix.cpantesters.org/?dist=URI-XSEscape%200.000003 for an overview --- currently successful builds happen only on some freebsd system which have clang instead of gcc installed. Problem is that newer C constructs are used here, e.g. uri.c: In function ‘fill_matrix’: uri.c:156:5: error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode for (int j = 0; j < 256; ++j) { ^ uri.c:156:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code
Subject: Re: [rt.cpan.org #114233] Fails to compile on most systems
Date: Sun, 8 May 2016 13:07:28 +0200
To: bug-URI-XSEscape [...] rt.cpan.org
From: Gonzalo Diethelm <gonzalo.diethelm [...] gmail.com>
Twice-damned. Once, me forgetting this once more... Twice, crappy old compilers that stop us from writing clean C99 (or C11) code. Just uploaded a new version that fixes this. Thanks for the notice! On Sun, May 8, 2016 at 8:15 AM, Slaven_Rezic via RT < bug-URI-XSEscape@rt.cpan.org> wrote: Show quoted text
> Sun May 08 02:15:49 2016: Request 114233 was acted upon. > Transaction: Ticket created by SREZIC > Queue: URI-XSEscape > Subject: Fails to compile on most systems > Broken in: 0.000003 > Severity: (no value) > Owner: Nobody > Requestors: SREZIC@cpan.org > Status: new > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=114233 > > > > See http://matrix.cpantesters.org/?dist=URI-XSEscape%200.000003 for an > overview --- currently successful builds happen only on some freebsd system > which have clang instead of gcc installed. > > Problem is that newer C constructs are used here, e.g. > > uri.c: In function ‘fill_matrix’: > uri.c:156:5: error: ‘for’ loop initial declarations are only allowed > in C99 or C11 mode > for (int j = 0; j < 256; ++j) { > ^ > uri.c:156:5: note: use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 > to compile your code > >
-- Gonzalo Diethelm gonzalo.diethelm@gmail.com
RT-Send-CC: gonzalo.diethelm [...] gmail.com
Still with 0.000005 there are compilation errors, now even with clang: On a freebsd 9.2 system (gcc 4.2.1): cc -c -I. -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -std=c89 -pedantic -Wall -Werror -Wno-gnu-statement-expression -Wno-variadic -macros -Wno-long-long -O -DVERSION=\"0.000005\" -DXS_VERSION=\"0.000005\" -DPIC -fPIC "-I/usr/perl5.16.3t/lib/5.16.3/amd64-freebsd-thread-multi/CORE" escape.c cc1: error: unrecognized command line option "-Wno-gnu-statement-expression" FreeBSD 10.1 (clang 3.4.1): cc -c -I. -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -std=c89 -pedantic -Wall -Werror -Wno-gnu-statement-expression -Wno-variadic-macros -Wno-long-long -O -DVERSION=\"0.000005\" -DXS_VERSION=\"0.000005\" -DPIC -fPIC "-I/usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE" escape.c In file included from escape.xs:3: In file included from /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/perl.h:3332: /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/op.h:960:34: error: commas at the end of enumerator lists are a C99-specific feature [-Werror,-Wc99-extensions] XOPe_xop_peep = XOPf_xop_peep, ^ 1 error generated. Debian wheezy: escape.c: At top level: cc1: error: unrecognized command line option "-Wno-gnu-statement-expression" [-Werror] cc1: all warnings being treated as errors Debian jessie: In file included from /opt/perl-5.22.2/lib/5.22.2/x86_64-linux/CORE/perl.h:2690:0, from escape.xs:3: /opt/perl-5.22.2/lib/5.22.2/x86_64-linux/CORE/cv.h: In function ‘CvNAME_HEK’: /opt/perl-5.22.2/lib/5.22.2/x86_64-linux/CORE/handy.h:64:26: error: ISO C forbids braced-groups within expressions [-Werror=pedantic] # define MUTABLE_PTR(p) ({ void *_p = (p); _p; }) ^ ... On 2016-05-08 07:07:49, gonzalo.diethelm@gmail.com wrote: Show quoted text
> Twice-damned. Once, me forgetting this once more... Twice, crappy old > compilers that stop us from writing clean C99 (or C11) code. > > Just uploaded a new version that fixes this. Thanks for the notice! > > > On Sun, May 8, 2016 at 8:15 AM, Slaven_Rezic via RT < > bug-URI-XSEscape@rt.cpan.org> wrote: >
> > Sun May 08 02:15:49 2016: Request 114233 was acted upon. > > Transaction: Ticket created by SREZIC > > Queue: URI-XSEscape > > Subject: Fails to compile on most systems > > Broken in: 0.000003 > > Severity: (no value) > > Owner: Nobody > > Requestors: SREZIC@cpan.org > > Status: new > > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=114233 > > > > > > > See http://matrix.cpantesters.org/?dist=URI-XSEscape%200.000003 for > > an > > overview --- currently successful builds happen only on some freebsd > > system > > which have clang instead of gcc installed. > > > > Problem is that newer C constructs are used here, e.g. > > > > uri.c: In function ‘fill_matrix’: > > uri.c:156:5: error: ‘for’ loop initial declarations are only > > allowed > > in C99 or C11 mode > > for (int j = 0; j < 256; ++j) { > > ^ > > uri.c:156:5: note: use option -std=c99, -std=gnu99, -std=c11 or > > -std=gnu11 > > to compile your code > > > >
RT-Send-CC: gonzalo.diethelm [...] gmail.com
On 2016-05-08 12:20:33, SREZIC wrote: Show quoted text
> Still with 0.000005 there are compilation errors, now even with clang:
Correction: freebsd 10.1 with clang and most perl versions works (various one between 5.18 and 5.24). Only with perl 5.20.1 it fails --- full build log: Output from '/usr/bin/make': cp lib/URI/XSEscape.pm blib/lib/URI/XSEscape.pm Running Mkbootstrap for XSEscape () chmod 644 "XSEscape.bs" "/usr/perl5.20.1p/bin/perl5.20.1" -MExtUtils::Command::MM -e 'cp_nonempty' -- XSEscape.bs blib/arch/auto/URI/XSEscape/XSEscape.bs 644 "/usr/perl5.20.1p/bin/perl5.20.1" "/usr/perl5.20.1p/lib/5.20.1/ExtUtils/xsubpp" -typemap '/usr/perl5.20.1p/lib/5.20.1/ExtUtils/typemap' escape.xs > escape.xsc mv escape.xsc escape.c cc -c -I. -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -std=c89 -pedantic -Wall -Werror -Wno-gnu-statement-expression -Wno-variadic-macros -Wno-long-long -O -DVERSION=\"0.000005\" -DXS_VERSION=\"0.000005\" -DPIC -fPIC "-I/usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE" escape.c In file included from escape.xs:3: In file included from /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/perl.h:3332: /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/op.h:960:34: error: commas at the end of enumerator lists are a C99-specific feature [-Werror,-Wc99-extensions] XOPe_xop_peep = XOPf_xop_peep, ^ 1 error generated. *** Error code 1
Subject: Re: [rt.cpan.org #114233] Fails to compile on most systems
Date: Sun, 8 May 2016 18:54:18 +0200
To: bug-URI-XSEscape [...] rt.cpan.org
From: Gonzalo Diethelm <gonzalo.diethelm [...] gmail.com>
I had to trim down the options to -std=c89 -pedantic -Wall, so that I still get errors for those C89 constructs, but the other errors are now gone on my Mac. The downside is that I could not turn off specific warnings that are triggered by code in the perl libraries... Hopefully now it works. Uploaded a new one. Cheers and thanks! On Sun, May 8, 2016 at 6:22 PM, Slaven_Rezic via RT < bug-URI-XSEscape@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=114233 > > > On 2016-05-08 12:20:33, SREZIC wrote:
> > Still with 0.000005 there are compilation errors, now even with clang:
> > Correction: freebsd 10.1 with clang and most perl versions works (various > one between 5.18 and 5.24). Only with perl 5.20.1 it fails --- full build > log: > > Output from '/usr/bin/make': > > cp lib/URI/XSEscape.pm blib/lib/URI/XSEscape.pm > Running Mkbootstrap for XSEscape () > chmod 644 "XSEscape.bs" > "/usr/perl5.20.1p/bin/perl5.20.1" -MExtUtils::Command::MM -e 'cp_nonempty' > -- XSEscape.bs blib/arch/auto/URI/XSEscape/XSEscape.bs 644 > "/usr/perl5.20.1p/bin/perl5.20.1" > "/usr/perl5.20.1p/lib/5.20.1/ExtUtils/xsubpp" -typemap > '/usr/perl5.20.1p/lib/5.20.1/ExtUtils/typemap' escape.xs > escape.xsc > mv escape.xsc escape.c > cc -c -I. -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing > -pipe -fstack-protector -I/usr/local/include -std=c89 -pedantic -Wall > -Werror -Wno-gnu-statement-expression -Wno-variadic-macros -Wno-long-long > -O -DVERSION=\"0.000005\" -DXS_VERSION=\"0.000005\" -DPIC -fPIC > "-I/usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE" escape.c > In file included from escape.xs:3: > In file included from > /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/perl.h:3332: > /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/op.h:960:34: error: commas > at the end of enumerator lists are a C99-specific feature > [-Werror,-Wc99-extensions] > XOPe_xop_peep = XOPf_xop_peep, > ^ > 1 error generated. > *** Error code 1 > >
-- Gonzalo Diethelm gonzalo.diethelm@gmail.com
RT-Send-CC: gonzalo.diethelm [...] gmail.com
0.000006 looks "perfect" now: http://fast-matrix.cpantesters.org/?dist=URI-XSEscape%200.000006 On 2016-05-08 12:54:30, gonzalo.diethelm@gmail.com wrote: Show quoted text
> I had to trim down the options to -std=c89 -pedantic -Wall, so that I still > get errors for those C89 constructs, but the other errors are now gone on > my Mac. The downside is that I could not turn off specific warnings that > are triggered by code in the perl libraries... Hopefully now it works. > Uploaded a new one. > > Cheers and thanks! > > > On Sun, May 8, 2016 at 6:22 PM, Slaven_Rezic via RT < > bug-URI-XSEscape@rt.cpan.org> wrote: >
> > <URL: https://rt.cpan.org/Ticket/Display.html?id=114233 > > > > > On 2016-05-08 12:20:33, SREZIC wrote:
> > > Still with 0.000005 there are compilation errors, now even with clang:
> > > > Correction: freebsd 10.1 with clang and most perl versions works (various > > one between 5.18 and 5.24). Only with perl 5.20.1 it fails --- full build > > log: > > > > Output from '/usr/bin/make': > > > > cp lib/URI/XSEscape.pm blib/lib/URI/XSEscape.pm > > Running Mkbootstrap for XSEscape () > > chmod 644 "XSEscape.bs" > > "/usr/perl5.20.1p/bin/perl5.20.1" -MExtUtils::Command::MM -e 'cp_nonempty' > > -- XSEscape.bs blib/arch/auto/URI/XSEscape/XSEscape.bs 644 > > "/usr/perl5.20.1p/bin/perl5.20.1" > > "/usr/perl5.20.1p/lib/5.20.1/ExtUtils/xsubpp" -typemap > > '/usr/perl5.20.1p/lib/5.20.1/ExtUtils/typemap' escape.xs > escape.xsc > > mv escape.xsc escape.c > > cc -c -I. -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing > > -pipe -fstack-protector -I/usr/local/include -std=c89 -pedantic -Wall > > -Werror -Wno-gnu-statement-expression -Wno-variadic-macros -Wno-long-long > > -O -DVERSION=\"0.000005\" -DXS_VERSION=\"0.000005\" -DPIC -fPIC > > "-I/usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE" escape.c > > In file included from escape.xs:3: > > In file included from > > /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/perl.h:3332: > > /usr/perl5.20.1p/lib/5.20.1/amd64-freebsd/CORE/op.h:960:34: error: commas > > at the end of enumerator lists are a C99-specific feature > > [-Werror,-Wc99-extensions] > > XOPe_xop_peep = XOPf_xop_peep, > > ^ > > 1 error generated. > > *** Error code 1 > > > >
> >