[Bug 967463] New: perl-5.18: SvTRUE returns wrong value

bugzilla at redhat.com bugzilla at redhat.com
Mon May 27 08:34:23 UTC 2013


https://bugzilla.redhat.com/show_bug.cgi?id=967463

            Bug ID: 967463
           Summary: perl-5.18: SvTRUE returns wrong value
           Product: Fedora
           Version: rawhide
         Component: perl
          Severity: unspecified
          Priority: unspecified
          Assignee: mmaslano at redhat.com
          Reporter: ppisar at redhat.com
        QA Contact: extras-qa at fedoraproject.org
                CC: cweyl at alumni.drew.edu, iarnell at gmail.com,
                    jplesnik at redhat.com, kasal at ucw.cz, lkundrak at v3.sk,
                    mmaslano at redhat.com,
                    perl-devel at lists.fedoraproject.org, ppisar at redhat.com,
                    psabata at redhat.com, rc040203 at freenet.de,
                    tcallawa at redhat.com

There is a regression in SvTRUE macro. Expected value is:

$ perl -MScalar::Util=dualvar -le 'print $]; $a = dualvar 1, ""; print $a ?
"true" : "false";'
5.016003
false

This is broken in 5.18.0 and fixed with upstream commit:

commit 762dbf22cb22645771fc27b5d197fd40cbbd9da8
Author: Father Chrysostomos <sprout at cpan.org>
Date:   Sat May 25 23:59:45 2013 -0700

    [perl #118159] Make PVs take precedence in SvTRUE

    Commit 4bac9ae4 (probably inadvertently) changed SvTRUE to treat an SV
    with any of PVX, IVX or NVX having a true value as true.

    Traditionally, truth was based solely on stringification. The examina-
    tion of the SvIVX and SvNVX slots was for those cases where there was
    no string already and it could be deduced from IVX or NVX whether it
    would stringify as "0" or no (bugs with -0 aside).

    This changes things back to the way they have ‘always’ been.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=bZ5qSdV9OF&a=cc_unsubscribe


More information about the perl-devel mailing list