$x = "the quick brown fox\n"; $x x= 107374182; print length $x;; 2147483640 ### 8 bytes less than 2^31. $n=0; ++$n while $x =~ m[^.*$]mg; print $n;; ### finds all the lines. 107374182 $x .= "the straw that broke the camel's back\n"; print length $x;; ### Add another line that pushes the length a few bytes over 2^31 2147483678 $n=0; ++$n while $x =~ m[^.*$]mg; print $n;; ### and it silently fails to find any of them. 0