# with Perl version 5.8.7, all eval("__PACKAGE__") variants pass
package TestOO;
use strict; use warnings;

sub new {
  my $this = bless { switch=>{ -sw1=>q(A) } };
  eval('__PACKAGE__->hello()');
  eval("__PACKAGE__->hi()");
  eval(sprintf('%s->ciao()',__PACKAGE__));
}

sub hello {
  print "hello\n";
}

sub hi {
  print "hi\n";
}

sub ciao {
  print "ciao\n";
}

1;
