sub get_caller() { print caller() . "\n"; } sub dummy() { my $dummy_module = " package DUMMY; sub wrapper {main::get_caller()}; 1; "; eval $dummy_module; my $dummy = {}; bless $dummy, 'DUMMY'; $dummy->wrapper(); } get_caller(); dummy();