Documentation for method rethrow assembled from the following pages:

Class: Exception §

From Exception

(Exception) method rethrow §

Defined as:

method rethrow(Exception:D:)

Rethrows an exception that has already been thrown at least once. This is different from throw in that it preserves the original backtrace.

sub f() { die 'Bad' };
sub g() { fCATCH { default { .rethrow } } };
g;
CATCH { default { say .backtrace.full } };