Skip to content
This repository

ext/nqp-rx/t/nqp/46-charspec.t: failure in new test #874

Open
jkeenan opened this Issue · 7 comments

3 participants

James E Keenan Reini Urban Duke Leto
James E Keenan
Owner

Observed today while running 'make test' at 4aee736 on Darwin/x86_64. Here is an excerpt from by test log:

no ICU lib loaded
current instr.: 'parrot;HLL;Actions;charname' pc 21203 (ext/nqp-rx/src/stage0/HLL-s0.pir:7328)
called from Sub 'parrot;Regex;Cursor;!reduce' pc 1238 (ext/nqp-rx/src/stage0/Regex-s0.pir:744)
called from Sub 'parrot;Regex;Cursor;!cursor_pass' pc 692 (ext/nqp-rx/src/stage0/Regex-s0.pir:414)
called from Sub 'parrot;HLL;Grammar;charname' pc 15620 (ext/nqp-rx/src/stage0/HLL-s0.pir:5083)
called from Sub 'parrot;HLL;Grammar;charnames' pc 16293 (ext/nqp-rx/src/stage0/HLL-s0.pir:5295)
called from Sub 'parrot;HLL;Grammar;charspec' pc 16679 (ext/nqp-rx/src/stage0/HLL-s0.pir:5407)
called from Sub 'parrot;HLL;Grammar;quote_escape:sym<chr>' pc 13903 (ext/nqp-rx/src/stage0/HLL-s0.pir:4573)
called from Sub 'parrot;Regex;Cursor;!protoregex' pc 2520 (ext/nqp-rx/src/stage0/Regex-s0.pir:1295)
called from Sub 'parrot;HLL;Grammar;quote_escape' pc 10765 (ext/nqp-rx/src/stage0/HLL-s0.pir:3579)
called from Sub 'parrot;HLL;Grammar;quote_atom' pc 5782 (ext/nqp-rx/src/stage0/HLL-s0.pir:2156)
called from Sub 'parrot;HLL;Grammar;quote_delimited' pc 5377 (ext/nqp-rx/src/stage0/HLL-s0.pir:2045)
called from Sub 'parrot;HLL;Grammar;quote_EXPR' pc 919 (ext/nqp-rx/src/stage0/HLL-s0.pir:550)
called from Sub 'parrot;NQP;Grammar;quote:sym<dblq>' pc 43771 (ext/nqp-rx/src/stage0/NQP-s0.pir:12232)
called from Sub 'parrot;Regex;Cursor;!protoregex' pc 2520 (ext/nqp-rx/src/stage0/Regex-s0.pir:1295)
called from Sub 'parrot;NQP;Grammar;quote' pc 43329 (ext/nqp-rx/src/stage0/NQP-s0.pir:12087)
called from Sub 'parrot;NQP;Grammar;value' pc 42648 (ext/nqp-rx/src/stage0/NQP-s0.pir:11905)
called from Sub 'parrot;NQP;Grammar;term:sym<value>' pc 42361 (ext/nqp-rx/src/stage0/NQP-s0.pir:11819)
called from Sub 'parrot;Regex;Cursor;!protoregex' pc 2520 (ext/nqp-rx/src/stage0/Regex-s0.pir:1295)
called from Sub 'parrot;NQP;Grammar;term' pc 40076 (ext/nqp-rx/src/stage0/NQP-s0.pir:11148)
called from Sub 'parrot;HLL;Grammar;termish' pc 2977 (ext/nqp-rx/src/stage0/HLL-s0.pir:1297)
called from Sub 'parrot;HLL;Grammar;EXPR' pc 1228 (ext/nqp-rx/src/stage0/HLL-s0.pir:674)
called from Sub 'parrot;NQP;Grammar;arglist' pc 42086 (ext/nqp-rx/src/stage0/NQP-s0.pir:11733)
called from Sub 'parrot;NQP;Grammar;args' pc 41745 (ext/nqp-rx/src/stage0/NQP-s0.pir:11634)
called from Sub 'parrot;NQP;Grammar;term:sym<identifier>' pc 40630 (ext/nqp-rx/src/stage0/NQP-s0.pir:11317)
called from Sub 'parrot;Regex;Cursor;!protoregex' pc 2557 (ext/nqp-rx/src/stage0/Regex-s0.pir:1308)
called from Sub 'parrot;NQP;Grammar;term' pc 40076 (ext/nqp-rx/src/stage0/NQP-s0.pir:11148)
called from Sub 'parrot;HLL;Grammar;termish' pc 2977 (ext/nqp-rx/src/stage0/HLL-s0.pir:1297)
called from Sub 'parrot;HLL;Grammar;EXPR' pc 1228 (ext/nqp-rx/src/stage0/HLL-s0.pir:674)
called from Sub 'parrot;NQP;Grammar;statement' pc 7666 (ext/nqp-rx/src/stage0/NQP-s0.pir:2464)
called from Sub 'parrot;NQP;Grammar;statementlist' pc 7151 (ext/nqp-rx/src/stage0/NQP-s0.pir:2333)
called from Sub 'parrot;NQP;Grammar;comp_unit' pc 6694 (ext/nqp-rx/src/stage0/NQP-s0.pir:2207)
called from Sub 'parrot;NQP;Grammar;TOP' pc 1322 (ext/nqp-rx/src/stage0/NQP-s0.pir:528)
called from Sub 'parrot;Regex;Cursor;parse' pc 371 (ext/nqp-rx/src/stage0/Regex-s0.pir:230)
called from Sub 'parrot;HLL;Compiler;parse' pc 96 (ext/nqp-rx/src/stage0/HLL-s0.pir:63)
called from Sub 'parrot;PCT;HLLCompiler;compile' pc 459 (compilers/pct/src/PCT/HLLCompiler.pir:326)
called from Sub 'parrot;HLL;Compiler;eval' pc 24537 (ext/nqp-rx/src/stage0/HLL-s0.pir:8848)
called from Sub 'parrot;PCT;HLLCompiler;evalfiles' pc 1496 (compilers/pct/src/PCT/HLLCompiler.pir:759)
called from Sub 'parrot;PCT;HLLCompiler;command_line' pc 1721 (compilers/pct/src/PCT/HLLCompiler.pir:874)
called from Sub 'parrot;NQP;Compiler;main' pc 92462 (ext/nqp-rx/src/stage0/NQP-s0.pir:28374)
ext/nqp-rx/t/nqp/46-charspec.t .............. 
Dubious, test returned 1 (wstat 256, 0x100)
No subtests run 


