# print "# $num: $got\n";
}
-my $odd_msg = '/^Odd number of elements in hash/';
+my $odd_msg = '/^Odd number of elements in hash assignment/';
+my $odd_msg2 = '/^Odd number of elements in anonymous hash/';
my $ref_msg = '/^Reference found where even-sized list expected/';
{
test_warning 2, shift @warnings, $odd_msg;
%hash = { 1..3 };
- test_warning 3, shift @warnings, $odd_msg;
+ test_warning 3, shift @warnings, $odd_msg2;
test_warning 4, shift @warnings, $ref_msg;
%hash = [ 1..3 ];
%hash = sub { print "ok" };
test_warning 6, shift @warnings, $odd_msg;
+ # Old pseudo-hash syntax, now removed.
my $avhv = [{x=>1,y=>2}];
- %$avhv = (x=>13,'y');
- test_warning 7, shift @warnings, $odd_msg;
-
- %$avhv = 'x';
- test_warning 8, shift @warnings, $odd_msg;
+ eval {
+ %$avhv = (x=>13,'y');
+ };
+ test 7, $@ =~ /^Not a HASH reference/;
+
+ # Old pseudo-hash syntax, since removed.
+ eval {
+ %$avhv = 'x';
+ };
+ test 8, $@ =~ /^Not a HASH reference/;
$_ = { 1..10 };
test 9, ! @warnings, "Unexpected warning";