bogus assert()
Gurusamy Sarathy [Sun, 17 Jan 1999 13:39:59 +0000 (13:39 +0000)]
p4raw-id: //depot/perl@2633

pp.c
t/op/groups.t

diff --git a/pp.c b/pp.c
index 44114e7..84ee4f4 100644 (file)
--- a/pp.c
+++ b/pp.c
@@ -2853,12 +2853,8 @@ PP(pp_splice)
 
     newlen = SP - MARK;
     diff = newlen - length;
-    if (newlen && !AvREAL(ary)) {
-       if (AvREIFY(ary))
-           av_reify(ary);
-       else
-           assert(AvREAL(ary));                /* would leak, so croak */
-    }
+    if (newlen && !AvREAL(ary) && AvREIFY(ary))
+       av_reify(ary);
 
     if (diff < 0) {                            /* shrinking the area */
        if (newlen) {
index 824e88d..dc8385b 100755 (executable)
@@ -4,6 +4,13 @@ $ENV{PATH} ="/bin:/usr/bin:/usr/xpg4/bin:/usr/ucb" .
     exists $ENV{PATH} ? ":$ENV{PATH}" : "";
 $ENV{LC_ALL} = "C"; # so that external utilities speak English
 
+sub quit {
+    print "1..0\n";
+    exit 0;
+}
+
+quit() if $^O eq 'MSWin32';
+
 # We have to find a command that prints all (effective
 # and real) group names (not ids).  The known commands are:
 # groups
@@ -54,8 +61,7 @@ EOM
        last GROUPS;
     }
     # Okay, not today.
-    print "1..0\n";
-    exit 0;
+    quit();
 }
 
 # Remember that group names can contain whitespace, '-', et cetera.