ext/nqp-rx/t/nqp/46-charspec.t            (Wstat: 256 Tests: 0 Failed: 0)
  Non-zero exit status: 1
  Parse errors: No plan found in TAP output
Reini Urban
Collaborator
James E Keenan
Owner
James E Keenan
Owner

I mistakenly thought a fix already had been committed, but that was not so. So there was nothing for me to check today.

The file in question is written in parrot-nqp. I don't know the syntax for "skip all tests unless $PConfig{has_icu}" in that language, and I couldn't find any prior art in other files in the distro written in parrot-nqp.

If anyone knows how to do that, please come up to the blackboard and show us. :-)

Thank you very much.
Jim Keenan

Reini Urban
Collaborator

I've only learned recently that nqp and nqp-rx create uncatchable
compile-time errors when icu is not present and the src code contains
\cxx charnames. There's no nqp BEGIN block, only a INIT block.

No way to skip the test inside the test.
So we must skip one test from the suite if parrot has no icu, in all
three nqp repos.
parrot/ext/nqp-rx, perl6/nqp and perl6/nqp-rx

This ticket belongs to perl6/nqp, since this is the final upstream repo for the ext/nqp-rx tests,
which are kept in synch with perl6/nqp-rx.

no ICU lib loaded
current instr.: 'parrot;HLL;Actions;charname' pc 21203 (ext/nqp-rx/src/stage0/HLL-s0.pir:7328)
called from Sub 'parrot;Regex;Cursor;!reduce' pc 1238 (ext/nqp-rx/src/stage0/Regex-s0.pir:744)
called from Sub 'parrot;Regex;Cursor;!cursor_pass' pc 692 (ext/nqp-rx/src/stage0/Regex-s0.pir:414)

...

HLL;Actions;charname calls find_codepoint at parse-time which fails without ICU.

James E Keenan
Owner
Reini Urban
Collaborator
Duke Leto
Owner
leto commented

@rurban are you still working on this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.