Hi all, I've been looking for the answer to this, but I can't find it. I'm not submitting a Perl bug report because I'm not sure if this is a bug or Yet Another Perl Feature I Don't Know. #!/usr/local/bin/perl -lw use strict; package Foo; sub new { print "Expected class: $_[0]"; bless {} => shift } sub test { print "Actual class: ". ref shift } package main; *Bar:: = \*Foo::; Bar->new->test; Foo::new('Bar')->test; Both times that test() is called, I expect ref to return 'Bar', but instead it returns 'Foo'. Why is that? Cheers, Ovid ===== Silence is Evil http://users.easystreet.com/ovid/philosophy/decency.html Ovid http://www.perlmonks.org/index.pl?node_id=17000 Web Programming with Perl http://users.easystreet.com/ovid/cgi_course/Thread Next