t/comp/parser.t: Skip test on 32-bit builds
authorKarl Williamson <khw@cpan.org>
Mon, 3 Jul 2017 17:30:52 +0000 (11:30 -0600)
committerKarl Williamson <khw@cpan.org>
Thu, 13 Jul 2017 03:14:23 +0000 (21:14 -0600)
This code point is no longer legal on such builds.  We need to use this
code point to trigger the bug, so can't lower it to work on those
builds.

t/comp/parser.t

index 6fd5ad0..79b930e 100644 (file)
@@ -582,13 +582,16 @@ is $@, "", 'read into keys';
 eval 'substr keys(%h),0,=3';
 is $@, "", 'substr keys assignment';
 
-# very large utf8 char in error message was overflowing buffer
-{
-
-    no warnings;
-    eval "q" . chr(100000000064);
-    like $@, qr/Can't find string terminator "." anywhere before EOF/,
-        'RT 128952';
+{ # very large utf8 char in error message was overflowing buffer
+    if (length sprintf("%x", ~0) <= 8) {
+        is 1, 1, "skip because overflows on 32-bit machine";
+    }
+    else {
+        no warnings;
+        eval "q" . chr(100000000064);
+        like $@, qr/Can't find string terminator "." anywhere before EOF/,
+            'RT 128952';
+    }
 }
 
 # RT #130311: many parser shifts before a reduce