RT #134468: v5.31.4-270-g059703b088 breaks ETHER/Devel-Declare-0.006019.tar.gz

# (Andreas J. Koenig) <andr...@fra...>

Wed, 02 Oct 2019 23:51:03 -0700
https://rt.cpan.org/Ticket/Display.html?id=130637 Also affected: SREZIC/Tk-804.034.tar.gz https://rt.cpan.org/Ticket/Display.html?id=130638 Thanks, -- andreas PS: perl,perl,perl

# Dave Mitchell <dave...@iab...>

Thu, 03 Oct 2019 00:43:02 -0700
On Wed, Oct 02, 2019 at 11:51:04PM -0700, (Andreas J. Koenig) (via RT) wrote: > # New Ticket Created by (Andreas J. Koenig) > # Please include the string: [perl #134468] > # in the subject line of all future correspondence about this issue. > # <URL: https://rt.perl.org/Ticket/Display.html?id=134468 > > > > https://rt.cpan.org/Ticket/Display.html?id=130637 > > Also affected: SREZIC/Tk-804.034.tar.gz > https://rt.cpan.org/Ticket/Display.html?id=130638 That's: commit 059703b088f44d5665f67fba0b9d80cad89085fd Author: Karl Williamson <khw@cpan.org> AuthorDate: Sun Sep 29 15:16:24 2019 -0600 Commit: Karl Williamson <khw@cpan.org> CommitDate: Sun Sep 29 16:15:04 2019 -0600 Remove deprecated character classification/case changing macros It has been deprecated since 5.26 to use various macros that deal with UTF-8 inputs but don't have a parameter indicating the maximum length beyond which we should not look. This commit changes all such macros, as threatened in existing documentation and warning messages, to have an extra parameter giving the length. This was originally scheduled to happen in 5.30, but was delayed because it broke some CPAN modules, and there wasn't really a good way around it. But now that Devel::PPPort 3.54 is out, ppport.h has new facilities for getting modules making these changes to work with older Perl releases. -- No matter how many dust sheets you use, you will get paint on the carpet.

# The RT System itself <>

Thu, 03 Oct 2019 00:43:02 -0700
Status changed from new to open.

# James E Keenan <jkee...@cpa...>

Thu, 03 Oct 2019 05:45:31 -0700
On Thu, 03 Oct 2019 06:51:03 GMT, andreas.koenig.7os6VVqR@franz.ak.mind.de wrote: > https://rt.cpan.org/Ticket/Display.html?id=130637 > > Also affected: SREZIC/Tk-804.034.tar.gz > https://rt.cpan.org/Ticket/Display.html?id=130638 > > Thanks, In the case of Devel-Declare, it's a build-time failure involving a file ominously called "stolen_chunk_of_toke.c". See attachment wherein I installed perl 5 blead at HEAD and then attempted to install Devel::Declare. In the case of Tk, while we get 142 build-time warnings, 'make' completes and the failures are in 'make test'. See attachment. -- James E Keenan (jkeenan@cpan.org)
"/home/jkeenan/testing/blead/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- Declare.bs blib/arch/auto/Devel/Declare/Declare.bs 644 cc -c -I/home/jkeenan/testing/blead/lib/perl5/site_perl/5.31.5/x86_64-linux/B/Hooks/OP/Check/Install -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -DVERSION=\"0.006019\" -DXS_VERSION=\"0.006019\" -fPIC "-I/home/jkeenan/testing/blead/lib/perl5/5.31.5/x86_64-linux/CORE" Declare.c In file included from /home/jkeenan/testing/blead/lib/perl5/5.31.5/x86_64-linux/CORE/regexp.h:21:0, from /home/jkeenan/testing/blead/lib/perl5/5.31.5/x86_64-linux/CORE/perl.h:3830, from Declare.xs:3: stolen_chunk_of_toke.c: In function ‘S_scan_word’: /home/jkeenan/testing/blead/lib/perl5/5.31.5/x86_64-linux/CORE/utf8.h:643:13: warning: implicit declaration of function ‘_is_utf8_FOO’; did you mean ‘_is_uni_FOO’? [-Wimplicit-function-declaration] _is_utf8_FOO(_CC_IDFIRST, (const U8 *) p, "isIDFIRST_lazy_if", \ ^ /home/jkeenan/testing/blead/lib/perl5/5.31.5/x86_64-linux/CORE/utf8.h:643:13: note: in definition of macro ‘isIDFIRST_lazy_if’ _is_utf8_FOO(_CC_IDFIRST, (const U8 *) p, "isIDFIRST_lazy_if", \ ^~~~~~~~~~~~ In file included from Declare.xs:7:0: stolen_chunk_of_toke.c:449:58: error: macro "isALNUM_utf8" requires 2 arguments, but only 1 given else if (UTF && UTF8_IS_START(*s) && isALNUM_utf8((U8*)s)) { ^ stolen_chunk_of_toke.c:449:39: error: ‘isALNUM_utf8’ undeclared (first use in this function) else if (UTF && UTF8_IS_START(*s) && isALNUM_utf8((U8*)s)) { ^~~~~~~~~~~~ stolen_chunk_of_toke.c:449:39: note: each undeclared identifier is reported only once for each function it appears in stolen_chunk_of_toke.c: In function ‘S_scan_ident’: stolen_chunk_of_toke.c:935:62: error: macro "isALNUM_utf8" requires 2 arguments, but only 1 given else if (UTF && UTF8_IS_START(*s) && isALNUM_utf8((U8*)s)) { ^ stolen_chunk_of_toke.c:935:43: error: ‘isALNUM_utf8’ undeclared (first use in this function) else if (UTF && UTF8_IS_START(*s) && isALNUM_utf8((U8*)s)) { ^~~~~~~~~~~~ Makefile:342: recipe for target 'Declare.o' failed make: *** [Declare.o] Error 1
134468.Tk.build.log.gz (32839 bytes)

