+
+
+{ # 20020220 mjd-perl-patch+@plover.com
+ my @n;
+ tie @n => 'NegIndex', ('A' .. 'E');
+
+ # FETCH
+ print "not " unless $n[0] eq 'C';
+ print "ok ", $test++,"\n";
+ print "not " unless $n[1] eq 'D';
+ print "ok ", $test++,"\n";
+ print "not " unless $n[2] eq 'E';
+ print "ok ", $test++,"\n";
+ print "not " unless $n[-1] eq 'B';
+ print "ok ", $test++,"\n";
+ print "not " unless $n[-2] eq 'A';
+ print "ok ", $test++,"\n";
+
+ # STORE
+ $n[-2] = 'a';
+ print "not " unless $n[-2] eq 'a';
+ print "ok ", $test++,"\n";
+ $n[-1] = 'b';
+ print "not " unless $n[-1] eq 'b';
+ print "ok ", $test++,"\n";
+ $n[0] = 'c';
+ print "not " unless $n[0] eq 'c';
+ print "ok ", $test++,"\n";
+ $n[1] = 'd';
+ print "not " unless $n[1] eq 'd';
+ print "ok ", $test++,"\n";
+ $n[2] = 'e';
+ print "not " unless $n[2] eq 'e';
+ print "ok ", $test++,"\n";
+
+ # DELETE and EXISTS
+ for (-2 .. 2) {
+ print exists($n[$_]) ? "ok $test\n" : "not ok $test\n";
+ $test++;
+ delete $n[$_];
+ print defined($n[$_]) ? "not ok $test\n" : "ok $test\n";
+ $test++;
+ print exists($n[$_]) ? "not ok $test\n" : "ok $test\n";
+ $test++;
+ }
+}
+
+