Bug#561014: perl-base: perl Deparse module generates incorrect code

Martin Koegler mkoegler at auto.tuwien.ac.at
Sun Dec 13 18:17:08 UTC 2009


Package: perl-base
Version: 5.10.1-8
Severity: normal

Input:
use bytes; sub test {  if (bytes::length($data)) { $! = &Errno::ECONNRESET; return undef; } return 1; }
sub test1 {  if (bytes::length($data)) { $! = &Errno::ECONNRESET; return undef; } return 1; }

perl -MO=Deparse results in:
- syntax OK
sub test {
    use bytes;
    if (&bytes::length($data)) {
        $! = &Errno::ECONNRESET;
        return undef;
        sub bytes::length (_) ;
        ;
    }
    return 1;
}
sub test1 {
    use bytes;
    if (bytes::length $data) {
        $! = &Errno::ECONNRESET;
        return undef;
    }
    return 1;
}


"sub bytes::length (_) ;" seems to be incorrect. 

mfg Martin Koegler

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.26-2-amd64 (SMP w/1 CPU core)
Locale: LANG=en_IE at euro, LC_CTYPE=en_IE at euro (charmap=ISO-8859-15)
Shell: /bin/sh linked to /bin/bash

Versions of packages perl-base depends on:
ii  dpkg                          1.15.5.3   Debian package management system
ii  libc6                         2.10.1-7   GNU C Library: Shared libraries

perl-base recommends no packages.

Versions of packages perl-base suggests:
ii  perl                          5.10.1-8   Larry Wall's Practical Extraction 

-- no debconf information






More information about the Perl-maintainers mailing list