Ticket #1935 (closed bug: fixed)

Opened 4 years ago

Last modified 4 years ago

nqp-rx on Parrot RELEASE_2_11_0-771-g40e018d fails t/nqp/33-init.t

Reported by: pmichaud Owned by: whiteknight
Priority: blocker Milestone:
Component: core Version: 2.11.0
Severity: fatal Keywords:
Cc: Language:
Patch status: Platform:

Description

nqp-rx gives failures now on its t/nqp/33-init.t test. Moritz Lenz and I get different error results -- the error I see is:

pmichaud@orange:~/nqp-rx$ ./nqp t/nqp/33-init.t 
1..4
ok 1 # first INIT
ok 2 # after first INIT but before mainline
Confused at line 2, near ".namespace"
current instr.: 'parrot;HLL;Grammar;panic' pc 635 (src/cheats/hll-compiler.pir:206)
called from Sub 'parrot;NQP;Grammar;comp_unit' pc 6762 (gen/nqp-grammar.pir:2112)
called from Sub 'parrot;NQP;Grammar;TOP' pc 1318 (gen/nqp-grammar.pir:479)
called from Sub 'parrot;Regex;Cursor;parse' pc 371 (src/Regex/Cursor.pir:210)
called from Sub 'parrot;HLL;Compiler;parse' pc 96 (src/cheats/hll-compiler.pir:43)
called from Sub 'parrot;PCT;HLLCompiler;compile' pc 464 (compilers/pct/src/PCT/HLLCompiler.pir:331)
...

Moritz gets:

/nqp/33-init.t ................. 1/4 src/call/context.c:690: failed assertion 'Parrot_pcc_get_regs_used(interp, ctx, REGNO_PMC) > idx'
Backtrace - Obtained 16 stack frames (max trace depth is 32).
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(+0x1813f6) [0x2b2bccca83f6]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(Parrot_confess+0x8b) [0x2b2bccca83cb]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(Parrot_pcc_get_PMC_reg+0x90) [0x2b2bccccbb50]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(+0x1a0d3b) [0x2b2bcccc7d3b]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(+0x19efd2) [0x2b2bcccc5fd2]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(Parrot_pcc_fill_params_from_op+0xaa) [0x2b2bcccc709a]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(+0x12a9f3) [0x2b2bccc519f3]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(+0x1deb0b) [0x2b2bccd05b0b]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(+0x1ddf47) [0x2b2bccd04f47]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(+0x1a3790) [0x2b2bcccca790]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(Parrot_pcc_invoke_from_sig_object+0x1d2) [0x2b2bcccc40e2]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(Parrot_pcc_invoke_sub_from_c_args+0x1d5) [0x2b2bcccc3875]
/home/moritz/p6/nqp-rx/parrot_install/lib/libparrot.so.2.11.0(Parrot_api_run_bytecode+0x2a5) [0x2b2bccca1145]
./nqp(main+0x1a7) [0x401158]
/lib/libc.so.6(__libc_start_main+0xfd) [0x2b2bcfaf3c4d]
./nqp() [0x400ee9]
t/nqp/33-init.t ................. Failed 2/4 subtests 

nqp-rx was working fine with RELEASE_2_11_0-687-gcbccec7 (36 hours ago) and there haven't been any significant changes to nqp-rx in that time. (I tested both nqp-rx of 36 hours ago and its current head -- both fail in the same way.)

Pm

Change History

Changed 4 years ago by whiteknight

  • owner set to whiteknight

This is looking suspiciously like the error that I fixed yesterday ion #1029. Let me run a few tests to see if this is indeed the cause and I will fix it if so.

Changed 4 years ago by whiteknight

  • status changed from new to closed
  • resolution set to fixed

This issue is resolved. It was indeed related to #1029. I have removed the .tailcall from HLLCompiler, we do not need to replace it if it doesn't buy us anything. However, if we did want to replace it, it should work as advertised now. Thanks to everybody who worked on this issue and helped with testing/bisecting.

Note: See TracTickets for help on using tickets.