package BaseClass; use Class::Std; { sub as_num :NUMERIFY { return 42 } # sub as_num { return 42 } # use overload (q{0+} => 'as_num', fallback=>1); 1; } #### #!/usr/bin/perl use strict; use warnings; use BaseClass ; my $c = BaseClass->new ; my $x = 0 ; $x += $c ; print "x = $x\n"; #### [stbaldwin@audev02 dev]$ ./tst.pl Use of uninitialized value in method lookup at (eval 2) line 3. Can't locate object method "" via package "BaseClass" at (eval 2) line 3