# James E Keenan <jkee...@cpa...>

Thu, 03 Oct 2019 05:52:08 -0700
On Thu, 03 Oct 2019 12:45:31 GMT, jkeenan wrote: > On Thu, 03 Oct 2019 06:51:03 GMT, > andreas.koenig.7os6VVqR@franz.ak.mind.de wrote: > > https://rt.cpan.org/Ticket/Display.html?id=130637 > > > > Also affected: SREZIC/Tk-804.034.tar.gz > > https://rt.cpan.org/Ticket/Display.html?id=130638 > > > > Thanks, > > In the case of Devel-Declare, it's a build-time failure involving a > file ominously called "stolen_chunk_of_toke.c". See attachment > wherein I installed perl 5 blead at HEAD and then attempted to install > Devel::Declare. > > In the case of Tk, while we get 142 build-time warnings, 'make' > completes and the failures are in 'make test'. See attachment. Tk test failures are associated with "undefined symbol", either 'Perl_to_utf8_lower' or 'Perl_to_utf8_upper'. See attachment. -- James E Keenan (jkeenan@cpan.org)
[Tk-804.034] 520 $ bleadprove -vb t/regexp.t t/regexp.t .. 1..22 ok 1 - Contents as expected ok 2 - Correct -exact postion ok 3 - Correct -exact length ok 4 - Correct -regexp postion ok 5 - Correct -regexp length ok 6 - Correct non-match ok 7 - Correct -regexp -nocase /home/jkeenan/testing/blead/bin/perl: symbol lookup error: /home/jkeenan/.cpanm/work/1570105828.4874/Tk-804.034/blib/arch/auto/Tk/Tk.so: undefined symbol: Perl_to_utf8_lower Dubious, test returned 127 (wstat 32512, 0x7f00) Failed 15/22 subtests Test Summary Report ------------------- t/regexp.t (Wstat: 32512 Tests: 7 Failed: 0) Non-zero exit status: 127 Parse errors: Bad plan. You planned 22 tests but ran 7. Files=1, Tests=7, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.09 cusr 0.00 csys = 0.11 CPU) Result: FAIL [Tk-804.034] 521 $ bleadprove -vb t/Require.t t/Require.t .. Can't load '/home/jkeenan/.cpanm/work/1570105828.4874/Tk-804.034/blib/arch/auto/Tk/Tk.so' for module Tk: /home/jkeenan/.cpanm/work/1570105828.4874/Tk-804.034/blib/arch/auto/Tk/Tk.so: undefined symbol: Perl_to_utf8_upper at /home/jkeenan/testing/blead/lib/perl5/5.31.5/x86_64-linux/DynaLoader.pm line 193. at t/Require.t line 5. Compilation failed in require at t/Require.t line 5. Dubious, test returned 2 (wstat 512, 0x200) No subtests run Test Summary Report ------------------- t/Require.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output Files=1, Tests=0, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.02 cusr 0.00 csys = 0.04 CPU) Result: FAIL [Tk-804.034] 522 $ bleadprove -vb t/text.t t/text.t .. 1..415 ok 1 - use Tk::Text; # snip ok 303 - TextSearchCmd procedure, -count option ok 304 ok 305 /home/jkeenan/testing/blead/bin/perl: symbol lookup error: /home/jkeenan/.cpanm/work/1570105828.4874/Tk-804.034/blib/arch/auto/Tk/Tk.so: undefined symbol: Perl_to_utf8_lower Dubious, test returned 127 (wstat 32512, 0x7f00) Failed 110/415 subtests (less 21 skipped subtests: 284 okay) (1 TODO test unexpectedly succeeded) Test Summary Report ------------------- t/text.t (Wstat: 32512 Tests: 305 Failed: 0) TODO passed: 121 Non-zero exit status: 127 Parse errors: Bad plan. You planned 415 tests but ran 305. Files=1, Tests=305, 1 wallclock secs ( 0.06 usr 0.01 sys + 0.21 cusr 0.01 csys = 0.29 CPU) Result: FAIL