New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Win32: Use of // after a successful /(?{})/ results in strange effect #17070
Comments
From @haukexHi, As first reported by PerlMonks user Eily at The output of the attached script under Linux, Perls 5.20.0 through However, under Strawberry Perl 5.30.0.1-64bit on Win 7, the output is: Item: Bar Item: Foo Use of uninitialized value in say at strangebug.pl line 4. Foo -->8-- This seems to be some really strange memory (stack? dunno) issue that I Regards, |
From @haukex |
From @haukexOn Mon, 01 Jul 2019 10:25:48 -0700, haukex@zero-g.net wrote:
Sorry, the output under Windows doesn't really have those extra blank lines, seems my mail client didn't like me pasting CRLF into the mail (looked fine before sending). Regards, |
From [Unknown Contact. See original ticket]On Mon, 01 Jul 2019 10:25:48 -0700, haukex@zero-g.net wrote:
Sorry, the output under Windows doesn't really have those extra blank lines, seems my mail client didn't like me pasting CRLF into the mail (looked fine before sending). Regards, |
From @sisyphusOn my Windows 7 box I have stable perl versions 5.x.0 for x in the range Hope that helps narrow it down a bit. Cheers, On Tue, Jul 2, 2019 at 3:28 AM Hauke D via RT <perlbug-comment@perl.org>
|
From @sisyphusSorry - I failed to mention that I (obviously) removed the "use 5.020;" Cheers, On Tue, Jul 2, 2019 at 12:23 PM sisyphus <sisyphus359@gmail.com> wrote:
|
From @hvdsI haven't investigated what's going on here, but something similar happens with this simpler testcase: % perl -wle '(my $x = "x") =~ /.(?{ print "Regex!" })/; func(); sub func { "Foo" =~ //i }' % Running with -Mre=debug shows that we really are attempting to re-invoke the regexp, but the EVAL node is somehow printing an empty string - at least with my (Ubuntu) system perl, a threaded non-debugging perl-5.26.1 (+ 67 Ubuntu patches). Reinvoking at the top level (without wrapping in the function call) prints "Regex!" twice as expected. I can't reproduce the problem with an unthreaded debugging 5.30.0. I haven't got time to dig further right now, but it feels like clarifying relevant build options would be a useful first step. Hugo |
The RT System itself - Status changed from 'new' to 'open' |
Migrated from rt.perl.org#134246 (status was 'open')
Searchable as RT134246$
The text was updated successfully, but these errors were encountered: