-
Notifications
You must be signed in to change notification settings - Fork 561
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
Segfault with overload and Test #4695
Comments
From @simoncozensCreated by [email protected]use overload use Test; BEGIN { plan tests => 1 }; ok(bless{}, __PACKAGE__); The overload construction works for everything else, but fails Perl Info
|
From @schwernOn Thu, Dec 13, 2001 at 12:37:50PM -0500, Simon Cozens wrote:
Hmmm, its choking on line 258 of Test.pm 256 } else { $ok being the overloaded object after being copied a few times. it pauses at that point for a while in the debugger, if you give it a I can't get it to fail any other way than by running it through ok(). -- Michael G. Schwern <schwern@pobox.com> http://www.pobox.com/~schwern/ |
From [Unknown Contact. See original ticket]-----BEGIN PGP SIGNED MESSAGE----- Moin, not here: te@null:~ > cat overload.pl use overload use Test; BEGIN { plan tests => 1 }; ok(bless{}, __PACKAGE__); This is perl, v5.6.1 built for i686-linux Cheers, Tels - -- http://bloodgate.com/perl My current Perl projects -----BEGIN PGP SIGNATURE----- iQEVAwUBPBjiG3cLPEOTuEwVAQFPBwf+MO2BAgCeumJcC52WSBW/ssFnjCYEIbhC |
From @schwernOn Thu, Dec 13, 2001 at 07:15:52PM +0100, Tels wrote:
Yes, it appears to be a bleadperl thing. The trouble is Perl_sv_2bool is going into infinite recursion: #0 Perl_sv_setsv_flags (dstr=0x104580e0, sstr=0x104580d4, flags=2) at this point I stopped scrolling back through the bt. Here's the point where it goes off into oblivion: #0 Perl_sv_2bool (sv=0x101a6acc) at sv.c:3237
-- Michael G. Schwern <schwern@pobox.com> http://www.pobox.com/~schwern/ |
From [Unknown Contact. See original ticket]-----BEGIN PGP SIGNED MESSAGE----- Moin, On 18-Dec-01 Michael G Schwern tried to scribble about:
Might be related to testing whether the returned ref on overload is the Cheers, Tels - -- http://bloodgate.com/perl My current Perl projects -----BEGIN PGP SIGNATURE----- iQEVAwUBPB+UQXcLPEOTuEwVAQHhtQf9E7CuEQtpSgpkNtRm4hg0qzhXcx8NIUiX |
From @schwernOn Tue, Dec 18, 2001 at 08:11:55PM +0100, Tels wrote:
Well, here's the point where it decides to leave the solar system if (SvROK(sv)) { The "return SvTRUE(tmpsv);" is line 3239. -- Michael G. Schwern <schwern@pobox.com> http://www.pobox.com/~schwern/ |
From @vanstynMichael G Schwern <schwern@pobox.com> wrote: Shorter test case: I strongly recommend aiming for a short test case before trying to debug In the above test case, note that $result has to be copied to another This turns out to be because of a wrinkle in sv_upgrade: if the target I'd add a test case (as above), but I don't know whether we have Hugo Inline Patch--- sv.c.old Fri Dec 14 22:29:54 2001
+++ sv.c Wed Dec 19 01:35:05 2001
@@ -3235,7 +3235,7 @@
if (SvROK(sv)) {
SV* tmpsv;
if (SvAMAGIC(sv) && (tmpsv=AMG_CALLun(sv,bool_)) &&
- (SvTYPE(tmpsv) != SVt_RV || (SvRV(tmpsv) != SvRV(sv))))
+ (!SvROK(tmpsv) || (SvRV(tmpsv) != SvRV(sv))))
return SvTRUE(tmpsv);
return SvRV(sv) != 0;
} |
From @jhiOn Wed, Dec 19, 2001 at 01:45:23AM +0000, Hugo van der Sanden wrote:
Thanks, applied.
-- |
From @schwernOn Wed, Dec 19, 2001 at 01:45:23AM +0000, Hugo van der Sanden wrote:
Toss it onto the end of t/run/kill_perl.t. While it doesn't deal well That reminds me, I promised I'd get around to dismantling kill_perl.t, -- Michael G. Schwern <schwern@pobox.com> http://www.pobox.com/~schwern/ |
From @schwernHugo fixed. -- Michael G. Schwern <schwern@pobox.com> http://www.pobox.com/~schwern/ |
From @jhiOn Wed, Dec 19, 2001 at 06:42:32AM -0500, Michael G Schwern wrote:
Yes. -- |
From @gsar[followup-to-old-message alert] On Wed, 19 Dec 2001 01:45:23 GMT, Hugo van der Sanden wrote:
This went in as change#13786, and appears to be fixing only one Seems to me the four others in sv.c need fixing as well. Sarathy |
From @hvdsGurusamy Sarathy <gsar@ActiveState.com> wrote: You are quite right; I've applied the parallel change to the other Hugo |
@cwest - Status changed from 'open' to 'resolved' |
Migrated from rt.perl.org#8053 (status was 'resolved')
Searchable as RT8053$
The text was updated successfully, but these errors were encountered: