Ticket #2182 (closed bug: fixed)
argument assertion failure when quitting parrot_debugger
| Reported by: | ligne | Owned by: | |
|---|---|---|---|
| Priority: | normal | Milestone: | |
| Component: | tools | Version: | master |
| Severity: | medium | Keywords: | |
| Cc: | Language: | ||
| Patch status: | Platform: |
Description
start a debugger session attached to an arbitrary file. type "q" or "quit" to exit, and you get a nice pretty assertion failure:
echo q | ./parrot_debugger pbc_to_exe.pbc Parrot 3.7.0-devel Debugger (Please note: the debugger is currently under reconstruction) (pdb) q src/embed.c:135: failed assertion 'p_unused' Backtrace - Obtained 15 stack frames (max trace depth is 32). /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(+0x197a9f) [0x7f2558bc2a9f] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(Parrot_confess+0x8b) [0x7f2558bc2a6b] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(+0x18d611) [0x7f2558bb8611] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(Parrot_x_exit+0x89) [0x7f2558bc3419] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(Parrot_debugger_start+0x11f) [0x7f2558bb062f] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(+0x1e926f) [0x7f2558c1426f] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(+0x1e7fa7) [0x7f2558c12fa7] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(+0x1bbe33) [0x7f2558be6e33] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(Parrot_pcc_invoke_from_sig_object+0x1d2) [0x7f2558bdfa22] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(Parrot_ext_call+0x1b2) [0x7f2558bc3c72] /home/local/mlb/parrot/blib/lib/libparrot.so.3.7.0(Parrot_runcode+0x1b9) [0x7f2558bb89c9] ./parrot_debugger() [0x401830] ./parrot_debugger() [0x40178c] /lib64/libc.so.6(__libc_start_main+0xfd) [0x310d41ee5d] ./parrot_debugger() [0x401289] Attempting to get PIR backtrace. No guarantees. Here goes... current instr.: 'main' pc 0 (tools/dev/pbc_to_exe.pir:21) Aborted (core dumped)
(gdb) bt #0 print_debug (interp=0x60a010, status_unused=0, p_unused=0x0) at src/embed.c:135 #1 0x00007ffff7adb419 in Parrot_x_exit (interp=0x60a010, status=0) at src/exit.c:115 #2 0x00007ffff7ac862f in Parrot_debugger_start (interp=0x60a010, cur_opcode=0x798ba0) at src/debug.c:1226 #3 0x00007ffff7b2c26f in runops_debugger_core (interp=0x60a010, runcore_unused=0x6f2290, pc=0x798ba0) at src/runcore/cores.c:702 #4 0x00007ffff7b2afa7 in runops_int (interp=0x60a010, offset=0) at src/runcore/main.c:218 #5 0x00007ffff7afee33 in runops (interp=0x60a010, offs=0) at src/call/ops.c:126 #6 0x00007ffff7af7a22 in Parrot_pcc_invoke_from_sig_object (interp=0x60a010, sub_obj=0x78d598, call_object=0x7a4ed8) at src/call/pcc.c:337 #7 0x00007ffff7adbc72 in Parrot_ext_call (interp=0x60a010, sub_pmc=0x78d598, signature=0x7ffff7c8d292 "P->") at src/extend.c:311 #8 0x00007ffff7ad09c9 in Parrot_runcode (interp=0x60a010, argc=1, argv=0x7fffffffe010) at src/embed.c:262 #9 0x0000000000401830 in PDB_run_code (interp=0x60a010, argc=1, argv=0x7fffffffe010) at frontend/parrot_debugger/main.c:277 #10 0x000000000040178c in main (argc=2, argv=0x7fffffffe008) at frontend/parrot_debugger/main.c:249
p_unused is required to be non-NULL. this doesn't make much sense, seeing as it's unused :-)
Change History
Note: See
TracTickets for help on using
tickets.
