Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re: Another 64-bit Perl bug. Is it fixed post 5.18?

by moritz (Cardinal)
on May 24, 2015 at 12:48 UTC ( #1127581=note: print w/replies, xml ) Need Help??

in reply to Another 64-bit Perl bug. Is it fixed post 5.18?

For as long as I remember doing Perl development, there was always a limitation that a quantifier like + or * wouldn't actually match an unlimited number of characters, but at most a fixed, upper limit.

IIRC in the days of perl 5.8, it was more like 2**15.

It seems the situation has improved a bit for + and *, but you can still see the explicit limit with the generic quantifier:

$ perl -Mre=debug -e '/.{2,}/' Compiling REx ".{2,}" Final program: 1: CURLY {2,32767} (4) 3: REG_ANY (0) 4: END (0) minlen 2 Freeing REx: ".{2,}"

So the upper limit for {2,} is actually 32767 (== 2**15 - 1), not unlimited.

If its been fixed already, which version did the fix happen?

I don't think it was ever fixed.

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1127581]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2022-12-10 09:17 GMT
Find Nodes?
    Voting Booth?

    No recent polls found