(gdb) run -e 'sub foo { caller(0) }; *bar = *foo; my @l=bar()' ... Breakpoint 2, Perl_pp_caller (my_perl=0x804c008) at pp_ctl.c:1567 1567 if (MAXARG) ... (stepping over 'register I32 cxix = dopoptosub(cxstack_ix);') ... (gdb) print ccstack[1].cx_u.cx_blk.blk_u.blku_sub.cv.sv_any.xcv_gv.sv_any[0] $7 = {xnv_nv = 0, xpv_cur = 0, xpv_len = 0, xiv_u = {xivu_iv = 0, xivu_uv = 0, xivu_p1 = 0x0}, xmg_magic = 0x80540ec, xmg_stash = 0x0, xgv_gp = 0x80540b4, xgv_name = 0x805410c "foo", xgv_namelen = 3, xgv_stash = 0x804cb4c, xgv_flags = 10 '\n'} (gdb) print ccstack[1].cx_u.cx_blk.blk_u.blku_sub.cv.sv_any.xcv_gv.sv_any[1] $8 = {xnv_nv = 0, xpv_cur = 0, xpv_len = 0, xiv_u = {xivu_iv = 0, xivu_uv = 0, xivu_p1 = 0x0}, xmg_magic = 0x806f244, xmg_stash = 0x0, xgv_gp = 0x80540b4, xgv_name = 0x806f264 "bar", xgv_namelen = 3, xgv_stash = 0x804cb4c, xgv_flags = 10 '\n'}