use strict; use warnings; &a; sub a{ print "a"; &b } sub b{ print "b"; &c } sub c{ print "c"; die "arrgh at\n" . cstack() } sub cstack { my $i=1; my $stack=""; while ( my $s = (caller($i))[3] ) { $stack .= "$s\n" ; $i++; } return $stack; }