1use strict;
2use warnings;
3use Test::More tests => 2;
4
5BEGIN {
6    package MyTie;
7    BEGIN { $INC{'MyTie.pm'} = 1 }
8
9    use Attribute::Handlers autotie => { '__CALLER__::Mine' => __PACKAGE__ };
10
11    sub TIESCALAR {
12        my ($class, $data) = @_;
13        bless \$data, $class;
14    }
15
16    sub FETCH { ${$_[0]} }
17    sub STORE { ${$_[0]} = $_[1] }
18}
19
20use MyTie;
21
22eval q{
23    my $var :Mine;
24    1;
25};
26::is $@, '',
27    'attribute available in caller';
28
29{
30    package Pack2;
31    use MyTie;
32
33    eval q{
34        my $var :Mine;
35        1;
36    };
37    ::is $@, '',
38        'attribute available in caller of second package';
39}
40