From 7f7391e2b44f61ce679d62c0a002453fb38b7684 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Wed, 29 Aug 2001 23:00:13 +0000 Subject: better error message when function c::foo() is missing --- perl-install/c.pm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'perl-install') diff --git a/perl-install/c.pm b/perl-install/c.pm index 0683c0ef8..aa03b9b1e 100644 --- a/perl-install/c.pm +++ b/perl-install/c.pm @@ -3,10 +3,17 @@ package c; # $Id$ use vars qw($AUTOLOAD); use c::stuff; +use MDK::Common; sub AUTOLOAD { $AUTOLOAD =~ /::(.*)/; - goto &{$c::stuff::{$1}}; + my @l = eval { &{$c::stuff::{$1}} }; + if (my $err = $@) { + $err =~ /Undefined subroutine &main::/ ? + die("can't find function $AUTOLOAD\n" . backtrace()) : + die($err); + } + wantarray ? @l : $l[0]; } 1; -- cgit v1.2.1