P:\test>perl5.6.1 -Mstrict -wle "my $s= '' x 160_000; print 'Ok' if $s =~ m[^(?:)+$]" Ok P:\test>perl5.8.4 -Mstrict -wle "my $s= '' x 160_000; print 'Ok' if $s =~ m[^(?:)+$]" Ok P:\test>perl5.8.4 -Mstrict -wle "my $s= '' x 160_000; print 'Ok' if $s =~ m[^(?:){160000}$]" Quantifier in {,} bigger than 32766 in regex; marked by <-- HERE in m/^(?:){ <-- HERE 160000}$/ at -e line 1.