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
perl 5 (v.5.26.1) interpreter crashes on 64-bit Windows #16673
Comments
From patrickmclot@gmail.comI am running ActiveState Perl (v5.26.1) on a 64-bit Windows 7 installation. Cheers, |
From @jkeenanOn Sun, 26 Aug 2018 22:34:18 GMT, patrickmclot@gmail.com wrote:
Let me see if I correctly understand your sample program (re-attached with a .pl extension). You open a (global) filehandle to read from a file -- that file being the program itself. For each line read you call a subroutine, parser(), which takes the line as input but then does nothing with it, since all the subroutine does is to print "Hello, world". If I run it on Linux, all I get is: ##### I confess that I don't understand the point of such a program -- but I concede that that doesn't explain why it crashes on Windows (which I don't have available). Thank you very much. |
From @jkeenan |
The RT System itself - Status changed from 'new' to 'open' |
From @sisyphusThe sample program crashes on x64 Strawberry Perl 5.26.0, but on x64 Strawberry Perl 5.28.0 it produces output of: Can't locate object method "parser" via package "#!perl" (perhaps you forgot to I believe that's the expected output - and therefore I would suggest that this bug has already been fixed. Cheers, |
From @xenuOn Sun, 26 Aug 2018 21:31:09 -0700
The crash was caused by the fact that the name of the filehandle starts While the code crashes only on Windows, it also behaves weirdly on other open INFILE, '<', \'foo'; outputs "bar at a.pl line 3, <INFILE> line 0.000000.". Note that the line The following commit has fixed those problems: commit 559a021 sprintf: handle sized int-ish formats with Inf/Nan However, the commit message doesn't say anything about crashing or float I wonder if the bug was actually fixed or maybe it was just hidden. CC-ing Dave to get his opinion. |
1 similar comment
From @xenuOn Sun, 26 Aug 2018 21:31:09 -0700
The crash was caused by the fact that the name of the filehandle starts While the code crashes only on Windows, it also behaves weirdly on other open INFILE, '<', \'foo'; outputs "bar at a.pl line 3, <INFILE> line 0.000000.". Note that the line The following commit has fixed those problems: commit 559a021 sprintf: handle sized int-ish formats with Inf/Nan However, the commit message doesn't say anything about crashing or float I wonder if the bug was actually fixed or maybe it was just hidden. CC-ing Dave to get his opinion. |
From @iabynOn Wed, Aug 29, 2018 at 04:24:33PM +0200, Tomasz Konojacki wrote:
It appears to be a combination of bugs, all of which were fixed It's caused by the warn code doing: Perl_sv_catpvf(aTHX_ sv, ", <%" SVf "> %s %" IVdf, i.e. doing the 'C' variant rather than the 'perl' variant of sprintf, Handling the special-cased %SVf format (which actually expands to "%-p" I haven't fully diagnosed this (life is too short), but I suspect my 100+ -- |
Also, if the sample program is modified slightly to call a parser sub that outputs each parsed line, it produces the expected output without crashing:
Definitely seems like this ticket can be closed? |
Seems like that to me. |
Migrated from rt.perl.org#133477 (status was 'open')
Searchable as RT133477$
The text was updated successfully, but these errors were encountered: