+ our %Z = (a => 1);
+ is describe(\%Z), 'a:1';
+ {
+ temp %Z = { b => 2 };
+ is describe(\%Z), 'b:2';
+ %Z = (c => 3);
+ is describe(\%Z), 'c:3';
+ $Z{d} = 4;
+ is describe(\%Z), 'c:3, d:4';
+ }
+ is describe(\%Z), 'a:1';
+ {
+ temp %Z = { a => 5 };
+ is describe(\%Z), 'a:5';
+ $Z{a} = 6;
+ is describe(\%Z), 'a:6';
+ }
+ is describe(\%Z), 'a:1';
+ {
+ temp %Z = { a => 7, d => 8 };
+ is describe(\%Z), 'a:7, d:8';
+ temp %Z = { d => 9, e => 10 };
+ is describe(\%Z), 'd:9, e:10';
+ }
+ is describe(\%Z), 'a:1';
+ {
+ temp %Z;
+ is describe(\%Z), '';
+ }
+ is describe(\%Z), 'a:1';
+ {
+ temp %Z = { a => 11, f => 12 };
+ is describe(\%Z), 'a:11, f:12';
+ {
+ local $Z{a} = 13;
+ is describe(\%Z), 'a:13, f:12';
+ {
+ local @Z{qw<f g>} = (14, 15);
+ is describe(\%Z), 'a:13, f:14, g:15';
+ }
+ is describe(\%Z), 'a:13, f:12';
+ }
+ is describe(\%Z), 'a:11, f:12';
+ }
+ is describe(\%Z), 'a:1';
+ {
+ local %Z = (A => 1, B => 2);
+ is describe(\%Z), 'A:1, B:2';
+ }
+ is describe(\%Z), 'a:1';
+ {
+ local %Z = (A => 3, C => 4);
+ temp %Z = { A => 5, D => 6 };
+ is describe(\%Z), 'A:5, D:6';
+ }
+ is describe(\%Z), 'a:1';
+ {
+ temp %Z = { A => 7, E => 8 };
+ local %Z = (A => 9, F => 10);
+ is describe(\%Z), 'A:9, F:10';
+ }
+ is describe(\%Z), 'a:1';