Running as unit: rb-build-i386_9-32383.service ==================================================================================== Fri Nov 22 20:30:41 UTC 2024 - running /srv/jenkins/bin/reproducible_build.sh (for job reproducible_builder_i386_9) on jenkins, called using "ionos2-i386 ionos6-i386" as arguments. Fri Nov 22 20:30:41 UTC 2024 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-AwKewLIP" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Fri Nov 22 20:30:41 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos2-i386.debian.net is marked as down. Fri Nov 22 20:30:41 UTC 2024 - checking via ssh if ionos2-i386.debian.net is up. removed '/tmp/read-only-fs-test-ObDcQC' Fri Nov 22 20:30:41 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos6-i386.debian.net is marked as down. Fri Nov 22 20:30:41 UTC 2024 - checking via ssh if ionos6-i386.debian.net is up. removed '/tmp/read-only-fs-test-XwyGtd' ok, let's check if libppr-perl is building anywhere yet… ok, libppr-perl is not building anywhere… UPDATE 1 ============================================================================= Initialising reproducibly build of libppr-perl in unstable on i386 on jenkins now. 1st build will be done on ionos2-i386.debian.net. 2nd build will be done on ionos6-i386.debian.net. ============================================================================= Fri Nov 22 20:30:49 UTC 2024 I: starting to build libppr-perl/unstable/i386 on jenkins on '2024-11-22 20:30' Fri Nov 22 20:30:49 UTC 2024 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/i386_9/32383/console.log 1732307449 i386 unstable libppr-perl Fri Nov 22 20:30:49 UTC 2024 I: Downloading source for unstable/libppr-perl=0.001010-2 --2024-11-22 20:30:49-- http://deb.debian.org/debian/pool/main/libp/libppr-perl/libppr-perl_0.001010-2.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 2331 (2.3K) [text/prs.lines.tag] Saving to: ‘libppr-perl_0.001010-2.dsc’ 0K .. 100% 178M=0s 2024-11-22 20:30:49 (178 MB/s) - ‘libppr-perl_0.001010-2.dsc’ saved [2331/2331] --2024-11-22 20:30:49-- http://deb.debian.org/debian/pool/main/libp/libppr-perl/libppr-perl_0.001010-2.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 2331 (2.3K) [text/prs.lines.tag] Saving to: ‘libppr-perl_0.001010-2.dsc’ 0K .. 100% 178M=0s 2024-11-22 20:30:49 (178 MB/s) - ‘libppr-perl_0.001010-2.dsc’ saved [2331/2331] Fri Nov 22 20:30:49 UTC 2024 I: libppr-perl_0.001010-2.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 3.0 (quilt) Source: libppr-perl Binary: libppr-perl Architecture: all Version: 0.001010-2 Maintainer: Debian Perl Group Uploaders: gregor herrmann Homepage: https://metacpan.org/release/PPR Standards-Version: 4.7.0 Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/libppr-perl Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git Testsuite: autopkgtest-pkg-perl Build-Depends: debhelper-compat (= 13) Build-Depends-Indep: libtest-simple-perl , perl Package-List: libppr-perl deb perl optional arch=all Checksums-Sha1: 3851756fd9d779789fe6fee4c3f0dc6db93330bd 101506 libppr-perl_0.001010.orig.tar.gz 2c0ac67f3d088a0b07997f0be35b3c0fdc5bbd8b 1840 libppr-perl_0.001010-2.debian.tar.xz Checksums-Sha256: a339828fec4bd602d8f5301d94b1ba181bfb7f8ed1b3455d5abaea226364a66f 101506 libppr-perl_0.001010.orig.tar.gz fc2c9565685d0f0c3c577ff281e98a92ce883af368f6605f36e800d4776c5594 1840 libppr-perl_0.001010-2.debian.tar.xz Files: e7d479b484ab1d85aa25deec8d1dbf71 101506 libppr-perl_0.001010.orig.tar.gz df9c22e7c87147bb9f9c102d225af430 1840 libppr-perl_0.001010-2.debian.tar.xz Dgit: bb6551abb41896b2aad4fbccceb90db10014c729 debian archive/debian/0.001010-2 https://git.dgit.debian.org/libppr-perl -----BEGIN PGP SIGNATURE----- iQKTBAEBCgB9FiEE0eExbpOnYKgQTYX6uzpoAYZJqgYFAmcJRwVfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEQx RTEzMTZFOTNBNzYwQTgxMDREODVGQUJCM0E2ODAxODY0OUFBMDYACgkQuzpoAYZJ qgYMHRAAg0X0ozgjEcGHQwp//1Whwsf33x4dpama0daGsrGJh2LdNbYpdOrg1fyB AmGzRUj4bnsgk3naTe1Mzsz9iWOsbdE+gsiip9wwELR0Lo+Se06ERcR79ameZlFK Wz+Pym50rZ58Aq8ahkNNAT3dHKcxxtn8Ey8YezrAHA7Ril6cNVrJaEsu6zE2Yj7i ZpMyb16CUS2Mu3SzhWx7Y/MsAn01ZGJq7FyVPPO9IiVoQhKJ7lySA/FQqfnY9MOJ pta/yunMRJM+mMq+2gcQfKNGUyIDDFptpFjt8maCqAi/JnxaS8OlPkebORbJxvJW q9LreiinpweQCyzvQkjRWLsszu2rgDab6BIETpL6GwicpNAVh6MIXxqgNSBKrCdw T1+4z2MBMGD/YXg+YTcIduCdChKNfcE1aeNsKBqXq6S61yrw42S6FC1O0qJDabAs BEZdFPlx6c1YhT9iyMeCIvpuLaFuwqf/LZAkpOuJzaFpYbVZVUP9Xv3MTnS/5zNu 6vMkbBqZcJ1vxZ4pXmGXk70bADW88qs/vrLBFNCIGNBGQmTVWUZQk5txPTYeO7Jj eR9VSM3fAWF7NDQMngMAn7wNPKWzqVEsIscQcg6odGwBzZIWNPE2SGcBxVI1ZPYb vtuxyxIfcMBwZ2OCwFqAhgT584Gp83T/eztvPW664bVLTUIajWs= =MDdS -----END PGP SIGNATURE----- Fri Nov 22 20:30:49 UTC 2024 I: Checking whether the package is not for us Fri Nov 22 20:30:49 UTC 2024 I: Starting 1st build on remote node ionos2-i386.debian.net. Fri Nov 22 20:30:49 UTC 2024 I: Preparing to do remote build '1' on ionos2-i386.debian.net. Fri Nov 22 20:30:49 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos2-i386.debian.net is marked as down. Fri Nov 22 20:30:49 UTC 2024 - checking via ssh if ionos2-i386.debian.net is up. removed '/tmp/read-only-fs-test-yj1Tvb' ==================================================================================== Fri Nov 22 20:30:50 UTC 2024 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos2-i386, called using "1 libppr-perl unstable /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr 0.001010-2" as arguments. Fri Nov 22 20:30:50 UTC 2024 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-T4cEsqdf" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Fri Nov 22 20:30:50 UTC 2024 I: Downloading source for unstable/libppr-perl=0.001010-2 Reading package lists... NOTICE: 'libppr-perl' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git Please use: git clone https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 106 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (dsc) [2331 B] Get:2 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (tar) [102 kB] Get:3 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (diff) [1840 B] Fetched 106 kB in 0s (1301 kB/s) Download complete and in download only mode Reading package lists... NOTICE: 'libppr-perl' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git Please use: git clone https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 106 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (dsc) [2331 B] Get:2 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (tar) [102 kB] Get:3 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (diff) [1840 B] Fetched 106 kB in 0s (1301 kB/s) Download complete and in download only mode ============================================================================= Building libppr-perl in unstable on i386 on ionos2-i386 now. Date: Fri Nov 22 21:30:50 CET 2024 Date UTC: Fri Nov 22 20:30:50 UTC 2024 ============================================================================= W: /root/.pbuilderrc does not exist I: Logging to b1/build.log I: pbuilder: network access will be disabled during build I: Current time: Fri Nov 22 08:30:51 -12 2024 I: pbuilder-time-stamp: 1732307451 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [libppr-perl_0.001010-2.dsc] I: copying [./libppr-perl_0.001010.orig.tar.gz] I: copying [./libppr-perl_0.001010-2.debian.tar.xz] I: Extracting source gpgv: Signature made Fri Oct 11 15:40:53 2024 gpgv: using RSA key D1E1316E93A760A8104D85FABB3A68018649AA06 gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./libppr-perl_0.001010-2.dsc: no acceptable signature found dpkg-source: info: extracting libppr-perl in libppr-perl-0.001010 dpkg-source: info: unpacking libppr-perl_0.001010.orig.tar.gz dpkg-source: info: unpacking libppr-perl_0.001010-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/62850/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='i386' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=11 ' DISTRIBUTION='unstable' HOME='/root' HOST_ARCH='i386' IFS=' ' INVOCATION_ID='20cb27a2a30e4194b15b8a6e459b0c1a' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' LD_LIBRARY_PATH='/usr/lib/libeatmydata' LD_PRELOAD='libeatmydata.so' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='62850' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/pbuilderrc_RZ2D --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b1 --logfile b1/build.log libppr-perl_0.001010-2.dsc' SUDO_GID='112' SUDO_UID='107' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://46.16.76.132:3128' I: uname -a Linux ionos2-i386 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin I: user script /srv/workspace/pbuilder/62850/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), libtest-simple-perl, perl dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19952 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 20.1 MB of archives. After unpacking 75.7 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main i386 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian unstable/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB] Get: 3 http://deb.debian.org/debian unstable/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB] Get: 4 http://deb.debian.org/debian unstable/main i386 file i386 1:5.45-3+b1 [43.2 kB] Get: 5 http://deb.debian.org/debian unstable/main i386 gettext-base i386 0.22.5-2 [201 kB] Get: 6 http://deb.debian.org/debian unstable/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB] Get: 7 http://deb.debian.org/debian unstable/main i386 groff-base i386 1.23.0-5 [1196 kB] Get: 8 http://deb.debian.org/debian unstable/main i386 bsdextrautils i386 2.40.2-11 [95.6 kB] Get: 9 http://deb.debian.org/debian unstable/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB] Get: 10 http://deb.debian.org/debian unstable/main i386 man-db i386 2.13.0-1 [1428 kB] Get: 11 http://deb.debian.org/debian unstable/main i386 m4 i386 1.4.19-4 [293 kB] Get: 12 http://deb.debian.org/debian unstable/main i386 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian unstable/main i386 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian unstable/main i386 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian unstable/main i386 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian unstable/main i386 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian unstable/main i386 libtool all 2.4.7-8 [517 kB] Get: 18 http://deb.debian.org/debian unstable/main i386 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian unstable/main i386 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian unstable/main i386 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian unstable/main i386 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian unstable/main i386 libelf1t64 i386 0.192-4 [195 kB] Get: 23 http://deb.debian.org/debian unstable/main i386 dwz i386 0.15-1+b1 [116 kB] Get: 24 http://deb.debian.org/debian unstable/main i386 libicu72 i386 72.1-5+b1 [9583 kB] Get: 25 http://deb.debian.org/debian unstable/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB] Get: 26 http://deb.debian.org/debian unstable/main i386 gettext i386 0.22.5-2 [1631 kB] Get: 27 http://deb.debian.org/debian unstable/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main i386 debhelper all 13.20 [915 kB] Fetched 20.1 MB in 0s (72.3 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19952 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:i386. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic1t64:i386 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3+b1_i386.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_i386.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../05-libuchardet0_0.0.8-1+b2_i386.deb ... Unpacking libuchardet0:i386 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_i386.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-11_i386.deb ... Unpacking bsdextrautils (2.40.2-11) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../08-libpipeline1_1.5.8-1_i386.deb ... Unpacking libpipeline1:i386 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_i386.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_i386.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-8_all.deb ... Unpacking libtool (2.4.7-8) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:i386. Preparing to unpack .../21-libelf1t64_0.192-4_i386.deb ... Unpacking libelf1t64:i386 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_i386.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:i386. Preparing to unpack .../23-libicu72_72.1-5+b1_i386.deb ... Unpacking libicu72:i386 (72.1-5+b1) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ... Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_i386.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:i386 (1.5.8-1) ... Setting up libicu72:i386 (72.1-5+b1) ... Setting up bsdextrautils (2.40.2-11) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:i386 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:i386 (0.192-4) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:i386 (0.0.8-1+b2) ... Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-8) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: Running cd /build/reproducible-path/libppr-perl-0.001010/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../libppr-perl_0.001010-2_source.changes dpkg-buildpackage: info: source package libppr-perl dpkg-buildpackage: info: source version 0.001010-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by gregor herrmann dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 debian/rules clean dh clean dh_clean debian/rules binary dh binary dh_update_autotools_config dh_autoreconf dh_auto_configure /usr/bin/perl Makefile.PL INSTALLDIRS=vendor "OPTIMIZE=-g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libppr-perl-0.001010=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2" "LD=i686-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libppr-perl-0.001010=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro" Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for PPR Writing MYMETA.yml and MYMETA.json dh_auto_build make -j11 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' cp lib/PPR.pm blib/lib/PPR.pm cp lib/PPR/X.pm blib/lib/PPR/X.pm Manifying 2 pod documents make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' dh_auto_test make -j11 test TEST_VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t # Testing PPR 0.001010 t/00.load.t ...................... ok 1 - use PPR; 1..1 ok t/blocks.t ....................... ok 1 - MATCH: { # func1 / regex /; # func1 / regex ; # } # ok 2 - MATCH: { # time / regex; # func1 / regex /; # } # ok 3 - MATCH: { # func1 / regex; # } # ok 4 - MATCH: { # func1 / regex /; # } # ok 5 - MATCH: { # func1 / regex /; # func1 / regex; # } # ok 6 - MATCH: { sub { $_[0] /= $_[1] } } \# / here # ok 7 - MATCH: {$obj->method} # ok 8 - MATCH: { %x = () } # ok 9 - MATCH: { # $a = $b; # $x = $a / $b; # $a =~ /$b/; # /$c/; # @a = map /\s/, @b; # @a = map {/\s/} @b; # $not_pod # =head1 (); # } # ok 10 - MATCH: { # $a = $b; # $x = $a / $b; # # =head1 This is pod # # ...until the next # # =cut # # $a =~ /$b/; # /$c/; # # =pod # # more pod # # =cut # @a = map /\s/, @b; # @a = map {/\s/} @b # } # ok 11 - MATCH: { %x = ( try => "this") } # ok 12 - MATCH: {Foo(')')} # ok 13 - MATCH: { $data[4] =~ /['"]/; } # ok 14 - MATCH: { %x = ( $try->{this}, "too") } # ok 15 - MATCH: { %'x = ( $try->{this}, "too") } # ok 16 - MATCH: { %'x'y = ( $try->{this}, "too") } # ok 17 - MATCH: { %::x::y = ( $try->{this}, "too") } # ok 18 - MATCH: { $a = /\}/; } # ok 19 - MATCH: { 1; } # ok 20 - MATCH: { $a = 1; } # ok 21 - MATCH: {$a=1} # ok 22 - MATCH: { $a = $b; \# what's this doing here? # } # ok 23 - FAIL: < %x = do { $try > 10 } >; # ok 24 - FAIL: { $a = $b; \# what's this doing here? } # ok 25 - FAIL: { $a = $b; \# what's this doing here? # 1..25 ok t/control.t ...................... ok 1 - MATCH: for (my $x = 0 ; $x < 1; $x++) { } # ok 2 - MATCH: foreach (my $x = 0 ; $x < 1; $x++) { } # ok 3 - MATCH: for ($x = 0 ; $x < 1; $x++) { } # ok 4 - MATCH: foreach ($x = 0 ; $x < 1; $x++) { } # ok 5 - MATCH: for ( ; ; ) { } # ok 6 - MATCH: foreach ( ; ; ) { } # ok 7 - MATCH: while (1) { } # ok 8 - MATCH: until (1) { } # ok 9 - MATCH: if (1) { } # ok 10 - MATCH: unless (1) { } # ok 11 - MATCH: for (@foo) { } # ok 12 - MATCH: foreach (@foo) { } # ok 13 - MATCH: for $x (@foo) { } # ok 14 - MATCH: foreach $x (@foo) { } # ok 15 - MATCH: for my $x (@foo) { } # ok 16 - MATCH: foreach my $x (@foo) { } # ok 17 - MATCH: for state $x (@foo) { } # ok 18 - MATCH: foreach state $x (@foo) { } # ok 19 - MATCH: for qw{foo} { } # ok 20 - MATCH: foreach qw{foo} { } # ok 21 - MATCH: for $x qw{foo} { } # ok 22 - MATCH: foreach $x qw{foo} { } # ok 23 - MATCH: for my $x qw{foo} { } # ok 24 - MATCH: foreach my $x qw{foo} { } # ok 25 - MATCH: for state $x qw{foo} { } # ok 26 - MATCH: foreach state $x qw{foo} { } # ok 27 - FAIL: LABEL: while (1) { } # ok 28 - FAIL: LABEL: until (1) { } # ok 29 - FAIL: LABEL: for (@foo) { } # ok 30 - FAIL: LABEL: foreach (@foo) { } # ok 31 - FAIL: LABEL: for $x (@foo) { } # ok 32 - FAIL: LABEL: foreach $x (@foo) { } # ok 33 - FAIL: LABEL: for my $x (@foo) { } # ok 34 - FAIL: LABEL: foreach my $x (@foo) { } # ok 35 - FAIL: LABEL: for state $x (@foo) { } # ok 36 - FAIL: LABEL: foreach state $x (@foo) { } # ok 37 - FAIL: LABEL: for qw{foo} { } # ok 38 - FAIL: LABEL: foreach qw{foo} { } # ok 39 - FAIL: LABEL: for $x qw{foo} { } # ok 40 - FAIL: LABEL: foreach $x qw{foo} { } # ok 41 - FAIL: LABEL: for my $x qw{foo} { } # ok 42 - FAIL: LABEL: foreach my $x qw{foo} { } # ok 43 - FAIL: LABEL: for state $x qw{foo} { } # ok 44 - FAIL: LABEL: foreach state $x qw{foo} { } # ok 45 - FAIL: LABEL: for ( ; ; ) { } # ok 46 - FAIL: LABEL: foreach ( ; ; ) { } # ok 47 - FAIL: LABEL: for ($x = 0 ; $x < 1; $x++) { } # ok 48 - FAIL: LABEL: foreach ($x = 0 ; $x < 1; $x++) { } # ok 49 - FAIL: LABEL: for (my $x = 0 ; $x < 1; $x++) { } # ok 50 - FAIL: LABEL: foreach (my $x = 0 ; $x < 1; $x++) { } # 1..50 ok t/decomment.t .................... 1..1 ok 1 - Decommented correctly ok t/decomment_heredoc_large.t ...... 1..1 ok 1 ok t/disapproval.t .................. skipped: Acme::LookOfDisapproval not installed t/document_self.t ................ 1..1 ok 1 - Matched own document ok t/erudil.t ....................... 1..1 ok 1 - matched Erudil's camelcode ok t/eyedrops.t ..................... 1..1 ok 1 - matched Acme::Eyedrops Hello, World! ok t/for_ref_iterator.t ............. ok 1 - for_def_iterator ok 2 - for_def_iterator_curly ok 3 - for_my_iterator ok 4 - for_my_iterator_curly ok 5 - for_my_postalias ok 6 - for_my_postalias_array ok 7 - for_my_postalias_hash ok 8 - for_my_prealias ok 9 - for_my_prealias_array ok 10 - for_my_prealias_hash ok 11 - for_no_iterator ok 12 - for_our_iterator ok 13 - for_our_iterator_curly ok 14 - for_our_iterator_weird ok 15 - for_our_iterator_weird_curly ok 16 - for_our_postalias ok 17 - for_our_postalias_array ok 18 - for_our_postalias_hash ok 19 - for_our_prealias ok 20 - for_our_prealias_array ok 21 - for_our_prealias_hash ok 22 - for_state_iterator ok 23 - for_state_postalias ok 24 - for_state_postalias_array ok 25 - for_state_postalias_hash ok 26 - for_state_prealias ok 27 - for_state_prealias_array ok 28 - for_state_prealias_hash ok 29 - for_no_list ok 30 - for_local_iterator 1..30 ok t/format.t ....................... 1..2 ok 1 - Matched format ok 2 - Matched format ok t/heredoc.t ...................... ok 1 - Matched heredoc'd block 1 ok 2 - Matched heredoc'd block 2 ok 3 - Matched heredoc'd block 3 ok 4 - Matched heredoc'd block 4 ok 5 - Matched heredoc'd block 5 ok 6 - Matched heredoc'd block 6 ok 7 - Matched heredoc'd block 7 ok 8 - Matched heredoc'd block 8 ok 9 - Matched heredoc'd block 9 ok 10 - Matched heredoc'd block 10 ok 11 - Matched heredoc'd block 11 ok 12 - Matched heredoc'd block 12 ok 13 - Matched heredoc'd block 13 ok 14 - Matched heredoc'd block 14 ok 15 - Matched heredoc'd block 15 ok 16 - Matched heredoc'd block 16 ok 17 - Matched heredoc'd block 17 ok 18 - Matched heredoc'd block 18 ok 19 - Matched heredoc'd block 19 ok 20 - Matched heredoc'd block 20 ok 21 - Matched heredoc'd block 21 ok 22 - Matched heredoc'd block 22 ok 23 - Matched heredoc'd block 23 ok 24 - Matched heredoc'd block 24 ok 25 - Matched heredoc'd block 25 ok 26 - Matched heredoc'd block 26 ok 27 - Matched heredoc'd block 27 ok 28 - Matched heredoc'd block 28 ok 29 - Matched heredoc'd block 29 ok 30 - Matched heredoc'd block 30 ok 31 - Matched heredoc'd block 31 ok 32 - Matched heredoc'd block 32 ok 33 - Matched heredoc'd block 33 ok 34 - Matched heredoc'd block 34 1..34 ok t/heredoc_and_format.t ........... 1..2 ok 1 - Matched document ok 2 - Matched pieces ok t/heredoc_and_quotelike.t ........ 1..2 ok 1 - Matched document ok 2 - Matched pieces ok t/heredoc_large.t ................ ok 1 - Matched heredoc'd block 1 ok 2 - Matched heredoc'd block 2 ok 3 - Matched heredoc'd block 3 ok 4 - Matched heredoc'd block 4 ok 5 - Matched heredoc'd block 5 ok 6 - Matched heredoc'd block 6 ok 7 - Matched heredoc'd block 7 ok 8 - Matched heredoc'd block 8 ok 9 - Matched heredoc'd block 9 ok 10 - Matched heredoc'd block 10 ok 11 - Matched heredoc'd block 11 ok 12 - Matched heredoc'd block 12 ok 13 - Matched heredoc'd block 13 ok 14 - Matched heredoc'd block 14 ok 15 - Matched heredoc'd block 15 ok 16 - Matched heredoc'd block 16 ok 17 - Matched heredoc'd block 17 ok 18 - Matched heredoc'd block 18 ok 19 - Matched heredoc'd block 19 ok 20 - Matched heredoc'd block 20 ok 21 - Matched heredoc'd block 21 ok 22 - Matched heredoc'd block 22 ok 23 - Matched heredoc'd block 23 ok 24 - Matched heredoc'd block 24 ok 25 - Matched heredoc'd block 25 ok 26 - Matched heredoc'd block 26 ok 27 - Matched heredoc'd block 27 ok 28 - Matched heredoc'd block 28 ok 29 - Matched heredoc'd block 29 ok 30 - Matched heredoc'd block 30 ok 31 - Matched heredoc'd block 31 ok 32 - Matched heredoc'd block 32 ok 33 - Matched heredoc'd block 33 ok 34 - Matched heredoc'd block 34 ok 35 - Matched heredoc'd block 35 1..35 ok t/heredoc_null_then_shift.t ...... 1..2 ok 1 - Matched ok 2 - Matched correctly ok t/heredoc_same_terminator.t ...... 1..4 ok 1 - AA ok 2 - AA again ok 3 - AB ok 4 - AA yet again ok t/keywords.t ..................... 1..2 ok 1 - Matched Dios code ok 2 - Matched Object::Result code ok t/merijn_is_evil.t ............... 1..1 ok 1 ok t/misc.t ......................... ok 1 - (Foo(')')); # ok 2 - %x = ( try => "this"); # ok 3 - %x = (); # ok 4 - %x = ( $try->{this}, "too"); # ok 5 - %'x = ( $try->{this}, "too"); # ok 6 - %'x'y = ( $try->{this}, "too"); # ok 7 - %::x::y = ( $try->{this}, "too"); # ok 8 - %x = do { $try > 10 }; # ok 9 - label: %x = (); # ok 10 - \# leading "space" # label: %x = (); # ok 11 - label: \# in-between "space" # %x = (); # ok 12 - \# leading "space" # label: # in-between "space" # %x = (); # ok 13 - split /\s+/,; # ok 14 - grep {exists $group_of{$_} }; # ok 15 - { $a = /\}/; }; # ok 16 - { $data[4] =~ /['"]/; }; # ok 17 - { sub { $_[0] /= $_[1] } }; \# / here # ok 18 - { 1; }; # ok 19 - { $a = 1; }; # ok 20 - { $a = $b; \# what's this doing here? # };' # ok 21 - { $a = $b; # $a =~ /$b/; # @a = map /\s/ @b }; # ok 22 - { $a = $b; \# what's this doing here? };' # ok 23 - { $a = $b; \# what's this doing here? ;' # 1..23 ok t/misc_docs.t .................... ok 1 - # my $x; # # =pod # # Trailing POD # # =cut # ok 2 - # my $x; # # =pod # # Trailing POD terminated by eof # ok 3 - # =pod # # POD #1 # # =cut # # # Comments # # =pod # # POD #2 # # =cut # # my $x; # 1..3 ok t/perl_pod.t ..................... ok 1 - # =pod # # Regular POD # # =cut # ok 2 - # =pod # # POD terminated by eof # 1..2 ok t/perl_v5.28.t ................... 1..4 ok 1 - Can now delete via k/v slices ok 2 - Can initialize array state variables ok 3 - Can initialize hash state variables ok 4 - Named equivalents for various (?X...) regex constructs ok t/perl_v5.30.t ................... 1..3 ok 1 - Higher upper limit on counted repetions in regexes ok 2 - Can specify unicode properties in a regex via a nested regex ok 3 - Can specify variable-length lookbehinds in regexes ok t/perl_v5.32.t ................... 1..1 ok 1 - New binary infix isa operator ok t/perl_v5.34.t ................... 1..3 ok 1 - (Precheck that "vampire for" is valid) ok 2 - Octal constants ok 3 - Try/catch blocks ok t/perl_v5.36.t ................... 1..6 ok 1 - (Precheck that "vampire for" is valid) ok 2 - Try blocks with finally ok 3 - Defer blocks ok 4 - Multi-iterator for loops ok 5 - Unicode double-angle bracket delimiters on quotelikes ok 6 - Other Unicode bracket delimiters on quotelikes ok t/perl_v5.38.t ................... ok 1 - Or-assign in sub signatures ok 2 - Or-assign in anon sub signatures ok 3 - Doh-assign in sub signatures ok 4 - Doh-assign in anon sub signatures ok 5 - Optimistic eval in regexes ok 6 - Class declarations ok 7 - Class declarations with version number ok 8 - Class declaration with attribute ok 9 - Class declaration with attribute with minimal version ok 10 - Class blocks ok 11 - Class block with attribute ok 12 - Class block with version numbers ok 13 - Field declarations ok 14 - Field attribute ok 15 - Field attribute with rename ok 16 - Field default initializer ok 17 - Field default doh initializer ok 18 - Field default or initializer ok 19 - Field with all-of-the-above ok 20 - Array fields ok 21 - Array field with initializer ok 22 - Hash field ok 23 - Hash field with initializer ok 24 - Methods ok 25 - Method with signature ok 26 - Anonymous method ok 27 - Anonymous method with signature ok 28 - ADJUST blocks ok 29 - Class with fields, methods, and ADJUST blocks 1..29 ok t/pod.t .......................... skipped: Test::Pod 1.14 required for testing POD t/postfix_deref.t ................ 1..38 ok 1 - Valid: $sref->$* ok 2 - Valid: $aref->$\#* ok 3 - Valid: $aref->@* ok 4 - Valid: $aref->@[1,2,3] ok 5 - Valid: $aref->%[1..3] ok 6 - Valid: $href->%* ok 7 - Valid: $href->%{'a','b'} ok 8 - Valid: $href->@{'a','b'} ok 9 - Valid: $cref->() ok 10 - Valid: $cref->&* ok 11 - Valid: $rref->$*->$* ok 12 - Valid: $rref->$*->@* ok 13 - Valid: $gref->** ok 14 - Valid: $gref->**->{IO} ok 15 - Valid: $gref->**->**->{IO} ok 16 - Valid: $gref->*{IO} ok 17 - Valid: $obj->method ok 18 - Valid: $obj->method() ok 19 - Valid: $obj->$method ok 20 - Valid: $obj->$method() ok 21 - Valid: $ref->{a}[1]('arg')[2]{z} ok 22 - Valid: $ref->method->[1]('arg')('arg2')->$method()->[2]{z}->**->$*->&*->$\#* ok 23 - Valid: $aref->@*->%[1..3] ok 24 - Valid: $aref->@*->%{'k1', 'k2'} ok 25 - Valid: $aref->@*->method() ok 26 - Valid: $aref->@*->$* ok 27 - Valid: $aref->@*->** ok 28 - Valid: $href->%*->@[1..3] ok 29 - Valid: $href->%*->@{'k1', 'k2'} ok 30 - Valid: $href->%*->method() ok 31 - Valid: $href->%*->$* ok 32 - Valid: $href->%*->** ok 33 - Invalid: $aref->@*->[1] ok 34 - Invalid: $aref->@*->@[1..3] ok 35 - Invalid: $aref->@*->@{'k1', 'k2'} ok 36 - Invalid: $href->%*->{k} ok 37 - Invalid: $href->%*->%[1..3] ok 38 - Invalid: $href->%*->%{'k1', 'k2'} ok t/postfix_deref_qq.t ............. 1..82 ok 1 - Valid: qq{ $sref->$* } ok 2 - and postderef matched appropriately ok 3 - Valid: qq{ $aref->$\#* } ok 4 - and postderef matched appropriately ok 5 - Valid: qq{ $aref->@* } ok 6 - and postderef matched appropriately ok 7 - Valid: qq{ $aref->@[1,2,3] } ok 8 - and postderef matched appropriately ok 9 - Valid: qq{ $href->@{'a','b'} } ok 10 - and postderef matched appropriately ok 11 - Valid: qq{ $rref->$* } ok 12 - and postderef matched appropriately ok 13 - Valid: qq{ $href->{a}[1][2]{z} } ok 14 - and postderef matched appropriately ok 15 - Invalid: qq{ $aref->%[1..3] } ok 16 - and postderef correctly failed to match ok 17 - Invalid: qq{ $href->%* } ok 18 - and postderef correctly failed to match ok 19 - Invalid: qq{ $href->%{'a','b'} } ok 20 - and postderef correctly failed to match ok 21 - Invalid: qq{ $cref->() } ok 22 - and postderef correctly failed to match ok 23 - Invalid: qq{ $cref->&* } ok 24 - and postderef correctly failed to match ok 25 - Invalid: qq{ $rref->$*->$* } ok 26 - and postderef correctly failed to match ok 27 - Invalid: qq{ $rref->$*->@* } ok 28 - and postderef correctly failed to match ok 29 - Invalid: qq{ $gref->** } ok 30 - and postderef correctly failed to match ok 31 - Invalid: qq{ $gref->**->{IO} } ok 32 - and postderef correctly failed to match ok 33 - Invalid: qq{ $gref->**->**->{IO} } ok 34 - and postderef correctly failed to match ok 35 - Invalid: qq{ $gref->*{IO} } ok 36 - and postderef correctly failed to match ok 37 - Invalid: qq{ $obj->method } ok 38 - and postderef correctly failed to match ok 39 - Invalid: qq{ $obj->method() } ok 40 - and postderef correctly failed to match ok 41 - Invalid: qq{ $obj->$method } ok 42 - and postderef correctly failed to match ok 43 - Invalid: qq{ $obj->$method() } ok 44 - and postderef correctly failed to match ok 45 - Invalid: qq{ $href->{a}[1]('arg')[2]{z} } ok 46 - and postderef correctly failed to match ok 47 - Invalid: qq{ $href->method->[1]('arg')('arg2')->$method()->[2]{z}->**->$*->&*->$\#* } ok 48 - and postderef correctly failed to match ok 49 - Invalid: qq{ $aref->@*->[0] } ok 50 - and postderef correctly failed to match ok 51 - Invalid: qq{ $aref->@*->%[1..3] } ok 52 - and postderef correctly failed to match ok 53 - Invalid: qq{ $aref->@*->%{'k1', 'k2'} } ok 54 - and postderef correctly failed to match ok 55 - Invalid: qq{ $aref->@*->method() } ok 56 - and postderef correctly failed to match ok 57 - Invalid: qq{ $aref->@*->$* } ok 58 - and postderef correctly failed to match ok 59 - Invalid: qq{ $aref->@*->** } ok 60 - and postderef correctly failed to match ok 61 - Invalid: qq{ $href->%*->@[1..3] } ok 62 - and postderef correctly failed to match ok 63 - Invalid: qq{ $href->%*->@{'k1', 'k2'} } ok 64 - and postderef correctly failed to match ok 65 - Invalid: qq{ $href->%*->method() } ok 66 - and postderef correctly failed to match ok 67 - Invalid: qq{ $href->%*->$* } ok 68 - and postderef correctly failed to match ok 69 - Invalid: qq{ $href->%*->** } ok 70 - and postderef correctly failed to match ok 71 - Invalid: qq{ $aref->@*->[1] } ok 72 - and postderef correctly failed to match ok 73 - Invalid: qq{ $aref->@*->@[1..3] } ok 74 - and postderef correctly failed to match ok 75 - Invalid: qq{ $aref->@*->@{'k1', 'k2'} } ok 76 - and postderef correctly failed to match ok 77 - Invalid: qq{ $href->%*->{k} } ok 78 - and postderef correctly failed to match ok 79 - Invalid: qq{ $href->%*->%[1..3] } ok 80 - and postderef correctly failed to match ok 81 - Invalid: qq{ $href->%*->%{'k1', 'k2'} } ok 82 - and postderef correctly failed to match ok t/ppi_lexer.t .................... ok 1 - use constant { One => 1 }; # ok 2 - use constant 1 { One => 1 }; # ok 3 - $foo->{bar}; # ok 4 - $foo[1]{bar}; # ok 5 - $foo{bar}; # ok 6 - sub {1}; # ok 7 - grep { $_ } 0 .. 2; # ok 8 - map { $_ => 1 } 0 .. 2; # ok 9 - sort { $b <=> $a } 0 .. 2; # ok 10 - do {foo}; # ok 11 - $foo = { One => 1 }; # ok 12 - $foo ||= { One => 1 }; # ok 13 - 1, { One => 1 }; # ok 14 - One => { Two => 2 }; # ok 15 - {foo, bar}; # ok 16 - {foo => bar}; # ok 17 - {}; # ok 18 - +{foo, bar}; # ok 19 - @foo{'bar', 'baz'}; # ok 20 - @{$foo}{'bar', 'baz'}; # ok 21 - ${$foo}{bar}; # ok 22 - return { foo => 'bar' }; # ok 23 - bless { foo => 'bar' }; # ok 24 - $foo &&= { One => 1 }; # ok 25 - $foo //= { One => 1 }; # ok 26 - $foo //= { 'a' => 1, 'b' => 2 }; # ok 27 - 0 || { One => 1 }; # ok 28 - 1 && { One => 1 }; # ok 29 - undef // { One => 1 }; # ok 30 - $x ? {a=>1} : 1; # ok 31 - $x ? 1 : {a=>1}; # ok 32 - $x ? {a=>1} : {b=>1}; # 1..32 ok t/ppi_node.t ..................... ok 1 - use strict; # # sub one { 1 } # sub two { 2 } # sub three { 3 } # # print one; # print "\n"; # print three; # print "\n"; # # exit; # 1..1 ok t/ppi_statement.t ................ ok 1 - package Foo; # use strict; # ; # while (1) { last; } # BEGIN { } # sub foo { } # state $x; # $x = 5; # 1..1 ok t/ppi_statement_compound.t ....... ok 1 - while (1) { } # until (1) { } # LABEL: while (1) { } # LABEL: until (1) { } # # if (1) { } # unless (1) { } # # for (@foo) { } # foreach (@foo) { } # for $x (@foo) { } # foreach $x (@foo) { } # for my $x (@foo) { } # foreach my $x (@foo) { } # for state $x (@foo) { } # foreach state $x (@foo) { } # LABEL: for (@foo) { } # LABEL: foreach (@foo) { } # LABEL: for $x (@foo) { } # LABEL: foreach $x (@foo) { } # LABEL: for my $x (@foo) { } # LABEL: foreach my $x (@foo) { } # LABEL: for state $x (@foo) { } # LABEL: foreach state $x (@foo) { } # # for qw{foo} { } # foreach qw{foo} { } # for $x qw{foo} { } # foreach $x qw{foo} { } # for my $x qw{foo} { } # foreach my $x qw{foo} { } # for state $x qw{foo} { } # foreach state $x qw{foo} { } # LABEL: for qw{foo} { } # LABEL: foreach qw{foo} { } # LABEL: for $x qw{foo} { } # LABEL: foreach $x qw{foo} { } # LABEL: for my $x qw{foo} { } # LABEL: foreach my $x qw{foo} { } # LABEL: for state $x qw{foo} { } # LABEL: foreach state $x qw{foo} { } # # for ( ; ; ) { } # foreach ( ; ; ) { } # for ($x = 0 ; $x < 1; $x++) { } # foreach ($x = 0 ; $x < 1; $x++) { } # for (my $x = 0 ; $x < 1; $x++) { } # foreach (my $x = 0 ; $x < 1; $x++) { } # LABEL: for ( ; ; ) { } # LABEL: foreach ( ; ; ) { } # LABEL: for ($x = 0 ; $x < 1; $x++) { } # LABEL: foreach ($x = 0 ; $x < 1; $x++) { } # LABEL: for (my $x = 0 ; $x < 1; $x++) { } # LABEL: foreach (my $x = 0 ; $x < 1; $x++) { } # 1..1 ok t/ppi_statement_include.t ........ ok 1 - require 5.6; # require Module; # require 'Module.pm'; # use 5.6; # use Module; # use Module 1.00; # no Module; # 1..1 ok t/ppi_statement_package.t ........ ok 1 - { package => "", }; # +{ package => "", }; # { 'package' => "", }; # +{ 'package' => "", }; # { 'package' , "", }; # +{ 'package' , "", }; # package Foo; # SCOPE: { # package # comment # Bar::Baz; # 1; # } # package Other v1.23; # package Again 0.09; # 1; # 1..1 ok t/ppi_statement_sub.t ............ ok 1 - DESTROY {} # sub BEGIN {} # sub foo {} # sub foo{} # # sub FOO {} # # sub _foo {} # # sub _0foo {} # # sub _foo0 {} # # sub ___ {} # # sub bar() {} # # sub baz : method{} # # sub baz : method lvalue{} # # sub baz : method:lvalue{} # # sub baz (*) : method : lvalue{} # # sub x64 {} # # sub AUTOLOAD; # # sub AUTOLOAD {} # # sub DESTROY; # # sub DESTROY {} # # AUTOLOAD; # # AUTOLOAD {} # # DESTROY; # # sub CHECK {} # # sub UNITCHECK {} # # sub INIT {} # # sub END {} # # sub AUTOLOAD {} # # sub CLONE_SKIP {} # # sub __SUB__ {} # # sub _FOO {} # # sub FOO9 {} # # sub FO9O {} # # sub FOo {} # 1..1 ok t/ppi_statement_variable.t ....... ok 1 - package Bar; # my $foo = 1; # my ( $foo, $bar) = (1, 2); # our $foo = 1; # local $foo; # local $foo = 1; # LABEL: my $foo = 1; # # # As well as those basics, lets also try some harder ones # local($foo = $bar->$bar(), $bar); # 1..1 ok t/ppi_token_dashedword.t ......... ok 1 - -foo, -foo, # -Foo::Bar, -Foo::Bar, # -Foo'Bar, -Foo::Bar, # 1..1 ok t/ppi_token_magic.t .............. ok 1 - $[; \# Magic $[ # ok 2 - $$; \# Magic $$ # ok 3 - %-; \# Magic %- # ok 4 - $\#-; \# Magic $\#- # ok 5 - $$foo; \# Symbol $foo Dereference of $foo # ok 6 - $^W; \# Magic $^W # ok 7 - ${^WIDE_SYSTEM_CALLS}; \# Magic ${^WIDE_SYSTEM_CALLS} # ok 8 - ${^MATCH}; \# Magic ${^MATCH} # ok 9 - @{^_Bar}; \# Magic @{^_Bar} # ok 10 - ${^_Bar}[0]; \# Magic @{^_Bar} # ok 11 - %{^_Baz}; \# Magic %{^_Baz} # ok 12 - ${^_Baz}{burfle}; \# Magic %{^_Baz} # ok 13 - $${^MATCH}; \# Magic ${^MATCH} Dereference of ${^MATCH} # ok 14 - \\${^MATCH}; \# Magic ${^MATCH} # ok 15 - $0; \# Magic $0 -- program being executed # ok 16 - $0x2; \# Magic $0 -- program being executed # ok 17 - $10; \# Magic $10 -- capture variable # ok 18 - $1100; \# Magic $1100 -- capture variable # 1..18 ok t/ppi_token_operator.t ........... ok 1 - bareword x 3; # ok 2 - bareword x3; # ok 3 - $a->package x3; # ok 4 - sort { $a->package cmp $b->package } (); # ok 5 - c->d x 3; # ok 6 - 1 x 3; # ok 7 - "y" x 3; # ok 8 - qq{y} x 3; # ok 9 - "y"x 3; # ok 10 - $a x 3; # ok 11 - $a x3; # ok 12 - $a++x3; # ok 13 - "y"x 3; # ok 14 - 'y'x 3; # ok 15 - (5)x 3; # ok 16 - 1x0x1; # ok 17 - 1 x$y; # ok 18 - $z x=3; # ok 19 - $z x=$y; # ok 20 - 1;x =>1; # ok 21 - 1;x=>1; # ok 22 - $hash{x}=1; # ok 23 - x =>1; # ok 24 - x=>1; # ok 25 - xx=>1; # ok 26 - 1=>x; # ok 27 - 1=>xor 2; # ok 28 - (1) x 6; # ok 29 - (1) x6; # ok 30 - (1)x6; # ok 31 - foo()x6; # ok 32 - qw(1)x6; # ok 33 - qw<1>x6; # ok 34 - [1]x6; # ok 35 - 1x$bar; # ok 36 - 1x@bar; # ok 37 - sub xyzzy : _5x5 {1;}; # ok 38 - LABEL: x64; # ok 39 - 1 => 2; # ok 40 - foo => 2; # ok 41 - -foo => 2; # 1..41 ok t/ppi_token_prototype.t .......... ok 1 - sub (\ [ $ ]){;}; # sub (\\\ [ $ ]){;} # ok 2 - sub foo(){;} # sub foo( ){;} # # sub foo () {;} # # sub foo(+@){;} # # sub foo (+@) {;} # # sub foo(\[$;$_@]){;} # # sub foo(\ [ $ ]){;} # # sub foo(\\\ [ $ ]){;} # # sub foo($ _ %){;} # # sub foo (){;} # # sub foo ( ){;} # # sub foo () {;} # # sub foo (+@){;} # # sub foo (+@) {;} # # sub foo (\[$;$_@]){;} # # sub foo (\ [ $ ]){;} # # sub foo (\\\ [ $ ]){;} # # sub foo ($ _ %){;} # ok 3 - sub(){;} # ok 4 - sub( ){;} # ok 5 - sub () {;} # ok 6 - sub(+@){;} # ok 7 - sub (+@) {;} # ok 8 - sub(\[$;$_@]){;} # ok 9 - sub(\ [ $ ]){;} # ok 10 - sub(\\\ [ $ ]){;} # ok 11 - sub($ _ %){;} # ok 12 - sub (){;} # ok 13 - sub ( ){;} # ok 14 - sub () {;} # ok 15 - sub (+@){;} # ok 16 - sub (+@) {;} # ok 17 - sub (\[$;$_@]){;} # ok 18 - sub ($ _ %){;} # ok 19 - sub DESTROY(){;} # # sub DESTROY( ){;} # # sub DESTROY () {;} # # sub DESTROY(+@){;} # # sub DESTROY (+@) {;} # # sub DESTROY(\[$;$_@]){;} # # sub DESTROY(\ [ $ ]){;} # # sub DESTROY(\\\ [ $ ]){;} # # sub DESTROY($ _ %){;} # # sub DESTROY (){;} # # sub DESTROY ( ){;} # # sub DESTROY () {;} # # sub DESTROY (+@){;} # # sub DESTROY (+@) {;} # # sub DESTROY (\[$;$_@]){;} # # sub DESTROY (\ [ $ ]){;} # # sub DESTROY (\\\ [ $ ]){;} # # sub DESTROY ($ _ %){;} # # sub AUTOLOAD(){;} # # sub AUTOLOAD( ){;} # # sub AUTOLOAD () {;} # # sub AUTOLOAD(+@){;} # # sub AUTOLOAD (+@) {;} # # sub AUTOLOAD(\[$;$_@]){;} # # sub AUTOLOAD(\ [ $ ]){;} # # sub AUTOLOAD(\\\ [ $ ]){;} # # sub AUTOLOAD($ _ %){;} # # sub AUTOLOAD (){;} # # sub AUTOLOAD ( ){;} # # sub AUTOLOAD () {;} # # sub AUTOLOAD (+@){;} # # sub AUTOLOAD (+@) {;} # # sub AUTOLOAD (\[$;$_@]){;} # # sub AUTOLOAD (\ [ $ ]){;} # # sub AUTOLOAD (\\\ [ $ ]){;} # # sub AUTOLOAD ($ _ %){;} # 1..19 ok t/ppi_token_quote_double.t ....... ok 1 - "no interpolations"; # "no \@interpolations"; # "has $interpolation"; # "has @interpolation"; # "has \\@interpolation"; # "no special characters"; # "has \"double\" quotes"; # "has 'single' quotes"; # "has $interpolation"; # "has @interpolation"; # ""; # 1..1 ok t/ppi_token_quote_interpolate.t .. ok 1 - print qq{foo}, qq!bar!, qq ; # print q{foo}, q!bar!, q ; # 1..1 ok t/ppi_token_quote_single.t ....... ok 1 - '', # 'f', # "f\'b", # "f\\nb", # "f\\b", # "f\\\\b", # "f\\'", # 1..1 ok t/ppi_token_word.t ............... ok 1 - no strict; # ok 2 - indirect $foo; # ok 3 - indirect_class_with_colon Foo::; # ok 4 - $bar->method_with_parentheses; # ok 5 - print SomeClass->method_without_parentheses + 1; # ok 6 - sub_call(); # ok 7 - $baz->chained_from->chained_to; # ok 8 - a_first_thing a_middle_thing a_last_thing; # ok 9 - (first_list_element, second_list_element, third_list_element); # ok 10 - first_comma_separated_word, second_comma_separated_word, third_comma_separated_word; # ok 11 - single_bareword_statement; # ok 12 - { bareword_no_semicolon_end_of_block } # $buz{hash_key}; # ok 13 - fat_comma_left_side => $thingy; # ok 14 - $foo and'bar'; # ok 15 - $foo cmp'bar'; # ok 16 - $foo eq'bar'; # ok 17 - $foo ge'bar'; # ok 18 - $foo gt'bar'; # ok 19 - $foo le'bar'; # ok 20 - $foo lt'bar'; # ok 21 - $foo ne'bar'; # ok 22 - not'bar'; # ok 23 - $foo or'bar'; # ok 24 - $foo x'bar'; # ok 25 - $foo xor'bar'; # ok 26 - q'foo'; # ok 27 - qq'foo'; # ok 28 - qr'foo'; # ok 29 - qw'foo'; # ok 30 - qx'foo'; # ok 31 - m'foo'; # ok 32 - s'foo'bar'; # ok 33 - tr'fo'ba'; # ok 34 - y'fo'ba'; # ok 35 - abs'3'; # ok 36 - accept'1234',2345; # ok 37 - alarm'5'; # ok 38 - atan2'5'; # ok 39 - bind'5',""; # ok 40 - binmode'5'; # ok 41 - bless'foo', 'bar'; # ok 42 - break when 1; # ok 43 - caller'3'; # ok 44 - chdir'foo'; # ok 45 - chmod'0777', 'foo'; # ok 46 - chomp'a'; # ok 47 - chop'a'; # ok 48 - chown'a'; # ok 49 - chr'32'; # ok 50 - chroot'a'; # ok 51 - close'1'; # ok 52 - closedir'1'; # ok 53 - connect'1234',$foo; # ok 54 - continue; # ok 55 - cos'3'; # ok 56 - crypt'foo', 'bar'; # ok 57 - dbmclose'foo'; # ok 58 - dbmopen'foo','bar'; # ok 59 - default {} # defined'foo'; # ok 60 - delete'foo'; # ok 61 - die'foo'; # ok 62 - do'foo'; # ok 63 - dump'foo'; # ok 64 - each'foo'; # ok 65 - else {}; # ok 66 - elsif {}; # ok 67 - endgrent; # ok 68 - endhostent; # ok 69 - endnetent; # ok 70 - endprotoent; # ok 71 - endpwent; # ok 72 - endservent; # ok 73 - eof'foo'; # ok 74 - eval'foo'; # ok 75 - evalbytes'foo'; # ok 76 - exec'foo'; # ok 77 - exists'foo'; # ok 78 - exit'foo'; # ok 79 - exp'foo'; # ok 80 - fc'foo'; # ok 81 - fcntl'1'; # ok 82 - fileno'1'; # ok 83 - flock'1', LOCK_EX; # ok 84 - fork; # ok 85 - format # = # . # formline'@',1; # ok 86 - getc'1'; # ok 87 - getgrent; # ok 88 - getgrgid'1'; # ok 89 - getgrnam'foo'; # ok 90 - gethostbyaddr'1', AF_INET; # ok 91 - gethostbyname'foo'; # ok 92 - gethostent; # ok 93 - getlogin; # ok 94 - getnetbyaddr'1', AF_INET; # ok 95 - getnetbyname'foo'; # ok 96 - getnetent; # ok 97 - getpeername'foo'; # ok 98 - getpgrp'1'; # ok 99 - getppid; # ok 100 - getpriority'1',2; # ok 101 - getprotobyname'tcp'; # ok 102 - getprotobynumber'6'; # ok 103 - getprotoent; # ok 104 - getpwent; # ok 105 - getpwnam'foo'; # ok 106 - getpwuid'1'; # ok 107 - getservbyname'foo', 'bar'; # ok 108 - getservbyport'23', 'tcp'; # ok 109 - getservent; # ok 110 - getsockname'foo'; # ok 111 - getsockopt'foo', 'bar', TCP_NODELAY; # ok 112 - glob'foo'; # ok 113 - gmtime'1'; # ok 114 - goto'label'; # ok 115 - hex'1'; # ok 116 - index'1','foo'; # ok 117 - int'1'; # ok 118 - ioctl'1',1; # ok 119 - join'a',@foo; # ok 120 - keys'foo'; # ok 121 - kill'KILL'; # ok 122 - last'label'; # ok 123 - lc'foo'; # ok 124 - lcfirst'foo'; # ok 125 - length'foo'; # ok 126 - link'foo','bar'; # ok 127 - listen'1234',10; # ok 128 - local'foo'; # ok 129 - localtime'1'; # ok 130 - lock'foo'; # ok 131 - log'foo'; # ok 132 - lstat'foo'; # ok 133 - mkdir'foo'; # ok 134 - msgctl'1','foo',1; # ok 135 - msgget'1',1; # ok 136 - msgrcv'1',$foo,1,1,1; # ok 137 - msgsnd'1',$foo,1; # ok 138 - my $foo; # ok 139 - next'label'; # ok 140 - oct'foo'; # ok 141 - open'foo'; # ok 142 - opendir'foo'; # ok 143 - ord'foo'; # ok 144 - our $foo; # ok 145 - pack'H*',$data; # ok 146 - pipe'in','out'; # ok 147 - pop'foo'; # ok 148 - pos'foo'; # ok 149 - print'foo'; # ok 150 - printf'foo','bar'; # ok 151 - prototype'foo'; # ok 152 - push'foo','bar'; # ok 153 - quotemeta'foo'; # ok 154 - rand'1'; # ok 155 - read'1',$foo,100; # ok 156 - readdir'1'; # ok 157 - readline'1'; # ok 158 - readlink'1'; # ok 159 - readpipe'1'; # ok 160 - recv'1',$foo,100,1; # ok 161 - redo'label'; # ok 162 - ref'foo'; # ok 163 - rename'foo','bar'; # ok 164 - require'foo'; # ok 165 - reset'f'; # ok 166 - return'foo'; # ok 167 - reverse'foo','bar'; # ok 168 - rewinddir'1'; # ok 169 - rindex'1','foo'; # ok 170 - rmdir'foo'; # ok 171 - say'foo'; # ok 172 - scalar'foo','bar'; # ok 173 - seek'1',100,0; # ok 174 - seekdir'1',100; # ok 175 - select'1'; # ok 176 - semctl'1',1,1; # ok 177 - semget'foo',1,1; # ok 178 - semop'foo','bar'; # ok 179 - send'1',$foo'100,1; # ok 180 - setgrent'foo'; # ok 181 - sethostent'1'; # ok 182 - setnetent'1'; # ok 183 - setpgrp'1',2; # ok 184 - setpriority'1',2, 3; # ok 185 - setprotoent'1'; # ok 186 - setpwent'foo'; # ok 187 - setservent'1'; # ok 188 - setsockopt'1',2,'foo',3; # ok 189 - shift'1','2'; # ok 190 - shmctl'1',2,$foo; # ok 191 - shmget'1',2,1; # ok 192 - shmread'1',$foo,0,10; # ok 193 - shmwrite'1',$foo,0,10; # ok 194 - shutdown'1',0; # ok 195 - sin'1'; # ok 196 - sleep'1'; # ok 197 - socket'1',2,3,6; # ok 198 - socketpair'1',2,3,4,6; # ok 199 - splice'1',2; # ok 200 - split'1','foo'; # ok 201 - sprintf'foo','bar'; # ok 202 - sqrt'1'; # ok 203 - srand'1'; # ok 204 - stat'foo'; # ok 205 - state $foo; # ok 206 - study'foo'; # ok 207 - substr'foo',1; # ok 208 - symlink'foo','bar'; # ok 209 - syscall'foo'; # ok 210 - sysopen'foo','bar',1; # ok 211 - sysread'1',$bar,1; # ok 212 - sysseek'1',0,0; # ok 213 - system'foo'; # ok 214 - syswrite'1',$bar,1; # ok 215 - tell'1'; # ok 216 - telldir'1'; # ok 217 - tie'foo',$bar; # ok 218 - tied'foo'; # ok 219 - time; # ok 220 - times; # ok 221 - truncate'foo',1; # ok 222 - uc'foo'; # ok 223 - ucfirst'foo'; # ok 224 - umask'foo'; # ok 225 - undef'foo'; # ok 226 - unlink'foo'; # ok 227 - unpack'H*',$data; # ok 228 - unshift'1'; # ok 229 - untie'foo'; # ok 230 - utime'1','2'; # ok 231 - values'foo'; # ok 232 - vec'1',0.0; # ok 233 - wait; # ok 234 - waitpid'1',0; # ok 235 - wantarray; # ok 236 - warn'foo'; # ok 237 - when('foo') {} # ok 238 - write'foo'; # ok 239 - 1 for'foo'; # ok 240 - 1 foreach'foo'; # ok 241 - 1 if'foo'; # ok 242 - 1 unless'foo'; # ok 243 - 1 until'foo'; # ok 244 - 1 while'foo'; # 1..244 ok t/PPR_ERROR.t .................... 1..15 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok 6 - 2: Error source identified ok 7 - 2: Prefix identified ok 8 - 2: Line identified ok 9 - 2: Line with offset identified ok 10 - 2: Diagnostic identified ok 11 - 3: Error source identified ok 12 - 3: Prefix identified ok 13 - 3: Line identified ok 14 - 3: Line with offset identified ok 15 - 3: Diagnostic identified ok t/PPR_ERROR_multiple.t ........... 1..15 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok 6 - 2: Error source identified ok 7 - 2: Prefix identified ok 8 - 2: Line identified ok 9 - 2: Line with offset identified ok 10 - 2: Diagnostic identified ok 11 - 3: Error source identified ok 12 - 3: Prefix identified ok 13 - 3: Line identified ok 14 - 3: Line with offset identified ok 15 - 3: Diagnostic identified ok t/PPR_ERROR_trailing.t ........... 1..5 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok t/PPR_GRAMMAR_placement.t ........ 1..3 ok 1 - $PPR::GRAMMAR at end ok 2 - $PPR::GRAMMAR at start ok 3 - $PPR::GRAMMAR in middle ok t/PPR_X.t ........................ 1..5 ok 1 - Extended expression matched ok 2 - Extended statement matched ok 3 - Extended statement within document matched ok 4 - Did not match English connectives ok 5 - Matched Latin connectives ok t/qr_combine.t ................... ok 1 - inline DEFINE + interpolated grammar inside of qr// ok 2 - interpolate DEFINE + interpolate grammar inside of qr ok 3 - concatenate regex in string then interpolate inside of qr// 1..3 ok t/quotelike_misc.t ............... ok 1 - MATCH: /\N{ SPACE } \x{ 20AC } \d{ 1,9 }/ # ok 2 - MATCH: m{ x{,9} } # ok 3 - MATCH: m{^$DRIVE_RX[\\/]}o # ok 4 - MATCH: m/[@\#]_ # / # ok 5 - MATCH: m{^(.*)::(.*)$} # ok 6 - MATCH: s(a){b} # ok 7 - MATCH: s (a) # /b/ # ok 8 - MATCH: q(d) # ok 9 - MATCH: qq(e) # ok 10 - MATCH: qx(f) # ok 11 - MATCH: qr(g) # ok 12 - MATCH: qw(h i j) # ok 13 - MATCH: < pairs and escaped \}'s } # ok 25 - MATCH: '' # ok 26 - MATCH: "" # ok 27 - MATCH: "a" # ok 28 - MATCH: 'b' # ok 29 - MATCH: `cc` # ok 30 - MATCH: "this is a nested $var[$x] {" # ok 31 - MATCH: /a/gci # ok 32 - MATCH: m/a/gci # ok 33 - MATCH: q{d} # ok 34 - MATCH: qq{e} # ok 35 - MATCH: qx{f} # ok 36 - MATCH: qr{g} # ok 37 - MATCH: q/slash/ # ok 38 - MATCH: q\# slash \# # ok 39 - MATCH: qr qw qx # ok 40 - MATCH: s/x/y/ # ok 41 - MATCH: s/x/y/cgimsox # ok 42 - MATCH: s{a}{b} # ok 43 - MATCH: s{a} # {b} # ok 44 - MATCH: s/'/\\'/g # ok 45 - MATCH: s;';\\\\t\#\\$d\#; # ok 46 - MATCH: tr/x/y/ # ok 47 - MATCH: y/x/y/ # ok 48 - FAIL: q \# slash \# # ok 49 - FAIL: s-$self->{pap}-$self->{sub}- \# CAN'T HANDLE '-' in '->' # ok 50 - FAIL: q<$self->{pat}> # ok 51 - FAIL: qq<$self->{pat}> # ok 52 - FAIL: qr<$self->{pat}> # ok 53 - FAIL: qx<$self->{pat}> # ok 54 - FAIL: s<$self->{pat}>{$self->{sub}} # 1..54 ok t/quotelike_noninerpolating.t .... 1..8 ok 1 - qr ok 2 - m ok 3 - s ok 4 - qx ok 5 - $@ should match a (?&PerlScalarAccessNoSpace) ok 6 - $_ should match a (?&PerlScalarAccessNoSpace) ok 7 - $etc should match a (?&PerlScalarAccessNoSpace) ok 8 - qq ok t/quotelike_s_e.t ................ ok 1 - MATCH: # s/${\<, "baz"; # ok 3 - MATCH: require 'Module.pm'; # ok 4 - MATCH: require 5.014; # ok 5 - MATCH: require 5.14.0; # ok 6 - MATCH: require 5.014_000; # ok 7 - MATCH: require 5.14.0; # ok 8 - MATCH: require 5.14; # ok 9 - MATCH: require Module; # ok 10 - MATCH: require v5.14.0; # ok 11 - MATCH: use 5.014; # ok 12 - MATCH: use 5.014_000; # ok 13 - MATCH: use 5.14.0; # ok 14 - MATCH: use 5.14; # ok 15 - MATCH: use Float::Version 1.5; # ok 16 - MATCH: use Foo 'bar'; \# One thing. # ok 17 - MATCH: use Foo 5 'bar'; \# One thing. # ok 18 - MATCH: use Foo 5; \# Don't expect anything. # ok 19 - MATCH: use Foo; \# Don't expect anything. # ok 20 - MATCH: use Integer::Version 1; # ok 21 - MATCH: use Module 1.00; # ok 22 - MATCH: use Module; # ok 23 - MATCH: use No::Version::With::Argument 'x'; # ok 24 - MATCH: use No::Version; # ok 25 - MATCH: use Test::More tests => 5 * 9; # ok 26 - MATCH: use Version::With::Argument 1 2; # ok 27 - MATCH: use v5.14.0; # ok 28 - MATCH: no 5.014; # ok 29 - MATCH: no 5.014_000; # ok 30 - MATCH: no 5.14.0; # ok 31 - MATCH: no 5.14; # ok 32 - MATCH: no Float::Version 1.5; # ok 33 - MATCH: no Foo 'bar'; \# One thing. # ok 34 - MATCH: no Foo 5 'bar'; \# One thing. # ok 35 - MATCH: no Foo 5; \# Don't expect anything. # ok 36 - MATCH: no Foo qw< bar >, "baz"; # ok 37 - MATCH: no Foo; \# Don't expect anything. # ok 38 - MATCH: no Integer::Version 1; # ok 39 - MATCH: no Module 1.00; # ok 40 - MATCH: no Module; # ok 41 - MATCH: no No::Version::With::Argument 'x'; # ok 42 - MATCH: no No::Version::With::Arguments 1, 2; # ok 43 - MATCH: no No::Version; # ok 44 - MATCH: no Test::More tests => 5 * 9; # ok 45 - MATCH: no Version::With::Argument 1 2; # ok 46 - MATCH: no v5.14.0; # 1..46 ok t/statement_variable.t ........... ok 1 - MATCH: package Bar; # ok 2 - MATCH: my $foo = 1; # ok 3 - MATCH: my ( $foo, $bar) = (1, 2); # ok 4 - MATCH: our $foo = 1; # ok 5 - MATCH: local $foo; # ok 6 - MATCH: local $foo = 1; # ok 7 - MATCH: LABEL: my $foo = 1; # ok 8 - MATCH: local($foo = $bar->$bar(), $bar); # 1..8 ok t/sub_END.t ...................... 1..3 ok 1 - Matched sub __END__ ok 2 - Matched sub __DATA__ ok 3 - Matched sub __OTHER__ ok t/subdecl.t ...................... 1..9 ok 1 - or_equals ok 2 - doh_equals ok 3 - AUTOLOAD ok 4 - DESTROY ok 5 - &DESTROY(); ok 6 - DESTROY(); ok 7 - protofirst ok 8 - protolast ok 9 - unnamed ok t/substitution_ge.t .............. # Subtest: s<(RE)>< $var{x} // croak() >ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: > ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 1 - s<(RE)>< $var{x} // croak() >ge # # Subtest: s[(RE)][ $var{x} // croak() ]ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 2 - s[(RE)][ $var{x} // croak() ]ge # # Subtest: s{(RE)}{ $var{x} // croak() }ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 3 - s{(RE)}{ $var{x} // croak() }ge # # Subtest: s((RE))( $var{x} // croak() )ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 4 - s((RE))( $var{x} // croak() )ge # # Subtest: s"(RE)" $var{x} // croak() "ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 5 - s"(RE)" $var{x} // croak() "ge # # Subtest: s%(RE)% $var{x} // croak() %ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: % ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Interim-matched extra binary expression: %ge ok 5 - Matched METAREGEX 1..5 ok 6 - s%(RE)% $var{x} // croak() %ge # # Subtest: s'(RE)' $var{x} // croak() 'ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 7 - s'(RE)' $var{x} // croak() 'ge # # Subtest: s+(RE)+ $var{x} // croak() +ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: + ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 8 - s+(RE)+ $var{x} // croak() +ge # # Subtest: s,(RE), $var{x} // croak() ,ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 9 - s,(RE), $var{x} // croak() ,ge # # Subtest: s/(RE)/ $var{x} || croak() /ge ok 1 - Found infix: || ok 2 - Interim-matched extra infix: / ok 3 - Found correct binary expression: $var{x} || croak() ok 4 - Matched METAREGEX 1..4 ok 10 - s/(RE)/ $var{x} || croak() /ge # # Subtest: s@(RE)@ $var{x} // croak() @ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Interim-matched extra binary expression: @ge ok 4 - Matched METAREGEX 1..4 ok 11 - s@(RE)@ $var{x} // croak() @ge # # Subtest: s|(RE)| $var{x} // croak() |ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: | ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 12 - s|(RE)| $var{x} // croak() |ge # 1..12 ok t/token_quote.t .................. ok 1 - MATCH: 'foo' # ok 2 - MATCH: "foo" # ok 3 - MATCH: q{foo} # ok 4 - MATCH: q[foo] # ok 5 - MATCH: q # ok 6 - MATCH: q(foo) # ok 7 - MATCH: q/foo/ # ok 8 - MATCH: q\#foo\# # ok 9 - MATCH: q=foo= # ok 10 - MATCH: q qfooq # ok 11 - MATCH: qq{foo} # ok 12 - MATCH: qq[foo] # ok 13 - MATCH: qq # ok 14 - MATCH: qq(foo) # ok 15 - MATCH: qq/foo/ # ok 16 - MATCH: qq\#foo\# # ok 17 - MATCH: qq=foo= # ok 18 - MATCH: qq qfooq # ok 19 - MATCH: q {foo} # ok 20 - MATCH: q [foo] # ok 21 - MATCH: q # ok 22 - MATCH: q (foo) # ok 23 - MATCH: q /foo/ # ok 24 - MATCH: q =foo= # ok 25 - MATCH: qq {foo} # ok 26 - MATCH: qq [foo] # ok 27 - MATCH: qq # ok 28 - MATCH: qq (foo) # ok 29 - MATCH: qq /foo/ # ok 30 - MATCH: qq =foo= # ok 31 - FAIL: # ok 32 - FAIL: q \#foo\# # ok 33 - FAIL: qq \#foo\# # 1..33 ok t/token_quote_double.t ........... ok 1 - MATCH: "no interpolations" # ok 2 - MATCH: "no \@interpolations" # ok 3 - MATCH: "has $interpolation" # ok 4 - MATCH: "has @interpolation" # ok 5 - MATCH: "has \\@interpolation" # ok 6 - MATCH: "" # ok 7 - MATCH: "no special characters" # ok 8 - MATCH: "has \"double\" quotes" # ok 9 - MATCH: "has 'single' quotes" # ok 10 - MATCH: "has $interpolation" # ok 11 - MATCH: "has @interpolation" # 1..11 ok t/token_quote_single.t ........... ok 1 - MATCH [40]: '' # ok 2 - MATCH [42]: 'f' # ok 3 - MATCH [44]: 'f\'b' # ok 4 - MATCH [46]: 'f\nb' # ok 5 - MATCH [48]: 'f\\b' # ok 6 - MATCH [50]: 'f\\\b' # ok 7 - MATCH [52]: 'f\\\'' # ok 8 - MATCH [54]: q// # ok 9 - MATCH [56]: q/f/ # ok 10 - MATCH [58]: q/f\'b/ # ok 11 - MATCH [60]: q/f\nb/ # ok 12 - MATCH [62]: q/f\\b/ # ok 13 - MATCH [64]: q/f\\\b/ # ok 14 - MATCH [66]: q/f\\'/ # ok 15 - MATCH [68]: q/f\\\// # ok 16 - MATCH [70]: q!! # ok 17 - MATCH [72]: q!f! # ok 18 - MATCH [74]: q!f\'b! # ok 19 - MATCH [76]: q !f\nb! # ok 20 - MATCH [79]: q # !f\\b! # ok 21 - MATCH [84]: q # ! # f\\\b # ! # ok 22 - MATCH [86]: q!f\\'! # ok 23 - MATCH [88]: q!f\\\!! # ok 24 - MATCH [90]: q{} # ok 25 - MATCH [92]: q{f} # ok 26 - MATCH [94]: q {f\'b} # ok 27 - MATCH [100]: q # { # {{{f\nb}}} # ([< # } # ok 28 - MATCH [102]: q{f\\b} # ok 29 - MATCH [104]: q{f\\\b} # ok 30 - MATCH [106]: q{f\\'} # ok 31 - MATCH [108]: q{f\\\}} # ok 32 - MATCH [110]: q[] # ok 33 - MATCH [112]: q[f] # ok 34 - MATCH [114]: q [f\'b] # ok 35 - MATCH [119]: q # [ # f\nb # ] # ok 36 - MATCH [121]: q[f\\b] # ok 37 - MATCH [123]: q[f\\\b] # ok 38 - MATCH [125]: q[f\\'] # ok 39 - MATCH [127]: q[f\\\]] # ok 40 - MATCH [129]: q<> # ok 41 - MATCH [131]: q # ok 42 - MATCH [133]: q # ok 43 - MATCH [139]: q # < # <<<>>> # {[( # > # ok 44 - MATCH [141]: q # ok 45 - MATCH [143]: q # ok 46 - MATCH [145]: q # ok 47 - MATCH [147]: q> # ok 48 - MATCH [149]: q() # ok 49 - MATCH [151]: q(f) # ok 50 - MATCH [153]: q (f\'b) # ok 51 - MATCH [159]: q \# Comment here # ( # ((f\nb)) # {[< # ) # ok 52 - MATCH [161]: q(f\\b) # ok 53 - MATCH [163]: q(f\\\b) # ok 54 - MATCH [165]: q(f\\') # ok 55 - MATCH [167]: q(f\\\)) # ok 56 - FAIL [170]: '\\'' # ok 57 - FAIL [172]: '''' # ok 58 - FAIL [174]: 'f\\\\'' # ok 59 - FAIL [176]: q/\\' # ok 60 - FAIL [178]: q{\\' # ok 61 - FAIL [182]: q { # { # } # ok 62 - FAIL [184]: q <\\' # ok 63 - FAIL [187]: q # [\\' # ok 64 - FAIL [189]: q(\\' # ok 65 - FAIL [191]: q q\\' # ok 66 - FAIL [193]: q =\\' # 1..66 ok t/token_quotelike_words.t ........ ok 1 - MATCH: qw/foo bar baz/ # ok 2 - MATCH: qw/ foo bar baz / # ok 3 - MATCH: qw # { # )foo # {bar} # method_with_parentheses($a ? $b : $c); # ok 2 - MATCH: pack'H*',$data; # ok 3 - MATCH: unpack'H*',$data; # ok 4 - MATCH: Foo'Bar; # ok 5 - MATCH: Foo::Bar; # ok 6 - MATCH: F; # ok 7 - MATCH: indirect $foo; # ok 8 - MATCH: indirect_class_with_colon Foo::; # ok 9 - MATCH: $bar->method_with_parentheses; # ok 10 - MATCH: $bar->method_with_parentheses(); # ok 11 - MATCH: $bar->method_with_parentheses(1,'2',qr{3}); # ok 12 - MATCH: print SomeClass->method_without_parentheses + 1; # ok 13 - MATCH: print SomeClass->method_with_parentheses() + 1; # ok 14 - MATCH: sub_call(); # ok 15 - MATCH: $baz->chained_from->chained_to; # ok 16 - MATCH: a_first_thing a_middle_thing a_last_thing; # ok 17 - MATCH: (first_list_element, second_list_element, third_list_element); # ok 18 - MATCH: first_comma_separated_word, second_comma_separated_word, third_comma_separated_word; # ok 19 - MATCH: single_bareword_statement; # ok 20 - MATCH: { bareword_no_semicolon_end_of_block } # ok 21 - MATCH: $buz{hash_key}; # ok 22 - MATCH: fat_comma_left_side => $thingy; # ok 23 - MATCH: $foo eq'bar'; # ok 24 - MATCH: $foo ne'bar'; # ok 25 - MATCH: $foo ge'bar'; # ok 26 - MATCH: $foo le'bar'; # ok 27 - MATCH: $foo gt'bar'; # ok 28 - MATCH: $foo lt'bar'; # ok 29 - MATCH: q'foo'; # ok 30 - MATCH: qq'foo'; # ok 31 - MATCH: qx'foo'; # ok 32 - MATCH: qw'foo'; # ok 33 - MATCH: qr'foo'; # ok 34 - MATCH: m'foo'; # ok 35 - MATCH: s'foo'bar'; # ok 36 - MATCH: tr'fo'ba'; # ok 37 - MATCH: y'fo'ba'; # 1..37 ok t/trycatch.t ..................... 1..1 ok 1 ok t/trytiny.t ...................... 1..6 ok 1 - catch {...} interpreted as sub call ok 2 - try {...} interpreted as sub call ok 3 - Try/catch as statement ok 4 - catch {...} interpreted as sub call ok 5 - try {...} interpreted as sub call ok 6 - Try/catch as expression ok t/unpunctuated.t ................. 1..4 ok 1 - matched blokhead's wonderful JAPH! ok 2 - Redirected output ok 3 - Executed JAPH ok 4 - JAPH is correct ok t/vars.t ......................... ok 1 - $\# special case ok 2 - MATCH: $\# ok 3 - MATCH: $\#- ok 4 - MATCH: @{$obj->nextval($cat ? $dog : $fish)} ok 5 - MATCH: @{$obj->nextval($cat?$dog:$fish)->{new}} ok 6 - MATCH: @{$obj->nextval(cat()?$dog:$fish)->{new}} ok 7 - MATCH: @{$obj->nextval} ok 8 - MATCH: @{$obj->nextval($cat,$dog)->{new}} ok 9 - MATCH: $obj->nextval ok 10 - MATCH: $obj->_nextval ok 11 - MATCH: $obj->next_val_ ok 12 - MATCH: $::obj ok 13 - MATCH: %::obj:: ok 14 - MATCH: $a ok 15 - MATCH: $ a ok 16 - MATCH: $ # a ok 17 - MATCH: ${a} ok 18 - MATCH: $_ ok 19 - MATCH: $ _ ok 20 - MATCH: ${_} ok 21 - MATCH: $a[1] ok 22 - MATCH: @a[1] ok 23 - MATCH: %a[1] ok 24 - MATCH: @a[1,2,3] ok 25 - MATCH: %a[1,2,3] ok 26 - MATCH: @a[somefunc x 3] ok 27 - MATCH: %a[somefunc x 3] ok 28 - MATCH: $_[1] ok 29 - MATCH: $a{cat} ok 30 - MATCH: @a{cat} ok 31 - MATCH: %a{cat} ok 32 - MATCH: @a{qw} ok 33 - MATCH: %a{'cat',"dog"} ok 34 - MATCH: @a{somefunc $x, $y} ok 35 - MATCH: %a{somefunc($x, $y) x 3} ok 36 - MATCH: $_{cat} ok 37 - MATCH: $a->[1] ok 38 - MATCH: $a->{"cat"}[1] ok 39 - MATCH: @$listref ok 40 - MATCH: @{$listref} ok 41 - MATCH: @{ 'x' x $x } ok 42 - MATCH: $ a {'cat'} ok 43 - MATCH: $ # a # { # x # } ok 44 - MATCH: $a::b::c{d}->{$e->()} ok 45 - MATCH: $a'b'c'd{e}->{$e->()} ok 46 - MATCH: $a'b::c'd{e}->{$e->()} ok 47 - MATCH: $\#_ ok 48 - MATCH: $\#array ok 49 - MATCH: $\#{array} ok 50 - MATCH: $var[$\#var] ok 51 - MATCH: $1 ok 52 - MATCH: $11 ok 53 - MATCH: $& ok 54 - MATCH: $` ok 55 - MATCH: $' ok 56 - MATCH: $+ ok 57 - MATCH: $* ok 58 - MATCH: $. ok 59 - MATCH: $/ ok 60 - MATCH: $| ok 61 - MATCH: $, ok 62 - MATCH: $" ok 63 - MATCH: $; ok 64 - MATCH: $% ok 65 - MATCH: $= ok 66 - MATCH: $- ok 67 - MATCH: $~ ok 68 - MATCH: $^ ok 69 - MATCH: $: ok 70 - MATCH: $^L ok 71 - MATCH: $^A ok 72 - MATCH: $? ok 73 - MATCH: $! ok 74 - MATCH: $^E ok 75 - MATCH: $@ ok 76 - MATCH: $< ok 77 - MATCH: $> ok 78 - MATCH: $( ok 79 - MATCH: $) ok 80 - MATCH: $[ ok 81 - MATCH: $] ok 82 - MATCH: $^C ok 83 - MATCH: $^D ok 84 - MATCH: $^F ok 85 - MATCH: $^H ok 86 - MATCH: $^I ok 87 - MATCH: $^M ok 88 - MATCH: $^O ok 89 - MATCH: $^P ok 90 - MATCH: $^R ok 91 - MATCH: $^S ok 92 - MATCH: $^T ok 93 - MATCH: $^V ok 94 - MATCH: $^W ok 95 - MATCH: ${^WARNING_BITS} ok 96 - MATCH: ${^WIDE_SYSTEM_CALLS} ok 97 - MATCH: $^X ok 98 - MATCH: $[ ok 99 - MATCH: $$ ok 100 - MATCH: %- ok 101 - MATCH: $$foo ok 102 - MATCH: $^W ok 103 - MATCH: ${^MATCH} ok 104 - MATCH: $${^MATCH} ok 105 - MATCH: @{^_Bar} ok 106 - MATCH: ${^_Bar}[0] ok 107 - MATCH: %{^_Baz} ok 108 - MATCH: ${^_Baz}{burfle} ok 109 - FAIL: $^WIDE_SYSTEM_CALLS ok 110 - FAIL: $a-> ok 111 - FAIL: @{$ ok 112 - FAIL: $ a :: b :: c ok 113 - FAIL: $ a ' b ' c ok 114 - FAIL: \${^MATCH} ok 115 - FAIL: *var ok 116 - FAIL: *$var ok 117 - FAIL: *{var} ok 118 - FAIL: *{$var} ok 119 - FAIL: *var{cat} ok 120 - FAIL: \&var ok 121 - FAIL: \&mod::var ok 122 - FAIL: \&mod'var ok 123 - FAIL: $a-> ok 124 - FAIL: $a (1..3) { print $a } 1..124 ok t/yadayadayada.t ................. 1..3 ok 1 - Pure yada ok 2 - Partial yada ok 3 - Not an expression ok All tests successful. Files=75, Tests=1253, 27 wallclock secs ( 0.32 usr 0.12 sys + 24.60 cusr 1.98 csys = 27.02 CPU) Result: PASS make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' create-stamp debian/debhelper-build-stamp dh_prep dh_auto_install --destdir=debian/libppr-perl/ make -j11 install DESTDIR=/build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl AM_UPDATE_INFO_DIR=no PREFIX=/usr make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' Manifying 2 pod documents Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/perl5/PPR.pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/perl5/PPR/X.pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/man/man3/PPR.3pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/man/man3/PPR::X.3pm make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' dh_installdocs dh_installchangelogs dh_installman dh_perl dh_link dh_strip_nondeterminism dh_compress dh_fixperms dh_missing dh_installdeb dh_gencontrol dh_md5sums dh_builddeb dpkg-deb: building package 'libppr-perl' in '../libppr-perl_0.001010-2_all.deb'. dpkg-genbuildinfo --build=binary -O../libppr-perl_0.001010-2_i386.buildinfo dpkg-genchanges --build=binary -O../libppr-perl_0.001010-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/62850 and its subdirectories I: Current time: Fri Nov 22 08:31:48 -12 2024 I: pbuilder-time-stamp: 1732307508 Fri Nov 22 20:31:48 UTC 2024 I: Signing ./b1/libppr-perl_0.001010-2_i386.buildinfo as libppr-perl_0.001010-2_i386.buildinfo.asc Fri Nov 22 20:31:48 UTC 2024 I: Signed ./b1/libppr-perl_0.001010-2_i386.buildinfo as ./b1/libppr-perl_0.001010-2_i386.buildinfo.asc Fri Nov 22 20:31:48 UTC 2024 - build #1 for libppr-perl/unstable/i386 on ionos2-i386 done. Starting cleanup. All cleanup done. Fri Nov 22 20:31:48 UTC 2024 - reproducible_build.sh stopped running as /tmp/jenkins-script-T4cEsqdf, removing. /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr: total 16 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 20:31 b1 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 20:30 b2 -rw-r--r-- 1 jenkins jenkins 2331 Oct 11 15:51 libppr-perl_0.001010-2.dsc -rw------- 1 jenkins jenkins 3472 Nov 22 20:30 rbuildlog.wtRquN8 /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b1: total 176 -rw-r--r-- 1 jenkins jenkins 74861 Nov 22 20:31 build.log -rw-r--r-- 1 jenkins jenkins 1840 Nov 22 20:31 libppr-perl_0.001010-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 2331 Nov 22 20:31 libppr-perl_0.001010-2.dsc -rw-r--r-- 1 jenkins jenkins 66196 Nov 22 20:31 libppr-perl_0.001010-2_all.deb -rw-r--r-- 1 jenkins jenkins 4642 Nov 22 20:31 libppr-perl_0.001010-2_i386.buildinfo -rw-r--r-- 1 jenkins jenkins 5524 Nov 22 20:31 libppr-perl_0.001010-2_i386.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1044 Nov 22 20:31 libppr-perl_0.001010-2_i386.changes -rw-r--r-- 1 jenkins jenkins 1236 Nov 22 20:31 libppr-perl_0.001010-2_source.changes /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b2: total 0 Fri Nov 22 20:31:48 UTC 2024 I: Deleting $TMPDIR on ionos2-i386.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Fri Nov 22 08:30:51 -12 2024 I: pbuilder-time-stamp: 1732307451 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [libppr-perl_0.001010-2.dsc] I: copying [./libppr-perl_0.001010.orig.tar.gz] I: copying [./libppr-perl_0.001010-2.debian.tar.xz] I: Extracting source gpgv: Signature made Fri Oct 11 15:40:53 2024 gpgv: using RSA key D1E1316E93A760A8104D85FABB3A68018649AA06 gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./libppr-perl_0.001010-2.dsc: no acceptable signature found dpkg-source: info: extracting libppr-perl in libppr-perl-0.001010 dpkg-source: info: unpacking libppr-perl_0.001010.orig.tar.gz dpkg-source: info: unpacking libppr-perl_0.001010-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/62850/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='i386' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=11 ' DISTRIBUTION='unstable' HOME='/root' HOST_ARCH='i386' IFS=' ' INVOCATION_ID='20cb27a2a30e4194b15b8a6e459b0c1a' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' LD_LIBRARY_PATH='/usr/lib/libeatmydata' LD_PRELOAD='libeatmydata.so' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='62850' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/pbuilderrc_RZ2D --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b1 --logfile b1/build.log libppr-perl_0.001010-2.dsc' SUDO_GID='112' SUDO_UID='107' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://46.16.76.132:3128' I: uname -a Linux ionos2-i386 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin I: user script /srv/workspace/pbuilder/62850/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), libtest-simple-perl, perl dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19952 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 20.1 MB of archives. After unpacking 75.7 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main i386 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian unstable/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB] Get: 3 http://deb.debian.org/debian unstable/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB] Get: 4 http://deb.debian.org/debian unstable/main i386 file i386 1:5.45-3+b1 [43.2 kB] Get: 5 http://deb.debian.org/debian unstable/main i386 gettext-base i386 0.22.5-2 [201 kB] Get: 6 http://deb.debian.org/debian unstable/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB] Get: 7 http://deb.debian.org/debian unstable/main i386 groff-base i386 1.23.0-5 [1196 kB] Get: 8 http://deb.debian.org/debian unstable/main i386 bsdextrautils i386 2.40.2-11 [95.6 kB] Get: 9 http://deb.debian.org/debian unstable/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB] Get: 10 http://deb.debian.org/debian unstable/main i386 man-db i386 2.13.0-1 [1428 kB] Get: 11 http://deb.debian.org/debian unstable/main i386 m4 i386 1.4.19-4 [293 kB] Get: 12 http://deb.debian.org/debian unstable/main i386 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian unstable/main i386 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian unstable/main i386 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian unstable/main i386 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian unstable/main i386 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian unstable/main i386 libtool all 2.4.7-8 [517 kB] Get: 18 http://deb.debian.org/debian unstable/main i386 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian unstable/main i386 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian unstable/main i386 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian unstable/main i386 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian unstable/main i386 libelf1t64 i386 0.192-4 [195 kB] Get: 23 http://deb.debian.org/debian unstable/main i386 dwz i386 0.15-1+b1 [116 kB] Get: 24 http://deb.debian.org/debian unstable/main i386 libicu72 i386 72.1-5+b1 [9583 kB] Get: 25 http://deb.debian.org/debian unstable/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB] Get: 26 http://deb.debian.org/debian unstable/main i386 gettext i386 0.22.5-2 [1631 kB] Get: 27 http://deb.debian.org/debian unstable/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main i386 debhelper all 13.20 [915 kB] Fetched 20.1 MB in 0s (72.3 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19952 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:i386. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic1t64:i386 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3+b1_i386.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_i386.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../05-libuchardet0_0.0.8-1+b2_i386.deb ... Unpacking libuchardet0:i386 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_i386.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-11_i386.deb ... Unpacking bsdextrautils (2.40.2-11) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../08-libpipeline1_1.5.8-1_i386.deb ... Unpacking libpipeline1:i386 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_i386.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_i386.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-8_all.deb ... Unpacking libtool (2.4.7-8) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:i386. Preparing to unpack .../21-libelf1t64_0.192-4_i386.deb ... Unpacking libelf1t64:i386 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_i386.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:i386. Preparing to unpack .../23-libicu72_72.1-5+b1_i386.deb ... Unpacking libicu72:i386 (72.1-5+b1) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ... Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_i386.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:i386 (1.5.8-1) ... Setting up libicu72:i386 (72.1-5+b1) ... Setting up bsdextrautils (2.40.2-11) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:i386 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:i386 (0.192-4) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:i386 (0.0.8-1+b2) ... Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-8) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: Running cd /build/reproducible-path/libppr-perl-0.001010/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../libppr-perl_0.001010-2_source.changes dpkg-buildpackage: info: source package libppr-perl dpkg-buildpackage: info: source version 0.001010-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by gregor herrmann dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 debian/rules clean dh clean dh_clean debian/rules binary dh binary dh_update_autotools_config dh_autoreconf dh_auto_configure /usr/bin/perl Makefile.PL INSTALLDIRS=vendor "OPTIMIZE=-g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libppr-perl-0.001010=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2" "LD=i686-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libppr-perl-0.001010=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro" Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for PPR Writing MYMETA.yml and MYMETA.json dh_auto_build make -j11 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' cp lib/PPR.pm blib/lib/PPR.pm cp lib/PPR/X.pm blib/lib/PPR/X.pm Manifying 2 pod documents make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' dh_auto_test make -j11 test TEST_VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t # Testing PPR 0.001010 t/00.load.t ...................... ok 1 - use PPR; 1..1 ok t/blocks.t ....................... ok 1 - MATCH: { # func1 / regex /; # func1 / regex ; # } # ok 2 - MATCH: { # time / regex; # func1 / regex /; # } # ok 3 - MATCH: { # func1 / regex; # } # ok 4 - MATCH: { # func1 / regex /; # } # ok 5 - MATCH: { # func1 / regex /; # func1 / regex; # } # ok 6 - MATCH: { sub { $_[0] /= $_[1] } } \# / here # ok 7 - MATCH: {$obj->method} # ok 8 - MATCH: { %x = () } # ok 9 - MATCH: { # $a = $b; # $x = $a / $b; # $a =~ /$b/; # /$c/; # @a = map /\s/, @b; # @a = map {/\s/} @b; # $not_pod # =head1 (); # } # ok 10 - MATCH: { # $a = $b; # $x = $a / $b; # # =head1 This is pod # # ...until the next # # =cut # # $a =~ /$b/; # /$c/; # # =pod # # more pod # # =cut # @a = map /\s/, @b; # @a = map {/\s/} @b # } # ok 11 - MATCH: { %x = ( try => "this") } # ok 12 - MATCH: {Foo(')')} # ok 13 - MATCH: { $data[4] =~ /['"]/; } # ok 14 - MATCH: { %x = ( $try->{this}, "too") } # ok 15 - MATCH: { %'x = ( $try->{this}, "too") } # ok 16 - MATCH: { %'x'y = ( $try->{this}, "too") } # ok 17 - MATCH: { %::x::y = ( $try->{this}, "too") } # ok 18 - MATCH: { $a = /\}/; } # ok 19 - MATCH: { 1; } # ok 20 - MATCH: { $a = 1; } # ok 21 - MATCH: {$a=1} # ok 22 - MATCH: { $a = $b; \# what's this doing here? # } # ok 23 - FAIL: < %x = do { $try > 10 } >; # ok 24 - FAIL: { $a = $b; \# what's this doing here? } # ok 25 - FAIL: { $a = $b; \# what's this doing here? # 1..25 ok t/control.t ...................... ok 1 - MATCH: for (my $x = 0 ; $x < 1; $x++) { } # ok 2 - MATCH: foreach (my $x = 0 ; $x < 1; $x++) { } # ok 3 - MATCH: for ($x = 0 ; $x < 1; $x++) { } # ok 4 - MATCH: foreach ($x = 0 ; $x < 1; $x++) { } # ok 5 - MATCH: for ( ; ; ) { } # ok 6 - MATCH: foreach ( ; ; ) { } # ok 7 - MATCH: while (1) { } # ok 8 - MATCH: until (1) { } # ok 9 - MATCH: if (1) { } # ok 10 - MATCH: unless (1) { } # ok 11 - MATCH: for (@foo) { } # ok 12 - MATCH: foreach (@foo) { } # ok 13 - MATCH: for $x (@foo) { } # ok 14 - MATCH: foreach $x (@foo) { } # ok 15 - MATCH: for my $x (@foo) { } # ok 16 - MATCH: foreach my $x (@foo) { } # ok 17 - MATCH: for state $x (@foo) { } # ok 18 - MATCH: foreach state $x (@foo) { } # ok 19 - MATCH: for qw{foo} { } # ok 20 - MATCH: foreach qw{foo} { } # ok 21 - MATCH: for $x qw{foo} { } # ok 22 - MATCH: foreach $x qw{foo} { } # ok 23 - MATCH: for my $x qw{foo} { } # ok 24 - MATCH: foreach my $x qw{foo} { } # ok 25 - MATCH: for state $x qw{foo} { } # ok 26 - MATCH: foreach state $x qw{foo} { } # ok 27 - FAIL: LABEL: while (1) { } # ok 28 - FAIL: LABEL: until (1) { } # ok 29 - FAIL: LABEL: for (@foo) { } # ok 30 - FAIL: LABEL: foreach (@foo) { } # ok 31 - FAIL: LABEL: for $x (@foo) { } # ok 32 - FAIL: LABEL: foreach $x (@foo) { } # ok 33 - FAIL: LABEL: for my $x (@foo) { } # ok 34 - FAIL: LABEL: foreach my $x (@foo) { } # ok 35 - FAIL: LABEL: for state $x (@foo) { } # ok 36 - FAIL: LABEL: foreach state $x (@foo) { } # ok 37 - FAIL: LABEL: for qw{foo} { } # ok 38 - FAIL: LABEL: foreach qw{foo} { } # ok 39 - FAIL: LABEL: for $x qw{foo} { } # ok 40 - FAIL: LABEL: foreach $x qw{foo} { } # ok 41 - FAIL: LABEL: for my $x qw{foo} { } # ok 42 - FAIL: LABEL: foreach my $x qw{foo} { } # ok 43 - FAIL: LABEL: for state $x qw{foo} { } # ok 44 - FAIL: LABEL: foreach state $x qw{foo} { } # ok 45 - FAIL: LABEL: for ( ; ; ) { } # ok 46 - FAIL: LABEL: foreach ( ; ; ) { } # ok 47 - FAIL: LABEL: for ($x = 0 ; $x < 1; $x++) { } # ok 48 - FAIL: LABEL: foreach ($x = 0 ; $x < 1; $x++) { } # ok 49 - FAIL: LABEL: for (my $x = 0 ; $x < 1; $x++) { } # ok 50 - FAIL: LABEL: foreach (my $x = 0 ; $x < 1; $x++) { } # 1..50 ok t/decomment.t .................... 1..1 ok 1 - Decommented correctly ok t/decomment_heredoc_large.t ...... 1..1 ok 1 ok t/disapproval.t .................. skipped: Acme::LookOfDisapproval not installed t/document_self.t ................ 1..1 ok 1 - Matched own document ok t/erudil.t ....................... 1..1 ok 1 - matched Erudil's camelcode ok t/eyedrops.t ..................... 1..1 ok 1 - matched Acme::Eyedrops Hello, World! ok t/for_ref_iterator.t ............. ok 1 - for_def_iterator ok 2 - for_def_iterator_curly ok 3 - for_my_iterator ok 4 - for_my_iterator_curly ok 5 - for_my_postalias ok 6 - for_my_postalias_array ok 7 - for_my_postalias_hash ok 8 - for_my_prealias ok 9 - for_my_prealias_array ok 10 - for_my_prealias_hash ok 11 - for_no_iterator ok 12 - for_our_iterator ok 13 - for_our_iterator_curly ok 14 - for_our_iterator_weird ok 15 - for_our_iterator_weird_curly ok 16 - for_our_postalias ok 17 - for_our_postalias_array ok 18 - for_our_postalias_hash ok 19 - for_our_prealias ok 20 - for_our_prealias_array ok 21 - for_our_prealias_hash ok 22 - for_state_iterator ok 23 - for_state_postalias ok 24 - for_state_postalias_array ok 25 - for_state_postalias_hash ok 26 - for_state_prealias ok 27 - for_state_prealias_array ok 28 - for_state_prealias_hash ok 29 - for_no_list ok 30 - for_local_iterator 1..30 ok t/format.t ....................... 1..2 ok 1 - Matched format ok 2 - Matched format ok t/heredoc.t ...................... ok 1 - Matched heredoc'd block 1 ok 2 - Matched heredoc'd block 2 ok 3 - Matched heredoc'd block 3 ok 4 - Matched heredoc'd block 4 ok 5 - Matched heredoc'd block 5 ok 6 - Matched heredoc'd block 6 ok 7 - Matched heredoc'd block 7 ok 8 - Matched heredoc'd block 8 ok 9 - Matched heredoc'd block 9 ok 10 - Matched heredoc'd block 10 ok 11 - Matched heredoc'd block 11 ok 12 - Matched heredoc'd block 12 ok 13 - Matched heredoc'd block 13 ok 14 - Matched heredoc'd block 14 ok 15 - Matched heredoc'd block 15 ok 16 - Matched heredoc'd block 16 ok 17 - Matched heredoc'd block 17 ok 18 - Matched heredoc'd block 18 ok 19 - Matched heredoc'd block 19 ok 20 - Matched heredoc'd block 20 ok 21 - Matched heredoc'd block 21 ok 22 - Matched heredoc'd block 22 ok 23 - Matched heredoc'd block 23 ok 24 - Matched heredoc'd block 24 ok 25 - Matched heredoc'd block 25 ok 26 - Matched heredoc'd block 26 ok 27 - Matched heredoc'd block 27 ok 28 - Matched heredoc'd block 28 ok 29 - Matched heredoc'd block 29 ok 30 - Matched heredoc'd block 30 ok 31 - Matched heredoc'd block 31 ok 32 - Matched heredoc'd block 32 ok 33 - Matched heredoc'd block 33 ok 34 - Matched heredoc'd block 34 1..34 ok t/heredoc_and_format.t ........... 1..2 ok 1 - Matched document ok 2 - Matched pieces ok t/heredoc_and_quotelike.t ........ 1..2 ok 1 - Matched document ok 2 - Matched pieces ok t/heredoc_large.t ................ ok 1 - Matched heredoc'd block 1 ok 2 - Matched heredoc'd block 2 ok 3 - Matched heredoc'd block 3 ok 4 - Matched heredoc'd block 4 ok 5 - Matched heredoc'd block 5 ok 6 - Matched heredoc'd block 6 ok 7 - Matched heredoc'd block 7 ok 8 - Matched heredoc'd block 8 ok 9 - Matched heredoc'd block 9 ok 10 - Matched heredoc'd block 10 ok 11 - Matched heredoc'd block 11 ok 12 - Matched heredoc'd block 12 ok 13 - Matched heredoc'd block 13 ok 14 - Matched heredoc'd block 14 ok 15 - Matched heredoc'd block 15 ok 16 - Matched heredoc'd block 16 ok 17 - Matched heredoc'd block 17 ok 18 - Matched heredoc'd block 18 ok 19 - Matched heredoc'd block 19 ok 20 - Matched heredoc'd block 20 ok 21 - Matched heredoc'd block 21 ok 22 - Matched heredoc'd block 22 ok 23 - Matched heredoc'd block 23 ok 24 - Matched heredoc'd block 24 ok 25 - Matched heredoc'd block 25 ok 26 - Matched heredoc'd block 26 ok 27 - Matched heredoc'd block 27 ok 28 - Matched heredoc'd block 28 ok 29 - Matched heredoc'd block 29 ok 30 - Matched heredoc'd block 30 ok 31 - Matched heredoc'd block 31 ok 32 - Matched heredoc'd block 32 ok 33 - Matched heredoc'd block 33 ok 34 - Matched heredoc'd block 34 ok 35 - Matched heredoc'd block 35 1..35 ok t/heredoc_null_then_shift.t ...... 1..2 ok 1 - Matched ok 2 - Matched correctly ok t/heredoc_same_terminator.t ...... 1..4 ok 1 - AA ok 2 - AA again ok 3 - AB ok 4 - AA yet again ok t/keywords.t ..................... 1..2 ok 1 - Matched Dios code ok 2 - Matched Object::Result code ok t/merijn_is_evil.t ............... 1..1 ok 1 ok t/misc.t ......................... ok 1 - (Foo(')')); # ok 2 - %x = ( try => "this"); # ok 3 - %x = (); # ok 4 - %x = ( $try->{this}, "too"); # ok 5 - %'x = ( $try->{this}, "too"); # ok 6 - %'x'y = ( $try->{this}, "too"); # ok 7 - %::x::y = ( $try->{this}, "too"); # ok 8 - %x = do { $try > 10 }; # ok 9 - label: %x = (); # ok 10 - \# leading "space" # label: %x = (); # ok 11 - label: \# in-between "space" # %x = (); # ok 12 - \# leading "space" # label: # in-between "space" # %x = (); # ok 13 - split /\s+/,; # ok 14 - grep {exists $group_of{$_} }; # ok 15 - { $a = /\}/; }; # ok 16 - { $data[4] =~ /['"]/; }; # ok 17 - { sub { $_[0] /= $_[1] } }; \# / here # ok 18 - { 1; }; # ok 19 - { $a = 1; }; # ok 20 - { $a = $b; \# what's this doing here? # };' # ok 21 - { $a = $b; # $a =~ /$b/; # @a = map /\s/ @b }; # ok 22 - { $a = $b; \# what's this doing here? };' # ok 23 - { $a = $b; \# what's this doing here? ;' # 1..23 ok t/misc_docs.t .................... ok 1 - # my $x; # # =pod # # Trailing POD # # =cut # ok 2 - # my $x; # # =pod # # Trailing POD terminated by eof # ok 3 - # =pod # # POD #1 # # =cut # # # Comments # # =pod # # POD #2 # # =cut # # my $x; # 1..3 ok t/perl_pod.t ..................... ok 1 - # =pod # # Regular POD # # =cut # ok 2 - # =pod # # POD terminated by eof # 1..2 ok t/perl_v5.28.t ................... 1..4 ok 1 - Can now delete via k/v slices ok 2 - Can initialize array state variables ok 3 - Can initialize hash state variables ok 4 - Named equivalents for various (?X...) regex constructs ok t/perl_v5.30.t ................... 1..3 ok 1 - Higher upper limit on counted repetions in regexes ok 2 - Can specify unicode properties in a regex via a nested regex ok 3 - Can specify variable-length lookbehinds in regexes ok t/perl_v5.32.t ................... 1..1 ok 1 - New binary infix isa operator ok t/perl_v5.34.t ................... 1..3 ok 1 - (Precheck that "vampire for" is valid) ok 2 - Octal constants ok 3 - Try/catch blocks ok t/perl_v5.36.t ................... 1..6 ok 1 - (Precheck that "vampire for" is valid) ok 2 - Try blocks with finally ok 3 - Defer blocks ok 4 - Multi-iterator for loops ok 5 - Unicode double-angle bracket delimiters on quotelikes ok 6 - Other Unicode bracket delimiters on quotelikes ok t/perl_v5.38.t ................... ok 1 - Or-assign in sub signatures ok 2 - Or-assign in anon sub signatures ok 3 - Doh-assign in sub signatures ok 4 - Doh-assign in anon sub signatures ok 5 - Optimistic eval in regexes ok 6 - Class declarations ok 7 - Class declarations with version number ok 8 - Class declaration with attribute ok 9 - Class declaration with attribute with minimal version ok 10 - Class blocks ok 11 - Class block with attribute ok 12 - Class block with version numbers ok 13 - Field declarations ok 14 - Field attribute ok 15 - Field attribute with rename ok 16 - Field default initializer ok 17 - Field default doh initializer ok 18 - Field default or initializer ok 19 - Field with all-of-the-above ok 20 - Array fields ok 21 - Array field with initializer ok 22 - Hash field ok 23 - Hash field with initializer ok 24 - Methods ok 25 - Method with signature ok 26 - Anonymous method ok 27 - Anonymous method with signature ok 28 - ADJUST blocks ok 29 - Class with fields, methods, and ADJUST blocks 1..29 ok t/pod.t .......................... skipped: Test::Pod 1.14 required for testing POD t/postfix_deref.t ................ 1..38 ok 1 - Valid: $sref->$* ok 2 - Valid: $aref->$\#* ok 3 - Valid: $aref->@* ok 4 - Valid: $aref->@[1,2,3] ok 5 - Valid: $aref->%[1..3] ok 6 - Valid: $href->%* ok 7 - Valid: $href->%{'a','b'} ok 8 - Valid: $href->@{'a','b'} ok 9 - Valid: $cref->() ok 10 - Valid: $cref->&* ok 11 - Valid: $rref->$*->$* ok 12 - Valid: $rref->$*->@* ok 13 - Valid: $gref->** ok 14 - Valid: $gref->**->{IO} ok 15 - Valid: $gref->**->**->{IO} ok 16 - Valid: $gref->*{IO} ok 17 - Valid: $obj->method ok 18 - Valid: $obj->method() ok 19 - Valid: $obj->$method ok 20 - Valid: $obj->$method() ok 21 - Valid: $ref->{a}[1]('arg')[2]{z} ok 22 - Valid: $ref->method->[1]('arg')('arg2')->$method()->[2]{z}->**->$*->&*->$\#* ok 23 - Valid: $aref->@*->%[1..3] ok 24 - Valid: $aref->@*->%{'k1', 'k2'} ok 25 - Valid: $aref->@*->method() ok 26 - Valid: $aref->@*->$* ok 27 - Valid: $aref->@*->** ok 28 - Valid: $href->%*->@[1..3] ok 29 - Valid: $href->%*->@{'k1', 'k2'} ok 30 - Valid: $href->%*->method() ok 31 - Valid: $href->%*->$* ok 32 - Valid: $href->%*->** ok 33 - Invalid: $aref->@*->[1] ok 34 - Invalid: $aref->@*->@[1..3] ok 35 - Invalid: $aref->@*->@{'k1', 'k2'} ok 36 - Invalid: $href->%*->{k} ok 37 - Invalid: $href->%*->%[1..3] ok 38 - Invalid: $href->%*->%{'k1', 'k2'} ok t/postfix_deref_qq.t ............. 1..82 ok 1 - Valid: qq{ $sref->$* } ok 2 - and postderef matched appropriately ok 3 - Valid: qq{ $aref->$\#* } ok 4 - and postderef matched appropriately ok 5 - Valid: qq{ $aref->@* } ok 6 - and postderef matched appropriately ok 7 - Valid: qq{ $aref->@[1,2,3] } ok 8 - and postderef matched appropriately ok 9 - Valid: qq{ $href->@{'a','b'} } ok 10 - and postderef matched appropriately ok 11 - Valid: qq{ $rref->$* } ok 12 - and postderef matched appropriately ok 13 - Valid: qq{ $href->{a}[1][2]{z} } ok 14 - and postderef matched appropriately ok 15 - Invalid: qq{ $aref->%[1..3] } ok 16 - and postderef correctly failed to match ok 17 - Invalid: qq{ $href->%* } ok 18 - and postderef correctly failed to match ok 19 - Invalid: qq{ $href->%{'a','b'} } ok 20 - and postderef correctly failed to match ok 21 - Invalid: qq{ $cref->() } ok 22 - and postderef correctly failed to match ok 23 - Invalid: qq{ $cref->&* } ok 24 - and postderef correctly failed to match ok 25 - Invalid: qq{ $rref->$*->$* } ok 26 - and postderef correctly failed to match ok 27 - Invalid: qq{ $rref->$*->@* } ok 28 - and postderef correctly failed to match ok 29 - Invalid: qq{ $gref->** } ok 30 - and postderef correctly failed to match ok 31 - Invalid: qq{ $gref->**->{IO} } ok 32 - and postderef correctly failed to match ok 33 - Invalid: qq{ $gref->**->**->{IO} } ok 34 - and postderef correctly failed to match ok 35 - Invalid: qq{ $gref->*{IO} } ok 36 - and postderef correctly failed to match ok 37 - Invalid: qq{ $obj->method } ok 38 - and postderef correctly failed to match ok 39 - Invalid: qq{ $obj->method() } ok 40 - and postderef correctly failed to match ok 41 - Invalid: qq{ $obj->$method } ok 42 - and postderef correctly failed to match ok 43 - Invalid: qq{ $obj->$method() } ok 44 - and postderef correctly failed to match ok 45 - Invalid: qq{ $href->{a}[1]('arg')[2]{z} } ok 46 - and postderef correctly failed to match ok 47 - Invalid: qq{ $href->method->[1]('arg')('arg2')->$method()->[2]{z}->**->$*->&*->$\#* } ok 48 - and postderef correctly failed to match ok 49 - Invalid: qq{ $aref->@*->[0] } ok 50 - and postderef correctly failed to match ok 51 - Invalid: qq{ $aref->@*->%[1..3] } ok 52 - and postderef correctly failed to match ok 53 - Invalid: qq{ $aref->@*->%{'k1', 'k2'} } ok 54 - and postderef correctly failed to match ok 55 - Invalid: qq{ $aref->@*->method() } ok 56 - and postderef correctly failed to match ok 57 - Invalid: qq{ $aref->@*->$* } ok 58 - and postderef correctly failed to match ok 59 - Invalid: qq{ $aref->@*->** } ok 60 - and postderef correctly failed to match ok 61 - Invalid: qq{ $href->%*->@[1..3] } ok 62 - and postderef correctly failed to match ok 63 - Invalid: qq{ $href->%*->@{'k1', 'k2'} } ok 64 - and postderef correctly failed to match ok 65 - Invalid: qq{ $href->%*->method() } ok 66 - and postderef correctly failed to match ok 67 - Invalid: qq{ $href->%*->$* } ok 68 - and postderef correctly failed to match ok 69 - Invalid: qq{ $href->%*->** } ok 70 - and postderef correctly failed to match ok 71 - Invalid: qq{ $aref->@*->[1] } ok 72 - and postderef correctly failed to match ok 73 - Invalid: qq{ $aref->@*->@[1..3] } ok 74 - and postderef correctly failed to match ok 75 - Invalid: qq{ $aref->@*->@{'k1', 'k2'} } ok 76 - and postderef correctly failed to match ok 77 - Invalid: qq{ $href->%*->{k} } ok 78 - and postderef correctly failed to match ok 79 - Invalid: qq{ $href->%*->%[1..3] } ok 80 - and postderef correctly failed to match ok 81 - Invalid: qq{ $href->%*->%{'k1', 'k2'} } ok 82 - and postderef correctly failed to match ok t/ppi_lexer.t .................... ok 1 - use constant { One => 1 }; # ok 2 - use constant 1 { One => 1 }; # ok 3 - $foo->{bar}; # ok 4 - $foo[1]{bar}; # ok 5 - $foo{bar}; # ok 6 - sub {1}; # ok 7 - grep { $_ } 0 .. 2; # ok 8 - map { $_ => 1 } 0 .. 2; # ok 9 - sort { $b <=> $a } 0 .. 2; # ok 10 - do {foo}; # ok 11 - $foo = { One => 1 }; # ok 12 - $foo ||= { One => 1 }; # ok 13 - 1, { One => 1 }; # ok 14 - One => { Two => 2 }; # ok 15 - {foo, bar}; # ok 16 - {foo => bar}; # ok 17 - {}; # ok 18 - +{foo, bar}; # ok 19 - @foo{'bar', 'baz'}; # ok 20 - @{$foo}{'bar', 'baz'}; # ok 21 - ${$foo}{bar}; # ok 22 - return { foo => 'bar' }; # ok 23 - bless { foo => 'bar' }; # ok 24 - $foo &&= { One => 1 }; # ok 25 - $foo //= { One => 1 }; # ok 26 - $foo //= { 'a' => 1, 'b' => 2 }; # ok 27 - 0 || { One => 1 }; # ok 28 - 1 && { One => 1 }; # ok 29 - undef // { One => 1 }; # ok 30 - $x ? {a=>1} : 1; # ok 31 - $x ? 1 : {a=>1}; # ok 32 - $x ? {a=>1} : {b=>1}; # 1..32 ok t/ppi_node.t ..................... ok 1 - use strict; # # sub one { 1 } # sub two { 2 } # sub three { 3 } # # print one; # print "\n"; # print three; # print "\n"; # # exit; # 1..1 ok t/ppi_statement.t ................ ok 1 - package Foo; # use strict; # ; # while (1) { last; } # BEGIN { } # sub foo { } # state $x; # $x = 5; # 1..1 ok t/ppi_statement_compound.t ....... ok 1 - while (1) { } # until (1) { } # LABEL: while (1) { } # LABEL: until (1) { } # # if (1) { } # unless (1) { } # # for (@foo) { } # foreach (@foo) { } # for $x (@foo) { } # foreach $x (@foo) { } # for my $x (@foo) { } # foreach my $x (@foo) { } # for state $x (@foo) { } # foreach state $x (@foo) { } # LABEL: for (@foo) { } # LABEL: foreach (@foo) { } # LABEL: for $x (@foo) { } # LABEL: foreach $x (@foo) { } # LABEL: for my $x (@foo) { } # LABEL: foreach my $x (@foo) { } # LABEL: for state $x (@foo) { } # LABEL: foreach state $x (@foo) { } # # for qw{foo} { } # foreach qw{foo} { } # for $x qw{foo} { } # foreach $x qw{foo} { } # for my $x qw{foo} { } # foreach my $x qw{foo} { } # for state $x qw{foo} { } # foreach state $x qw{foo} { } # LABEL: for qw{foo} { } # LABEL: foreach qw{foo} { } # LABEL: for $x qw{foo} { } # LABEL: foreach $x qw{foo} { } # LABEL: for my $x qw{foo} { } # LABEL: foreach my $x qw{foo} { } # LABEL: for state $x qw{foo} { } # LABEL: foreach state $x qw{foo} { } # # for ( ; ; ) { } # foreach ( ; ; ) { } # for ($x = 0 ; $x < 1; $x++) { } # foreach ($x = 0 ; $x < 1; $x++) { } # for (my $x = 0 ; $x < 1; $x++) { } # foreach (my $x = 0 ; $x < 1; $x++) { } # LABEL: for ( ; ; ) { } # LABEL: foreach ( ; ; ) { } # LABEL: for ($x = 0 ; $x < 1; $x++) { } # LABEL: foreach ($x = 0 ; $x < 1; $x++) { } # LABEL: for (my $x = 0 ; $x < 1; $x++) { } # LABEL: foreach (my $x = 0 ; $x < 1; $x++) { } # 1..1 ok t/ppi_statement_include.t ........ ok 1 - require 5.6; # require Module; # require 'Module.pm'; # use 5.6; # use Module; # use Module 1.00; # no Module; # 1..1 ok t/ppi_statement_package.t ........ ok 1 - { package => "", }; # +{ package => "", }; # { 'package' => "", }; # +{ 'package' => "", }; # { 'package' , "", }; # +{ 'package' , "", }; # package Foo; # SCOPE: { # package # comment # Bar::Baz; # 1; # } # package Other v1.23; # package Again 0.09; # 1; # 1..1 ok t/ppi_statement_sub.t ............ ok 1 - DESTROY {} # sub BEGIN {} # sub foo {} # sub foo{} # # sub FOO {} # # sub _foo {} # # sub _0foo {} # # sub _foo0 {} # # sub ___ {} # # sub bar() {} # # sub baz : method{} # # sub baz : method lvalue{} # # sub baz : method:lvalue{} # # sub baz (*) : method : lvalue{} # # sub x64 {} # # sub AUTOLOAD; # # sub AUTOLOAD {} # # sub DESTROY; # # sub DESTROY {} # # AUTOLOAD; # # AUTOLOAD {} # # DESTROY; # # sub CHECK {} # # sub UNITCHECK {} # # sub INIT {} # # sub END {} # # sub AUTOLOAD {} # # sub CLONE_SKIP {} # # sub __SUB__ {} # # sub _FOO {} # # sub FOO9 {} # # sub FO9O {} # # sub FOo {} # 1..1 ok t/ppi_statement_variable.t ....... ok 1 - package Bar; # my $foo = 1; # my ( $foo, $bar) = (1, 2); # our $foo = 1; # local $foo; # local $foo = 1; # LABEL: my $foo = 1; # # # As well as those basics, lets also try some harder ones # local($foo = $bar->$bar(), $bar); # 1..1 ok t/ppi_token_dashedword.t ......... ok 1 - -foo, -foo, # -Foo::Bar, -Foo::Bar, # -Foo'Bar, -Foo::Bar, # 1..1 ok t/ppi_token_magic.t .............. ok 1 - $[; \# Magic $[ # ok 2 - $$; \# Magic $$ # ok 3 - %-; \# Magic %- # ok 4 - $\#-; \# Magic $\#- # ok 5 - $$foo; \# Symbol $foo Dereference of $foo # ok 6 - $^W; \# Magic $^W # ok 7 - ${^WIDE_SYSTEM_CALLS}; \# Magic ${^WIDE_SYSTEM_CALLS} # ok 8 - ${^MATCH}; \# Magic ${^MATCH} # ok 9 - @{^_Bar}; \# Magic @{^_Bar} # ok 10 - ${^_Bar}[0]; \# Magic @{^_Bar} # ok 11 - %{^_Baz}; \# Magic %{^_Baz} # ok 12 - ${^_Baz}{burfle}; \# Magic %{^_Baz} # ok 13 - $${^MATCH}; \# Magic ${^MATCH} Dereference of ${^MATCH} # ok 14 - \\${^MATCH}; \# Magic ${^MATCH} # ok 15 - $0; \# Magic $0 -- program being executed # ok 16 - $0x2; \# Magic $0 -- program being executed # ok 17 - $10; \# Magic $10 -- capture variable # ok 18 - $1100; \# Magic $1100 -- capture variable # 1..18 ok t/ppi_token_operator.t ........... ok 1 - bareword x 3; # ok 2 - bareword x3; # ok 3 - $a->package x3; # ok 4 - sort { $a->package cmp $b->package } (); # ok 5 - c->d x 3; # ok 6 - 1 x 3; # ok 7 - "y" x 3; # ok 8 - qq{y} x 3; # ok 9 - "y"x 3; # ok 10 - $a x 3; # ok 11 - $a x3; # ok 12 - $a++x3; # ok 13 - "y"x 3; # ok 14 - 'y'x 3; # ok 15 - (5)x 3; # ok 16 - 1x0x1; # ok 17 - 1 x$y; # ok 18 - $z x=3; # ok 19 - $z x=$y; # ok 20 - 1;x =>1; # ok 21 - 1;x=>1; # ok 22 - $hash{x}=1; # ok 23 - x =>1; # ok 24 - x=>1; # ok 25 - xx=>1; # ok 26 - 1=>x; # ok 27 - 1=>xor 2; # ok 28 - (1) x 6; # ok 29 - (1) x6; # ok 30 - (1)x6; # ok 31 - foo()x6; # ok 32 - qw(1)x6; # ok 33 - qw<1>x6; # ok 34 - [1]x6; # ok 35 - 1x$bar; # ok 36 - 1x@bar; # ok 37 - sub xyzzy : _5x5 {1;}; # ok 38 - LABEL: x64; # ok 39 - 1 => 2; # ok 40 - foo => 2; # ok 41 - -foo => 2; # 1..41 ok t/ppi_token_prototype.t .......... ok 1 - sub (\ [ $ ]){;}; # sub (\\\ [ $ ]){;} # ok 2 - sub foo(){;} # sub foo( ){;} # # sub foo () {;} # # sub foo(+@){;} # # sub foo (+@) {;} # # sub foo(\[$;$_@]){;} # # sub foo(\ [ $ ]){;} # # sub foo(\\\ [ $ ]){;} # # sub foo($ _ %){;} # # sub foo (){;} # # sub foo ( ){;} # # sub foo () {;} # # sub foo (+@){;} # # sub foo (+@) {;} # # sub foo (\[$;$_@]){;} # # sub foo (\ [ $ ]){;} # # sub foo (\\\ [ $ ]){;} # # sub foo ($ _ %){;} # ok 3 - sub(){;} # ok 4 - sub( ){;} # ok 5 - sub () {;} # ok 6 - sub(+@){;} # ok 7 - sub (+@) {;} # ok 8 - sub(\[$;$_@]){;} # ok 9 - sub(\ [ $ ]){;} # ok 10 - sub(\\\ [ $ ]){;} # ok 11 - sub($ _ %){;} # ok 12 - sub (){;} # ok 13 - sub ( ){;} # ok 14 - sub () {;} # ok 15 - sub (+@){;} # ok 16 - sub (+@) {;} # ok 17 - sub (\[$;$_@]){;} # ok 18 - sub ($ _ %){;} # ok 19 - sub DESTROY(){;} # # sub DESTROY( ){;} # # sub DESTROY () {;} # # sub DESTROY(+@){;} # # sub DESTROY (+@) {;} # # sub DESTROY(\[$;$_@]){;} # # sub DESTROY(\ [ $ ]){;} # # sub DESTROY(\\\ [ $ ]){;} # # sub DESTROY($ _ %){;} # # sub DESTROY (){;} # # sub DESTROY ( ){;} # # sub DESTROY () {;} # # sub DESTROY (+@){;} # # sub DESTROY (+@) {;} # # sub DESTROY (\[$;$_@]){;} # # sub DESTROY (\ [ $ ]){;} # # sub DESTROY (\\\ [ $ ]){;} # # sub DESTROY ($ _ %){;} # # sub AUTOLOAD(){;} # # sub AUTOLOAD( ){;} # # sub AUTOLOAD () {;} # # sub AUTOLOAD(+@){;} # # sub AUTOLOAD (+@) {;} # # sub AUTOLOAD(\[$;$_@]){;} # # sub AUTOLOAD(\ [ $ ]){;} # # sub AUTOLOAD(\\\ [ $ ]){;} # # sub AUTOLOAD($ _ %){;} # # sub AUTOLOAD (){;} # # sub AUTOLOAD ( ){;} # # sub AUTOLOAD () {;} # # sub AUTOLOAD (+@){;} # # sub AUTOLOAD (+@) {;} # # sub AUTOLOAD (\[$;$_@]){;} # # sub AUTOLOAD (\ [ $ ]){;} # # sub AUTOLOAD (\\\ [ $ ]){;} # # sub AUTOLOAD ($ _ %){;} # 1..19 ok t/ppi_token_quote_double.t ....... ok 1 - "no interpolations"; # "no \@interpolations"; # "has $interpolation"; # "has @interpolation"; # "has \\@interpolation"; # "no special characters"; # "has \"double\" quotes"; # "has 'single' quotes"; # "has $interpolation"; # "has @interpolation"; # ""; # 1..1 ok t/ppi_token_quote_interpolate.t .. ok 1 - print qq{foo}, qq!bar!, qq ; # print q{foo}, q!bar!, q ; # 1..1 ok t/ppi_token_quote_single.t ....... ok 1 - '', # 'f', # "f\'b", # "f\\nb", # "f\\b", # "f\\\\b", # "f\\'", # 1..1 ok t/ppi_token_word.t ............... ok 1 - no strict; # ok 2 - indirect $foo; # ok 3 - indirect_class_with_colon Foo::; # ok 4 - $bar->method_with_parentheses; # ok 5 - print SomeClass->method_without_parentheses + 1; # ok 6 - sub_call(); # ok 7 - $baz->chained_from->chained_to; # ok 8 - a_first_thing a_middle_thing a_last_thing; # ok 9 - (first_list_element, second_list_element, third_list_element); # ok 10 - first_comma_separated_word, second_comma_separated_word, third_comma_separated_word; # ok 11 - single_bareword_statement; # ok 12 - { bareword_no_semicolon_end_of_block } # $buz{hash_key}; # ok 13 - fat_comma_left_side => $thingy; # ok 14 - $foo and'bar'; # ok 15 - $foo cmp'bar'; # ok 16 - $foo eq'bar'; # ok 17 - $foo ge'bar'; # ok 18 - $foo gt'bar'; # ok 19 - $foo le'bar'; # ok 20 - $foo lt'bar'; # ok 21 - $foo ne'bar'; # ok 22 - not'bar'; # ok 23 - $foo or'bar'; # ok 24 - $foo x'bar'; # ok 25 - $foo xor'bar'; # ok 26 - q'foo'; # ok 27 - qq'foo'; # ok 28 - qr'foo'; # ok 29 - qw'foo'; # ok 30 - qx'foo'; # ok 31 - m'foo'; # ok 32 - s'foo'bar'; # ok 33 - tr'fo'ba'; # ok 34 - y'fo'ba'; # ok 35 - abs'3'; # ok 36 - accept'1234',2345; # ok 37 - alarm'5'; # ok 38 - atan2'5'; # ok 39 - bind'5',""; # ok 40 - binmode'5'; # ok 41 - bless'foo', 'bar'; # ok 42 - break when 1; # ok 43 - caller'3'; # ok 44 - chdir'foo'; # ok 45 - chmod'0777', 'foo'; # ok 46 - chomp'a'; # ok 47 - chop'a'; # ok 48 - chown'a'; # ok 49 - chr'32'; # ok 50 - chroot'a'; # ok 51 - close'1'; # ok 52 - closedir'1'; # ok 53 - connect'1234',$foo; # ok 54 - continue; # ok 55 - cos'3'; # ok 56 - crypt'foo', 'bar'; # ok 57 - dbmclose'foo'; # ok 58 - dbmopen'foo','bar'; # ok 59 - default {} # defined'foo'; # ok 60 - delete'foo'; # ok 61 - die'foo'; # ok 62 - do'foo'; # ok 63 - dump'foo'; # ok 64 - each'foo'; # ok 65 - else {}; # ok 66 - elsif {}; # ok 67 - endgrent; # ok 68 - endhostent; # ok 69 - endnetent; # ok 70 - endprotoent; # ok 71 - endpwent; # ok 72 - endservent; # ok 73 - eof'foo'; # ok 74 - eval'foo'; # ok 75 - evalbytes'foo'; # ok 76 - exec'foo'; # ok 77 - exists'foo'; # ok 78 - exit'foo'; # ok 79 - exp'foo'; # ok 80 - fc'foo'; # ok 81 - fcntl'1'; # ok 82 - fileno'1'; # ok 83 - flock'1', LOCK_EX; # ok 84 - fork; # ok 85 - format # = # . # formline'@',1; # ok 86 - getc'1'; # ok 87 - getgrent; # ok 88 - getgrgid'1'; # ok 89 - getgrnam'foo'; # ok 90 - gethostbyaddr'1', AF_INET; # ok 91 - gethostbyname'foo'; # ok 92 - gethostent; # ok 93 - getlogin; # ok 94 - getnetbyaddr'1', AF_INET; # ok 95 - getnetbyname'foo'; # ok 96 - getnetent; # ok 97 - getpeername'foo'; # ok 98 - getpgrp'1'; # ok 99 - getppid; # ok 100 - getpriority'1',2; # ok 101 - getprotobyname'tcp'; # ok 102 - getprotobynumber'6'; # ok 103 - getprotoent; # ok 104 - getpwent; # ok 105 - getpwnam'foo'; # ok 106 - getpwuid'1'; # ok 107 - getservbyname'foo', 'bar'; # ok 108 - getservbyport'23', 'tcp'; # ok 109 - getservent; # ok 110 - getsockname'foo'; # ok 111 - getsockopt'foo', 'bar', TCP_NODELAY; # ok 112 - glob'foo'; # ok 113 - gmtime'1'; # ok 114 - goto'label'; # ok 115 - hex'1'; # ok 116 - index'1','foo'; # ok 117 - int'1'; # ok 118 - ioctl'1',1; # ok 119 - join'a',@foo; # ok 120 - keys'foo'; # ok 121 - kill'KILL'; # ok 122 - last'label'; # ok 123 - lc'foo'; # ok 124 - lcfirst'foo'; # ok 125 - length'foo'; # ok 126 - link'foo','bar'; # ok 127 - listen'1234',10; # ok 128 - local'foo'; # ok 129 - localtime'1'; # ok 130 - lock'foo'; # ok 131 - log'foo'; # ok 132 - lstat'foo'; # ok 133 - mkdir'foo'; # ok 134 - msgctl'1','foo',1; # ok 135 - msgget'1',1; # ok 136 - msgrcv'1',$foo,1,1,1; # ok 137 - msgsnd'1',$foo,1; # ok 138 - my $foo; # ok 139 - next'label'; # ok 140 - oct'foo'; # ok 141 - open'foo'; # ok 142 - opendir'foo'; # ok 143 - ord'foo'; # ok 144 - our $foo; # ok 145 - pack'H*',$data; # ok 146 - pipe'in','out'; # ok 147 - pop'foo'; # ok 148 - pos'foo'; # ok 149 - print'foo'; # ok 150 - printf'foo','bar'; # ok 151 - prototype'foo'; # ok 152 - push'foo','bar'; # ok 153 - quotemeta'foo'; # ok 154 - rand'1'; # ok 155 - read'1',$foo,100; # ok 156 - readdir'1'; # ok 157 - readline'1'; # ok 158 - readlink'1'; # ok 159 - readpipe'1'; # ok 160 - recv'1',$foo,100,1; # ok 161 - redo'label'; # ok 162 - ref'foo'; # ok 163 - rename'foo','bar'; # ok 164 - require'foo'; # ok 165 - reset'f'; # ok 166 - return'foo'; # ok 167 - reverse'foo','bar'; # ok 168 - rewinddir'1'; # ok 169 - rindex'1','foo'; # ok 170 - rmdir'foo'; # ok 171 - say'foo'; # ok 172 - scalar'foo','bar'; # ok 173 - seek'1',100,0; # ok 174 - seekdir'1',100; # ok 175 - select'1'; # ok 176 - semctl'1',1,1; # ok 177 - semget'foo',1,1; # ok 178 - semop'foo','bar'; # ok 179 - send'1',$foo'100,1; # ok 180 - setgrent'foo'; # ok 181 - sethostent'1'; # ok 182 - setnetent'1'; # ok 183 - setpgrp'1',2; # ok 184 - setpriority'1',2, 3; # ok 185 - setprotoent'1'; # ok 186 - setpwent'foo'; # ok 187 - setservent'1'; # ok 188 - setsockopt'1',2,'foo',3; # ok 189 - shift'1','2'; # ok 190 - shmctl'1',2,$foo; # ok 191 - shmget'1',2,1; # ok 192 - shmread'1',$foo,0,10; # ok 193 - shmwrite'1',$foo,0,10; # ok 194 - shutdown'1',0; # ok 195 - sin'1'; # ok 196 - sleep'1'; # ok 197 - socket'1',2,3,6; # ok 198 - socketpair'1',2,3,4,6; # ok 199 - splice'1',2; # ok 200 - split'1','foo'; # ok 201 - sprintf'foo','bar'; # ok 202 - sqrt'1'; # ok 203 - srand'1'; # ok 204 - stat'foo'; # ok 205 - state $foo; # ok 206 - study'foo'; # ok 207 - substr'foo',1; # ok 208 - symlink'foo','bar'; # ok 209 - syscall'foo'; # ok 210 - sysopen'foo','bar',1; # ok 211 - sysread'1',$bar,1; # ok 212 - sysseek'1',0,0; # ok 213 - system'foo'; # ok 214 - syswrite'1',$bar,1; # ok 215 - tell'1'; # ok 216 - telldir'1'; # ok 217 - tie'foo',$bar; # ok 218 - tied'foo'; # ok 219 - time; # ok 220 - times; # ok 221 - truncate'foo',1; # ok 222 - uc'foo'; # ok 223 - ucfirst'foo'; # ok 224 - umask'foo'; # ok 225 - undef'foo'; # ok 226 - unlink'foo'; # ok 227 - unpack'H*',$data; # ok 228 - unshift'1'; # ok 229 - untie'foo'; # ok 230 - utime'1','2'; # ok 231 - values'foo'; # ok 232 - vec'1',0.0; # ok 233 - wait; # ok 234 - waitpid'1',0; # ok 235 - wantarray; # ok 236 - warn'foo'; # ok 237 - when('foo') {} # ok 238 - write'foo'; # ok 239 - 1 for'foo'; # ok 240 - 1 foreach'foo'; # ok 241 - 1 if'foo'; # ok 242 - 1 unless'foo'; # ok 243 - 1 until'foo'; # ok 244 - 1 while'foo'; # 1..244 ok t/PPR_ERROR.t .................... 1..15 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok 6 - 2: Error source identified ok 7 - 2: Prefix identified ok 8 - 2: Line identified ok 9 - 2: Line with offset identified ok 10 - 2: Diagnostic identified ok 11 - 3: Error source identified ok 12 - 3: Prefix identified ok 13 - 3: Line identified ok 14 - 3: Line with offset identified ok 15 - 3: Diagnostic identified ok t/PPR_ERROR_multiple.t ........... 1..15 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok 6 - 2: Error source identified ok 7 - 2: Prefix identified ok 8 - 2: Line identified ok 9 - 2: Line with offset identified ok 10 - 2: Diagnostic identified ok 11 - 3: Error source identified ok 12 - 3: Prefix identified ok 13 - 3: Line identified ok 14 - 3: Line with offset identified ok 15 - 3: Diagnostic identified ok t/PPR_ERROR_trailing.t ........... 1..5 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok t/PPR_GRAMMAR_placement.t ........ 1..3 ok 1 - $PPR::GRAMMAR at end ok 2 - $PPR::GRAMMAR at start ok 3 - $PPR::GRAMMAR in middle ok t/PPR_X.t ........................ 1..5 ok 1 - Extended expression matched ok 2 - Extended statement matched ok 3 - Extended statement within document matched ok 4 - Did not match English connectives ok 5 - Matched Latin connectives ok t/qr_combine.t ................... ok 1 - inline DEFINE + interpolated grammar inside of qr// ok 2 - interpolate DEFINE + interpolate grammar inside of qr ok 3 - concatenate regex in string then interpolate inside of qr// 1..3 ok t/quotelike_misc.t ............... ok 1 - MATCH: /\N{ SPACE } \x{ 20AC } \d{ 1,9 }/ # ok 2 - MATCH: m{ x{,9} } # ok 3 - MATCH: m{^$DRIVE_RX[\\/]}o # ok 4 - MATCH: m/[@\#]_ # / # ok 5 - MATCH: m{^(.*)::(.*)$} # ok 6 - MATCH: s(a){b} # ok 7 - MATCH: s (a) # /b/ # ok 8 - MATCH: q(d) # ok 9 - MATCH: qq(e) # ok 10 - MATCH: qx(f) # ok 11 - MATCH: qr(g) # ok 12 - MATCH: qw(h i j) # ok 13 - MATCH: < pairs and escaped \}'s } # ok 25 - MATCH: '' # ok 26 - MATCH: "" # ok 27 - MATCH: "a" # ok 28 - MATCH: 'b' # ok 29 - MATCH: `cc` # ok 30 - MATCH: "this is a nested $var[$x] {" # ok 31 - MATCH: /a/gci # ok 32 - MATCH: m/a/gci # ok 33 - MATCH: q{d} # ok 34 - MATCH: qq{e} # ok 35 - MATCH: qx{f} # ok 36 - MATCH: qr{g} # ok 37 - MATCH: q/slash/ # ok 38 - MATCH: q\# slash \# # ok 39 - MATCH: qr qw qx # ok 40 - MATCH: s/x/y/ # ok 41 - MATCH: s/x/y/cgimsox # ok 42 - MATCH: s{a}{b} # ok 43 - MATCH: s{a} # {b} # ok 44 - MATCH: s/'/\\'/g # ok 45 - MATCH: s;';\\\\t\#\\$d\#; # ok 46 - MATCH: tr/x/y/ # ok 47 - MATCH: y/x/y/ # ok 48 - FAIL: q \# slash \# # ok 49 - FAIL: s-$self->{pap}-$self->{sub}- \# CAN'T HANDLE '-' in '->' # ok 50 - FAIL: q<$self->{pat}> # ok 51 - FAIL: qq<$self->{pat}> # ok 52 - FAIL: qr<$self->{pat}> # ok 53 - FAIL: qx<$self->{pat}> # ok 54 - FAIL: s<$self->{pat}>{$self->{sub}} # 1..54 ok t/quotelike_noninerpolating.t .... 1..8 ok 1 - qr ok 2 - m ok 3 - s ok 4 - qx ok 5 - $@ should match a (?&PerlScalarAccessNoSpace) ok 6 - $_ should match a (?&PerlScalarAccessNoSpace) ok 7 - $etc should match a (?&PerlScalarAccessNoSpace) ok 8 - qq ok t/quotelike_s_e.t ................ ok 1 - MATCH: # s/${\<, "baz"; # ok 3 - MATCH: require 'Module.pm'; # ok 4 - MATCH: require 5.014; # ok 5 - MATCH: require 5.14.0; # ok 6 - MATCH: require 5.014_000; # ok 7 - MATCH: require 5.14.0; # ok 8 - MATCH: require 5.14; # ok 9 - MATCH: require Module; # ok 10 - MATCH: require v5.14.0; # ok 11 - MATCH: use 5.014; # ok 12 - MATCH: use 5.014_000; # ok 13 - MATCH: use 5.14.0; # ok 14 - MATCH: use 5.14; # ok 15 - MATCH: use Float::Version 1.5; # ok 16 - MATCH: use Foo 'bar'; \# One thing. # ok 17 - MATCH: use Foo 5 'bar'; \# One thing. # ok 18 - MATCH: use Foo 5; \# Don't expect anything. # ok 19 - MATCH: use Foo; \# Don't expect anything. # ok 20 - MATCH: use Integer::Version 1; # ok 21 - MATCH: use Module 1.00; # ok 22 - MATCH: use Module; # ok 23 - MATCH: use No::Version::With::Argument 'x'; # ok 24 - MATCH: use No::Version; # ok 25 - MATCH: use Test::More tests => 5 * 9; # ok 26 - MATCH: use Version::With::Argument 1 2; # ok 27 - MATCH: use v5.14.0; # ok 28 - MATCH: no 5.014; # ok 29 - MATCH: no 5.014_000; # ok 30 - MATCH: no 5.14.0; # ok 31 - MATCH: no 5.14; # ok 32 - MATCH: no Float::Version 1.5; # ok 33 - MATCH: no Foo 'bar'; \# One thing. # ok 34 - MATCH: no Foo 5 'bar'; \# One thing. # ok 35 - MATCH: no Foo 5; \# Don't expect anything. # ok 36 - MATCH: no Foo qw< bar >, "baz"; # ok 37 - MATCH: no Foo; \# Don't expect anything. # ok 38 - MATCH: no Integer::Version 1; # ok 39 - MATCH: no Module 1.00; # ok 40 - MATCH: no Module; # ok 41 - MATCH: no No::Version::With::Argument 'x'; # ok 42 - MATCH: no No::Version::With::Arguments 1, 2; # ok 43 - MATCH: no No::Version; # ok 44 - MATCH: no Test::More tests => 5 * 9; # ok 45 - MATCH: no Version::With::Argument 1 2; # ok 46 - MATCH: no v5.14.0; # 1..46 ok t/statement_variable.t ........... ok 1 - MATCH: package Bar; # ok 2 - MATCH: my $foo = 1; # ok 3 - MATCH: my ( $foo, $bar) = (1, 2); # ok 4 - MATCH: our $foo = 1; # ok 5 - MATCH: local $foo; # ok 6 - MATCH: local $foo = 1; # ok 7 - MATCH: LABEL: my $foo = 1; # ok 8 - MATCH: local($foo = $bar->$bar(), $bar); # 1..8 ok t/sub_END.t ...................... 1..3 ok 1 - Matched sub __END__ ok 2 - Matched sub __DATA__ ok 3 - Matched sub __OTHER__ ok t/subdecl.t ...................... 1..9 ok 1 - or_equals ok 2 - doh_equals ok 3 - AUTOLOAD ok 4 - DESTROY ok 5 - &DESTROY(); ok 6 - DESTROY(); ok 7 - protofirst ok 8 - protolast ok 9 - unnamed ok t/substitution_ge.t .............. # Subtest: s<(RE)>< $var{x} // croak() >ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: > ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 1 - s<(RE)>< $var{x} // croak() >ge # # Subtest: s[(RE)][ $var{x} // croak() ]ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 2 - s[(RE)][ $var{x} // croak() ]ge # # Subtest: s{(RE)}{ $var{x} // croak() }ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 3 - s{(RE)}{ $var{x} // croak() }ge # # Subtest: s((RE))( $var{x} // croak() )ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 4 - s((RE))( $var{x} // croak() )ge # # Subtest: s"(RE)" $var{x} // croak() "ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 5 - s"(RE)" $var{x} // croak() "ge # # Subtest: s%(RE)% $var{x} // croak() %ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: % ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Interim-matched extra binary expression: %ge ok 5 - Matched METAREGEX 1..5 ok 6 - s%(RE)% $var{x} // croak() %ge # # Subtest: s'(RE)' $var{x} // croak() 'ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 7 - s'(RE)' $var{x} // croak() 'ge # # Subtest: s+(RE)+ $var{x} // croak() +ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: + ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 8 - s+(RE)+ $var{x} // croak() +ge # # Subtest: s,(RE), $var{x} // croak() ,ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 9 - s,(RE), $var{x} // croak() ,ge # # Subtest: s/(RE)/ $var{x} || croak() /ge ok 1 - Found infix: || ok 2 - Interim-matched extra infix: / ok 3 - Found correct binary expression: $var{x} || croak() ok 4 - Matched METAREGEX 1..4 ok 10 - s/(RE)/ $var{x} || croak() /ge # # Subtest: s@(RE)@ $var{x} // croak() @ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Interim-matched extra binary expression: @ge ok 4 - Matched METAREGEX 1..4 ok 11 - s@(RE)@ $var{x} // croak() @ge # # Subtest: s|(RE)| $var{x} // croak() |ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: | ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 12 - s|(RE)| $var{x} // croak() |ge # 1..12 ok t/token_quote.t .................. ok 1 - MATCH: 'foo' # ok 2 - MATCH: "foo" # ok 3 - MATCH: q{foo} # ok 4 - MATCH: q[foo] # ok 5 - MATCH: q # ok 6 - MATCH: q(foo) # ok 7 - MATCH: q/foo/ # ok 8 - MATCH: q\#foo\# # ok 9 - MATCH: q=foo= # ok 10 - MATCH: q qfooq # ok 11 - MATCH: qq{foo} # ok 12 - MATCH: qq[foo] # ok 13 - MATCH: qq # ok 14 - MATCH: qq(foo) # ok 15 - MATCH: qq/foo/ # ok 16 - MATCH: qq\#foo\# # ok 17 - MATCH: qq=foo= # ok 18 - MATCH: qq qfooq # ok 19 - MATCH: q {foo} # ok 20 - MATCH: q [foo] # ok 21 - MATCH: q # ok 22 - MATCH: q (foo) # ok 23 - MATCH: q /foo/ # ok 24 - MATCH: q =foo= # ok 25 - MATCH: qq {foo} # ok 26 - MATCH: qq [foo] # ok 27 - MATCH: qq # ok 28 - MATCH: qq (foo) # ok 29 - MATCH: qq /foo/ # ok 30 - MATCH: qq =foo= # ok 31 - FAIL: # ok 32 - FAIL: q \#foo\# # ok 33 - FAIL: qq \#foo\# # 1..33 ok t/token_quote_double.t ........... ok 1 - MATCH: "no interpolations" # ok 2 - MATCH: "no \@interpolations" # ok 3 - MATCH: "has $interpolation" # ok 4 - MATCH: "has @interpolation" # ok 5 - MATCH: "has \\@interpolation" # ok 6 - MATCH: "" # ok 7 - MATCH: "no special characters" # ok 8 - MATCH: "has \"double\" quotes" # ok 9 - MATCH: "has 'single' quotes" # ok 10 - MATCH: "has $interpolation" # ok 11 - MATCH: "has @interpolation" # 1..11 ok t/token_quote_single.t ........... ok 1 - MATCH [40]: '' # ok 2 - MATCH [42]: 'f' # ok 3 - MATCH [44]: 'f\'b' # ok 4 - MATCH [46]: 'f\nb' # ok 5 - MATCH [48]: 'f\\b' # ok 6 - MATCH [50]: 'f\\\b' # ok 7 - MATCH [52]: 'f\\\'' # ok 8 - MATCH [54]: q// # ok 9 - MATCH [56]: q/f/ # ok 10 - MATCH [58]: q/f\'b/ # ok 11 - MATCH [60]: q/f\nb/ # ok 12 - MATCH [62]: q/f\\b/ # ok 13 - MATCH [64]: q/f\\\b/ # ok 14 - MATCH [66]: q/f\\'/ # ok 15 - MATCH [68]: q/f\\\// # ok 16 - MATCH [70]: q!! # ok 17 - MATCH [72]: q!f! # ok 18 - MATCH [74]: q!f\'b! # ok 19 - MATCH [76]: q !f\nb! # ok 20 - MATCH [79]: q # !f\\b! # ok 21 - MATCH [84]: q # ! # f\\\b # ! # ok 22 - MATCH [86]: q!f\\'! # ok 23 - MATCH [88]: q!f\\\!! # ok 24 - MATCH [90]: q{} # ok 25 - MATCH [92]: q{f} # ok 26 - MATCH [94]: q {f\'b} # ok 27 - MATCH [100]: q # { # {{{f\nb}}} # ([< # } # ok 28 - MATCH [102]: q{f\\b} # ok 29 - MATCH [104]: q{f\\\b} # ok 30 - MATCH [106]: q{f\\'} # ok 31 - MATCH [108]: q{f\\\}} # ok 32 - MATCH [110]: q[] # ok 33 - MATCH [112]: q[f] # ok 34 - MATCH [114]: q [f\'b] # ok 35 - MATCH [119]: q # [ # f\nb # ] # ok 36 - MATCH [121]: q[f\\b] # ok 37 - MATCH [123]: q[f\\\b] # ok 38 - MATCH [125]: q[f\\'] # ok 39 - MATCH [127]: q[f\\\]] # ok 40 - MATCH [129]: q<> # ok 41 - MATCH [131]: q # ok 42 - MATCH [133]: q # ok 43 - MATCH [139]: q # < # <<<>>> # {[( # > # ok 44 - MATCH [141]: q # ok 45 - MATCH [143]: q # ok 46 - MATCH [145]: q # ok 47 - MATCH [147]: q> # ok 48 - MATCH [149]: q() # ok 49 - MATCH [151]: q(f) # ok 50 - MATCH [153]: q (f\'b) # ok 51 - MATCH [159]: q \# Comment here # ( # ((f\nb)) # {[< # ) # ok 52 - MATCH [161]: q(f\\b) # ok 53 - MATCH [163]: q(f\\\b) # ok 54 - MATCH [165]: q(f\\') # ok 55 - MATCH [167]: q(f\\\)) # ok 56 - FAIL [170]: '\\'' # ok 57 - FAIL [172]: '''' # ok 58 - FAIL [174]: 'f\\\\'' # ok 59 - FAIL [176]: q/\\' # ok 60 - FAIL [178]: q{\\' # ok 61 - FAIL [182]: q { # { # } # ok 62 - FAIL [184]: q <\\' # ok 63 - FAIL [187]: q # [\\' # ok 64 - FAIL [189]: q(\\' # ok 65 - FAIL [191]: q q\\' # ok 66 - FAIL [193]: q =\\' # 1..66 ok t/token_quotelike_words.t ........ ok 1 - MATCH: qw/foo bar baz/ # ok 2 - MATCH: qw/ foo bar baz / # ok 3 - MATCH: qw # { # )foo # {bar} # method_with_parentheses($a ? $b : $c); # ok 2 - MATCH: pack'H*',$data; # ok 3 - MATCH: unpack'H*',$data; # ok 4 - MATCH: Foo'Bar; # ok 5 - MATCH: Foo::Bar; # ok 6 - MATCH: F; # ok 7 - MATCH: indirect $foo; # ok 8 - MATCH: indirect_class_with_colon Foo::; # ok 9 - MATCH: $bar->method_with_parentheses; # ok 10 - MATCH: $bar->method_with_parentheses(); # ok 11 - MATCH: $bar->method_with_parentheses(1,'2',qr{3}); # ok 12 - MATCH: print SomeClass->method_without_parentheses + 1; # ok 13 - MATCH: print SomeClass->method_with_parentheses() + 1; # ok 14 - MATCH: sub_call(); # ok 15 - MATCH: $baz->chained_from->chained_to; # ok 16 - MATCH: a_first_thing a_middle_thing a_last_thing; # ok 17 - MATCH: (first_list_element, second_list_element, third_list_element); # ok 18 - MATCH: first_comma_separated_word, second_comma_separated_word, third_comma_separated_word; # ok 19 - MATCH: single_bareword_statement; # ok 20 - MATCH: { bareword_no_semicolon_end_of_block } # ok 21 - MATCH: $buz{hash_key}; # ok 22 - MATCH: fat_comma_left_side => $thingy; # ok 23 - MATCH: $foo eq'bar'; # ok 24 - MATCH: $foo ne'bar'; # ok 25 - MATCH: $foo ge'bar'; # ok 26 - MATCH: $foo le'bar'; # ok 27 - MATCH: $foo gt'bar'; # ok 28 - MATCH: $foo lt'bar'; # ok 29 - MATCH: q'foo'; # ok 30 - MATCH: qq'foo'; # ok 31 - MATCH: qx'foo'; # ok 32 - MATCH: qw'foo'; # ok 33 - MATCH: qr'foo'; # ok 34 - MATCH: m'foo'; # ok 35 - MATCH: s'foo'bar'; # ok 36 - MATCH: tr'fo'ba'; # ok 37 - MATCH: y'fo'ba'; # 1..37 ok t/trycatch.t ..................... 1..1 ok 1 ok t/trytiny.t ...................... 1..6 ok 1 - catch {...} interpreted as sub call ok 2 - try {...} interpreted as sub call ok 3 - Try/catch as statement ok 4 - catch {...} interpreted as sub call ok 5 - try {...} interpreted as sub call ok 6 - Try/catch as expression ok t/unpunctuated.t ................. 1..4 ok 1 - matched blokhead's wonderful JAPH! ok 2 - Redirected output ok 3 - Executed JAPH ok 4 - JAPH is correct ok t/vars.t ......................... ok 1 - $\# special case ok 2 - MATCH: $\# ok 3 - MATCH: $\#- ok 4 - MATCH: @{$obj->nextval($cat ? $dog : $fish)} ok 5 - MATCH: @{$obj->nextval($cat?$dog:$fish)->{new}} ok 6 - MATCH: @{$obj->nextval(cat()?$dog:$fish)->{new}} ok 7 - MATCH: @{$obj->nextval} ok 8 - MATCH: @{$obj->nextval($cat,$dog)->{new}} ok 9 - MATCH: $obj->nextval ok 10 - MATCH: $obj->_nextval ok 11 - MATCH: $obj->next_val_ ok 12 - MATCH: $::obj ok 13 - MATCH: %::obj:: ok 14 - MATCH: $a ok 15 - MATCH: $ a ok 16 - MATCH: $ # a ok 17 - MATCH: ${a} ok 18 - MATCH: $_ ok 19 - MATCH: $ _ ok 20 - MATCH: ${_} ok 21 - MATCH: $a[1] ok 22 - MATCH: @a[1] ok 23 - MATCH: %a[1] ok 24 - MATCH: @a[1,2,3] ok 25 - MATCH: %a[1,2,3] ok 26 - MATCH: @a[somefunc x 3] ok 27 - MATCH: %a[somefunc x 3] ok 28 - MATCH: $_[1] ok 29 - MATCH: $a{cat} ok 30 - MATCH: @a{cat} ok 31 - MATCH: %a{cat} ok 32 - MATCH: @a{qw} ok 33 - MATCH: %a{'cat',"dog"} ok 34 - MATCH: @a{somefunc $x, $y} ok 35 - MATCH: %a{somefunc($x, $y) x 3} ok 36 - MATCH: $_{cat} ok 37 - MATCH: $a->[1] ok 38 - MATCH: $a->{"cat"}[1] ok 39 - MATCH: @$listref ok 40 - MATCH: @{$listref} ok 41 - MATCH: @{ 'x' x $x } ok 42 - MATCH: $ a {'cat'} ok 43 - MATCH: $ # a # { # x # } ok 44 - MATCH: $a::b::c{d}->{$e->()} ok 45 - MATCH: $a'b'c'd{e}->{$e->()} ok 46 - MATCH: $a'b::c'd{e}->{$e->()} ok 47 - MATCH: $\#_ ok 48 - MATCH: $\#array ok 49 - MATCH: $\#{array} ok 50 - MATCH: $var[$\#var] ok 51 - MATCH: $1 ok 52 - MATCH: $11 ok 53 - MATCH: $& ok 54 - MATCH: $` ok 55 - MATCH: $' ok 56 - MATCH: $+ ok 57 - MATCH: $* ok 58 - MATCH: $. ok 59 - MATCH: $/ ok 60 - MATCH: $| ok 61 - MATCH: $, ok 62 - MATCH: $" ok 63 - MATCH: $; ok 64 - MATCH: $% ok 65 - MATCH: $= ok 66 - MATCH: $- ok 67 - MATCH: $~ ok 68 - MATCH: $^ ok 69 - MATCH: $: ok 70 - MATCH: $^L ok 71 - MATCH: $^A ok 72 - MATCH: $? ok 73 - MATCH: $! ok 74 - MATCH: $^E ok 75 - MATCH: $@ ok 76 - MATCH: $< ok 77 - MATCH: $> ok 78 - MATCH: $( ok 79 - MATCH: $) ok 80 - MATCH: $[ ok 81 - MATCH: $] ok 82 - MATCH: $^C ok 83 - MATCH: $^D ok 84 - MATCH: $^F ok 85 - MATCH: $^H ok 86 - MATCH: $^I ok 87 - MATCH: $^M ok 88 - MATCH: $^O ok 89 - MATCH: $^P ok 90 - MATCH: $^R ok 91 - MATCH: $^S ok 92 - MATCH: $^T ok 93 - MATCH: $^V ok 94 - MATCH: $^W ok 95 - MATCH: ${^WARNING_BITS} ok 96 - MATCH: ${^WIDE_SYSTEM_CALLS} ok 97 - MATCH: $^X ok 98 - MATCH: $[ ok 99 - MATCH: $$ ok 100 - MATCH: %- ok 101 - MATCH: $$foo ok 102 - MATCH: $^W ok 103 - MATCH: ${^MATCH} ok 104 - MATCH: $${^MATCH} ok 105 - MATCH: @{^_Bar} ok 106 - MATCH: ${^_Bar}[0] ok 107 - MATCH: %{^_Baz} ok 108 - MATCH: ${^_Baz}{burfle} ok 109 - FAIL: $^WIDE_SYSTEM_CALLS ok 110 - FAIL: $a-> ok 111 - FAIL: @{$ ok 112 - FAIL: $ a :: b :: c ok 113 - FAIL: $ a ' b ' c ok 114 - FAIL: \${^MATCH} ok 115 - FAIL: *var ok 116 - FAIL: *$var ok 117 - FAIL: *{var} ok 118 - FAIL: *{$var} ok 119 - FAIL: *var{cat} ok 120 - FAIL: \&var ok 121 - FAIL: \&mod::var ok 122 - FAIL: \&mod'var ok 123 - FAIL: $a-> ok 124 - FAIL: $a (1..3) { print $a } 1..124 ok t/yadayadayada.t ................. 1..3 ok 1 - Pure yada ok 2 - Partial yada ok 3 - Not an expression ok All tests successful. Files=75, Tests=1253, 27 wallclock secs ( 0.32 usr 0.12 sys + 24.60 cusr 1.98 csys = 27.02 CPU) Result: PASS make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' create-stamp debian/debhelper-build-stamp dh_prep dh_auto_install --destdir=debian/libppr-perl/ make -j11 install DESTDIR=/build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl AM_UPDATE_INFO_DIR=no PREFIX=/usr make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' Manifying 2 pod documents Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/perl5/PPR.pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/perl5/PPR/X.pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/man/man3/PPR.3pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/man/man3/PPR::X.3pm make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' dh_installdocs dh_installchangelogs dh_installman dh_perl dh_link dh_strip_nondeterminism dh_compress dh_fixperms dh_missing dh_installdeb dh_gencontrol dh_md5sums dh_builddeb dpkg-deb: building package 'libppr-perl' in '../libppr-perl_0.001010-2_all.deb'. dpkg-genbuildinfo --build=binary -O../libppr-perl_0.001010-2_i386.buildinfo dpkg-genchanges --build=binary -O../libppr-perl_0.001010-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/62850 and its subdirectories I: Current time: Fri Nov 22 08:31:48 -12 2024 I: pbuilder-time-stamp: 1732307508 Fri Nov 22 20:31:49 UTC 2024 I: 1st build successful. Starting 2nd build on remote node ionos6-i386.debian.net. Fri Nov 22 20:31:49 UTC 2024 I: Preparing to do remote build '2' on ionos6-i386.debian.net. Fri Nov 22 20:31:49 UTC 2024 - checking /var/lib/jenkins/offline_nodes if ionos6-i386.debian.net is marked as down. Fri Nov 22 20:31:49 UTC 2024 - checking via ssh if ionos6-i386.debian.net is up. removed '/tmp/read-only-fs-test-0H2X4k' ==================================================================================== Fri Dec 26 02:54:50 UTC 2025 - running /srv/jenkins/bin/reproducible_build.sh (for job /srv/jenkins/bin/reproducible_build.sh) on ionos6-i386, called using "2 libppr-perl unstable /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr 0.001010-2" as arguments. Fri Dec 26 02:54:50 UTC 2025 - actually running "reproducible_build.sh" (md5sum 68e686e434c9ab7bc3ec047d8b309cbc) as "/tmp/jenkins-script-sHo0Tv8C" $ git clone https://salsa.debian.org/qa/jenkins.debian.net.git ; more CONTRIBUTING Fri Dec 26 02:54:50 UTC 2025 I: Downloading source for unstable/libppr-perl=0.001010-2 Reading package lists... NOTICE: 'libppr-perl' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git Please use: git clone https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 106 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (dsc) [2331 B] Get:2 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (tar) [102 kB] Get:3 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (diff) [1840 B] Fetched 106 kB in 0s (3678 kB/s) Download complete and in download only mode Reading package lists... NOTICE: 'libppr-perl' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git Please use: git clone https://salsa.debian.org/perl-team/modules/packages/libppr-perl.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 106 kB of source archives. Get:1 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (dsc) [2331 B] Get:2 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (tar) [102 kB] Get:3 http://deb.debian.org/debian unstable/main libppr-perl 0.001010-2 (diff) [1840 B] Fetched 106 kB in 0s (3678 kB/s) Download complete and in download only mode ============================================================================= Re-Building libppr-perl in unstable on i386 on ionos6-i386 now. Date: Fri Dec 26 03:54:50 CET 2025 Date UTC: Fri Dec 26 02:54:50 UTC 2025 ============================================================================= ++ mktemp -t pbuilderrc_XXXX --tmpdir=/srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr + local TMPCFG=/srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/pbuilderrc_3cPV + case ${ARCH} in + let NUM_CPU-=3 + case $ARCH in + locale=de_CH + language=de + case "${SUITE}" in + reproducible_buildflags=+all + extra_deb_build_options= + case "${SRCPACKAGE}" in + cat + echo BUILDDIR=/build/reproducible-path + '[' libppr-perl = debian-installer -o libppr-perl = debian-installer-netboot-images ']' + pbuilder_options=() + local pbuilder_options + DEBBUILDOPTS=-b + BINARYTARGET= + '[' libppr-perl = u-boot ']' + case "${SRCPACKAGE}" in + PBUILDERTIMEOUT=24 + local PRESULT=0 + sudo timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/pbuilderrc_3cPV --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b2 --logfile b2/build.log libppr-perl_0.001010-2.dsc W: /root/.pbuilderrc does not exist I: Logging to b2/build.log I: pbuilder: network access will be disabled during build I: Current time: Fri Dec 26 16:54:50 +14 2025 I: pbuilder-time-stamp: 1766717690 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [libppr-perl_0.001010-2.dsc] I: copying [./libppr-perl_0.001010.orig.tar.gz] I: copying [./libppr-perl_0.001010-2.debian.tar.xz] I: Extracting source gpgv: Signature made Fri Oct 11 15:40:53 2024 gpgv: using RSA key D1E1316E93A760A8104D85FABB3A68018649AA06 gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./libppr-perl_0.001010-2.dsc: no acceptable signature found dpkg-source: info: extracting libppr-perl in libppr-perl-0.001010 dpkg-source: info: unpacking libppr-perl_0.001010.orig.tar.gz dpkg-source: info: unpacking libppr-perl_0.001010-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D01_modify_environment starting debug: Running on ionos6-i386. I: Changing host+domainname to test build reproducibility I: Adding a custom variable just for the fun of it... I: Changing /bin/sh to bash '/bin/sh' -> '/bin/bash' lrwxrwxrwx 1 root root 9 Dec 26 02:54 /bin/sh -> /bin/bash I: Setting pbuilder2's login shell to /bin/bash I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D02_print_environment starting I: set BASH=/bin/sh BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=([0]="12" [1]="0") BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") BASH_VERSION='5.2.32(1)-release' BUILDDIR=/build/reproducible-path BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' BUILDUSERNAME=pbuilder2 BUILD_ARCH=i386 DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=21 ' DIRSTACK=() DISTRIBUTION=unstable EUID=0 FUNCNAME=([0]="Echo" [1]="main") GROUPS=() HOME=/root HOSTNAME=i-capture-the-hostname HOSTTYPE=i686 HOST_ARCH=i386 IFS=' ' INVOCATION_ID=7295146ea6994c799f4fb19450425033 LANG=C LANGUAGE=de_CH:de LC_ALL=C LD_LIBRARY_PATH=/usr/lib/libeatmydata LD_PRELOAD=libeatmydata.so MACHTYPE=i686-pc-linux-gnu MAIL=/var/mail/root OPTERR=1 OPTIND=1 OSTYPE=linux-gnu PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path PBCURRENTCOMMANDLINEOPERATION=build PBUILDER_OPERATION=build PBUILDER_PKGDATADIR=/usr/share/pbuilder PBUILDER_PKGLIBDIR=/usr/lib/pbuilder PBUILDER_SYSCONFDIR=/etc PIPESTATUS=([0]="0") POSIXLY_CORRECT=y PPID=67916 PS4='+ ' PWD=/ SHELL=/bin/bash SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix SHLVL=3 SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/pbuilderrc_3cPV --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b2 --logfile b2/build.log libppr-perl_0.001010-2.dsc' SUDO_GID=112 SUDO_UID=107 SUDO_USER=jenkins TERM=unknown TZ=/usr/share/zoneinfo/Etc/GMT-14 UID=0 USER=root _='I: set' http_proxy=http://213.165.73.152:3128 I: uname -a Linux i-capture-the-hostname 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), libtest-simple-perl, perl dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19952 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libdebhelper-perl{a} libelf1t64{a} libfile-stripnondeterminism-perl{a} libicu72{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libtool{a} libuchardet0{a} libxml2{a} m4{a} man-db{a} po-debconf{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx wget 0 packages upgraded, 29 newly installed, 0 to remove and 0 not upgraded. Need to get 20.1 MB of archives. After unpacking 75.7 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main i386 sensible-utils all 0.0.24 [24.8 kB] Get: 2 http://deb.debian.org/debian unstable/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB] Get: 3 http://deb.debian.org/debian unstable/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB] Get: 4 http://deb.debian.org/debian unstable/main i386 file i386 1:5.45-3+b1 [43.2 kB] Get: 5 http://deb.debian.org/debian unstable/main i386 gettext-base i386 0.22.5-2 [201 kB] Get: 6 http://deb.debian.org/debian unstable/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB] Get: 7 http://deb.debian.org/debian unstable/main i386 groff-base i386 1.23.0-5 [1196 kB] Get: 8 http://deb.debian.org/debian unstable/main i386 bsdextrautils i386 2.40.2-11 [95.6 kB] Get: 9 http://deb.debian.org/debian unstable/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB] Get: 10 http://deb.debian.org/debian unstable/main i386 man-db i386 2.13.0-1 [1428 kB] Get: 11 http://deb.debian.org/debian unstable/main i386 m4 i386 1.4.19-4 [293 kB] Get: 12 http://deb.debian.org/debian unstable/main i386 autoconf all 2.72-3 [493 kB] Get: 13 http://deb.debian.org/debian unstable/main i386 autotools-dev all 20220109.1 [51.6 kB] Get: 14 http://deb.debian.org/debian unstable/main i386 automake all 1:1.16.5-1.3 [823 kB] Get: 15 http://deb.debian.org/debian unstable/main i386 autopoint all 0.22.5-2 [723 kB] Get: 16 http://deb.debian.org/debian unstable/main i386 libdebhelper-perl all 13.20 [89.7 kB] Get: 17 http://deb.debian.org/debian unstable/main i386 libtool all 2.4.7-8 [517 kB] Get: 18 http://deb.debian.org/debian unstable/main i386 dh-autoreconf all 20 [17.1 kB] Get: 19 http://deb.debian.org/debian unstable/main i386 libarchive-zip-perl all 1.68-1 [104 kB] Get: 20 http://deb.debian.org/debian unstable/main i386 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 21 http://deb.debian.org/debian unstable/main i386 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 22 http://deb.debian.org/debian unstable/main i386 libelf1t64 i386 0.192-4 [195 kB] Get: 23 http://deb.debian.org/debian unstable/main i386 dwz i386 0.15-1+b1 [116 kB] Get: 24 http://deb.debian.org/debian unstable/main i386 libicu72 i386 72.1-5+b1 [9583 kB] Get: 25 http://deb.debian.org/debian unstable/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB] Get: 26 http://deb.debian.org/debian unstable/main i386 gettext i386 0.22.5-2 [1631 kB] Get: 27 http://deb.debian.org/debian unstable/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main i386 debhelper all 13.20 [915 kB] Fetched 20.1 MB in 0s (85.7 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19952 files and directories currently installed.) Preparing to unpack .../00-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../01-libmagic-mgc_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:i386. Preparing to unpack .../02-libmagic1t64_1%3a5.45-3+b1_i386.deb ... Unpacking libmagic1t64:i386 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../03-file_1%3a5.45-3+b1_i386.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../04-gettext-base_0.22.5-2_i386.deb ... Unpacking gettext-base (0.22.5-2) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../05-libuchardet0_0.0.8-1+b2_i386.deb ... Unpacking libuchardet0:i386 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../06-groff-base_1.23.0-5_i386.deb ... Unpacking groff-base (1.23.0-5) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../07-bsdextrautils_2.40.2-11_i386.deb ... Unpacking bsdextrautils (2.40.2-11) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../08-libpipeline1_1.5.8-1_i386.deb ... Unpacking libpipeline1:i386 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../09-man-db_2.13.0-1_i386.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../10-m4_1.4.19-4_i386.deb ... Unpacking m4 (1.4.19-4) ... Selecting previously unselected package autoconf. Preparing to unpack .../11-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../12-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../13-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../14-autopoint_0.22.5-2_all.deb ... Unpacking autopoint (0.22.5-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../15-libdebhelper-perl_13.20_all.deb ... Unpacking libdebhelper-perl (13.20) ... Selecting previously unselected package libtool. Preparing to unpack .../16-libtool_2.4.7-8_all.deb ... Unpacking libtool (2.4.7-8) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../17-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../18-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../19-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../20-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:i386. Preparing to unpack .../21-libelf1t64_0.192-4_i386.deb ... Unpacking libelf1t64:i386 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../22-dwz_0.15-1+b1_i386.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libicu72:i386. Preparing to unpack .../23-libicu72_72.1-5+b1_i386.deb ... Unpacking libicu72:i386 (72.1-5+b1) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../24-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ... Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../25-gettext_0.22.5-2_i386.deb ... Unpacking gettext (0.22.5-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../26-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../27-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../28-debhelper_13.20_all.deb ... Unpacking debhelper (13.20) ... Setting up libpipeline1:i386 (1.5.8-1) ... Setting up libicu72:i386 (72.1-5+b1) ... Setting up bsdextrautils (2.40.2-11) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.20) ... Setting up libmagic1t64:i386 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-2) ... Setting up m4 (1.4.19-4) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:i386 (0.192-4) ... Setting up autotools-dev (20220109.1) ... Setting up autopoint (0.22.5-2) ... Setting up autoconf (2.72-3) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:i386 (0.0.8-1+b2) ... Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up gettext (0.22.5-2) ... Setting up libtool (2.4.7-8) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-5) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up debhelper (13.20) ... Processing triggers for libc-bin (2.40-3) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: user script /srv/workspace/pbuilder/67916/tmp/hooks/A99_set_merged_usr starting Not re-configuring usrmerge for unstable I: user script /srv/workspace/pbuilder/67916/tmp/hooks/A99_set_merged_usr finished hostname: Name or service not known I: Running cd /build/reproducible-path/libppr-perl-0.001010/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../libppr-perl_0.001010-2_source.changes dpkg-buildpackage: info: source package libppr-perl dpkg-buildpackage: info: source version 0.001010-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by gregor herrmann dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 debian/rules clean dh clean dh_clean debian/rules binary dh binary dh_update_autotools_config dh_autoreconf dh_auto_configure /usr/bin/perl Makefile.PL INSTALLDIRS=vendor "OPTIMIZE=-g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libppr-perl-0.001010=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2" "LD=i686-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/libppr-perl-0.001010=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro" Checking if your kit is complete... Looks good Generating a Unix-style Makefile Writing Makefile for PPR Writing MYMETA.yml and MYMETA.json dh_auto_build make -j21 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' cp lib/PPR/X.pm blib/lib/PPR/X.pm cp lib/PPR.pm blib/lib/PPR.pm Manifying 2 pod documents make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' dh_auto_test make -j21 test TEST_VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t # Testing PPR 0.001010 t/00.load.t ...................... ok 1 - use PPR; 1..1 ok t/blocks.t ....................... ok 1 - MATCH: { # func1 / regex /; # func1 / regex ; # } # ok 2 - MATCH: { # time / regex; # func1 / regex /; # } # ok 3 - MATCH: { # func1 / regex; # } # ok 4 - MATCH: { # func1 / regex /; # } # ok 5 - MATCH: { # func1 / regex /; # func1 / regex; # } # ok 6 - MATCH: { sub { $_[0] /= $_[1] } } \# / here # ok 7 - MATCH: {$obj->method} # ok 8 - MATCH: { %x = () } # ok 9 - MATCH: { # $a = $b; # $x = $a / $b; # $a =~ /$b/; # /$c/; # @a = map /\s/, @b; # @a = map {/\s/} @b; # $not_pod # =head1 (); # } # ok 10 - MATCH: { # $a = $b; # $x = $a / $b; # # =head1 This is pod # # ...until the next # # =cut # # $a =~ /$b/; # /$c/; # # =pod # # more pod # # =cut # @a = map /\s/, @b; # @a = map {/\s/} @b # } # ok 11 - MATCH: { %x = ( try => "this") } # ok 12 - MATCH: {Foo(')')} # ok 13 - MATCH: { $data[4] =~ /['"]/; } # ok 14 - MATCH: { %x = ( $try->{this}, "too") } # ok 15 - MATCH: { %'x = ( $try->{this}, "too") } # ok 16 - MATCH: { %'x'y = ( $try->{this}, "too") } # ok 17 - MATCH: { %::x::y = ( $try->{this}, "too") } # ok 18 - MATCH: { $a = /\}/; } # ok 19 - MATCH: { 1; } # ok 20 - MATCH: { $a = 1; } # ok 21 - MATCH: {$a=1} # ok 22 - MATCH: { $a = $b; \# what's this doing here? # } # ok 23 - FAIL: < %x = do { $try > 10 } >; # ok 24 - FAIL: { $a = $b; \# what's this doing here? } # ok 25 - FAIL: { $a = $b; \# what's this doing here? # 1..25 ok t/control.t ...................... ok 1 - MATCH: for (my $x = 0 ; $x < 1; $x++) { } # ok 2 - MATCH: foreach (my $x = 0 ; $x < 1; $x++) { } # ok 3 - MATCH: for ($x = 0 ; $x < 1; $x++) { } # ok 4 - MATCH: foreach ($x = 0 ; $x < 1; $x++) { } # ok 5 - MATCH: for ( ; ; ) { } # ok 6 - MATCH: foreach ( ; ; ) { } # ok 7 - MATCH: while (1) { } # ok 8 - MATCH: until (1) { } # ok 9 - MATCH: if (1) { } # ok 10 - MATCH: unless (1) { } # ok 11 - MATCH: for (@foo) { } # ok 12 - MATCH: foreach (@foo) { } # ok 13 - MATCH: for $x (@foo) { } # ok 14 - MATCH: foreach $x (@foo) { } # ok 15 - MATCH: for my $x (@foo) { } # ok 16 - MATCH: foreach my $x (@foo) { } # ok 17 - MATCH: for state $x (@foo) { } # ok 18 - MATCH: foreach state $x (@foo) { } # ok 19 - MATCH: for qw{foo} { } # ok 20 - MATCH: foreach qw{foo} { } # ok 21 - MATCH: for $x qw{foo} { } # ok 22 - MATCH: foreach $x qw{foo} { } # ok 23 - MATCH: for my $x qw{foo} { } # ok 24 - MATCH: foreach my $x qw{foo} { } # ok 25 - MATCH: for state $x qw{foo} { } # ok 26 - MATCH: foreach state $x qw{foo} { } # ok 27 - FAIL: LABEL: while (1) { } # ok 28 - FAIL: LABEL: until (1) { } # ok 29 - FAIL: LABEL: for (@foo) { } # ok 30 - FAIL: LABEL: foreach (@foo) { } # ok 31 - FAIL: LABEL: for $x (@foo) { } # ok 32 - FAIL: LABEL: foreach $x (@foo) { } # ok 33 - FAIL: LABEL: for my $x (@foo) { } # ok 34 - FAIL: LABEL: foreach my $x (@foo) { } # ok 35 - FAIL: LABEL: for state $x (@foo) { } # ok 36 - FAIL: LABEL: foreach state $x (@foo) { } # ok 37 - FAIL: LABEL: for qw{foo} { } # ok 38 - FAIL: LABEL: foreach qw{foo} { } # ok 39 - FAIL: LABEL: for $x qw{foo} { } # ok 40 - FAIL: LABEL: foreach $x qw{foo} { } # ok 41 - FAIL: LABEL: for my $x qw{foo} { } # ok 42 - FAIL: LABEL: foreach my $x qw{foo} { } # ok 43 - FAIL: LABEL: for state $x qw{foo} { } # ok 44 - FAIL: LABEL: foreach state $x qw{foo} { } # ok 45 - FAIL: LABEL: for ( ; ; ) { } # ok 46 - FAIL: LABEL: foreach ( ; ; ) { } # ok 47 - FAIL: LABEL: for ($x = 0 ; $x < 1; $x++) { } # ok 48 - FAIL: LABEL: foreach ($x = 0 ; $x < 1; $x++) { } # ok 49 - FAIL: LABEL: for (my $x = 0 ; $x < 1; $x++) { } # ok 50 - FAIL: LABEL: foreach (my $x = 0 ; $x < 1; $x++) { } # 1..50 ok t/decomment.t .................... 1..1 ok 1 - Decommented correctly ok t/decomment_heredoc_large.t ...... 1..1 ok 1 ok t/disapproval.t .................. skipped: Acme::LookOfDisapproval not installed t/document_self.t ................ 1..1 ok 1 - Matched own document ok t/erudil.t ....................... 1..1 ok 1 - matched Erudil's camelcode ok t/eyedrops.t ..................... 1..1 ok 1 - matched Acme::Eyedrops Hello, World! ok t/for_ref_iterator.t ............. ok 1 - for_def_iterator ok 2 - for_def_iterator_curly ok 3 - for_my_iterator ok 4 - for_my_iterator_curly ok 5 - for_my_postalias ok 6 - for_my_postalias_array ok 7 - for_my_postalias_hash ok 8 - for_my_prealias ok 9 - for_my_prealias_array ok 10 - for_my_prealias_hash ok 11 - for_no_iterator ok 12 - for_our_iterator ok 13 - for_our_iterator_curly ok 14 - for_our_iterator_weird ok 15 - for_our_iterator_weird_curly ok 16 - for_our_postalias ok 17 - for_our_postalias_array ok 18 - for_our_postalias_hash ok 19 - for_our_prealias ok 20 - for_our_prealias_array ok 21 - for_our_prealias_hash ok 22 - for_state_iterator ok 23 - for_state_postalias ok 24 - for_state_postalias_array ok 25 - for_state_postalias_hash ok 26 - for_state_prealias ok 27 - for_state_prealias_array ok 28 - for_state_prealias_hash ok 29 - for_no_list ok 30 - for_local_iterator 1..30 ok t/format.t ....................... 1..2 ok 1 - Matched format ok 2 - Matched format ok t/heredoc.t ...................... ok 1 - Matched heredoc'd block 1 ok 2 - Matched heredoc'd block 2 ok 3 - Matched heredoc'd block 3 ok 4 - Matched heredoc'd block 4 ok 5 - Matched heredoc'd block 5 ok 6 - Matched heredoc'd block 6 ok 7 - Matched heredoc'd block 7 ok 8 - Matched heredoc'd block 8 ok 9 - Matched heredoc'd block 9 ok 10 - Matched heredoc'd block 10 ok 11 - Matched heredoc'd block 11 ok 12 - Matched heredoc'd block 12 ok 13 - Matched heredoc'd block 13 ok 14 - Matched heredoc'd block 14 ok 15 - Matched heredoc'd block 15 ok 16 - Matched heredoc'd block 16 ok 17 - Matched heredoc'd block 17 ok 18 - Matched heredoc'd block 18 ok 19 - Matched heredoc'd block 19 ok 20 - Matched heredoc'd block 20 ok 21 - Matched heredoc'd block 21 ok 22 - Matched heredoc'd block 22 ok 23 - Matched heredoc'd block 23 ok 24 - Matched heredoc'd block 24 ok 25 - Matched heredoc'd block 25 ok 26 - Matched heredoc'd block 26 ok 27 - Matched heredoc'd block 27 ok 28 - Matched heredoc'd block 28 ok 29 - Matched heredoc'd block 29 ok 30 - Matched heredoc'd block 30 ok 31 - Matched heredoc'd block 31 ok 32 - Matched heredoc'd block 32 ok 33 - Matched heredoc'd block 33 ok 34 - Matched heredoc'd block 34 1..34 ok t/heredoc_and_format.t ........... 1..2 ok 1 - Matched document ok 2 - Matched pieces ok t/heredoc_and_quotelike.t ........ 1..2 ok 1 - Matched document ok 2 - Matched pieces ok t/heredoc_large.t ................ ok 1 - Matched heredoc'd block 1 ok 2 - Matched heredoc'd block 2 ok 3 - Matched heredoc'd block 3 ok 4 - Matched heredoc'd block 4 ok 5 - Matched heredoc'd block 5 ok 6 - Matched heredoc'd block 6 ok 7 - Matched heredoc'd block 7 ok 8 - Matched heredoc'd block 8 ok 9 - Matched heredoc'd block 9 ok 10 - Matched heredoc'd block 10 ok 11 - Matched heredoc'd block 11 ok 12 - Matched heredoc'd block 12 ok 13 - Matched heredoc'd block 13 ok 14 - Matched heredoc'd block 14 ok 15 - Matched heredoc'd block 15 ok 16 - Matched heredoc'd block 16 ok 17 - Matched heredoc'd block 17 ok 18 - Matched heredoc'd block 18 ok 19 - Matched heredoc'd block 19 ok 20 - Matched heredoc'd block 20 ok 21 - Matched heredoc'd block 21 ok 22 - Matched heredoc'd block 22 ok 23 - Matched heredoc'd block 23 ok 24 - Matched heredoc'd block 24 ok 25 - Matched heredoc'd block 25 ok 26 - Matched heredoc'd block 26 ok 27 - Matched heredoc'd block 27 ok 28 - Matched heredoc'd block 28 ok 29 - Matched heredoc'd block 29 ok 30 - Matched heredoc'd block 30 ok 31 - Matched heredoc'd block 31 ok 32 - Matched heredoc'd block 32 ok 33 - Matched heredoc'd block 33 ok 34 - Matched heredoc'd block 34 ok 35 - Matched heredoc'd block 35 1..35 ok t/heredoc_null_then_shift.t ...... 1..2 ok 1 - Matched ok 2 - Matched correctly ok t/heredoc_same_terminator.t ...... 1..4 ok 1 - AA ok 2 - AA again ok 3 - AB ok 4 - AA yet again ok t/keywords.t ..................... 1..2 ok 1 - Matched Dios code ok 2 - Matched Object::Result code ok t/merijn_is_evil.t ............... 1..1 ok 1 ok t/misc.t ......................... ok 1 - (Foo(')')); # ok 2 - %x = ( try => "this"); # ok 3 - %x = (); # ok 4 - %x = ( $try->{this}, "too"); # ok 5 - %'x = ( $try->{this}, "too"); # ok 6 - %'x'y = ( $try->{this}, "too"); # ok 7 - %::x::y = ( $try->{this}, "too"); # ok 8 - %x = do { $try > 10 }; # ok 9 - label: %x = (); # ok 10 - \# leading "space" # label: %x = (); # ok 11 - label: \# in-between "space" # %x = (); # ok 12 - \# leading "space" # label: # in-between "space" # %x = (); # ok 13 - split /\s+/,; # ok 14 - grep {exists $group_of{$_} }; # ok 15 - { $a = /\}/; }; # ok 16 - { $data[4] =~ /['"]/; }; # ok 17 - { sub { $_[0] /= $_[1] } }; \# / here # ok 18 - { 1; }; # ok 19 - { $a = 1; }; # ok 20 - { $a = $b; \# what's this doing here? # };' # ok 21 - { $a = $b; # $a =~ /$b/; # @a = map /\s/ @b }; # ok 22 - { $a = $b; \# what's this doing here? };' # ok 23 - { $a = $b; \# what's this doing here? ;' # 1..23 ok t/misc_docs.t .................... ok 1 - # my $x; # # =pod # # Trailing POD # # =cut # ok 2 - # my $x; # # =pod # # Trailing POD terminated by eof # ok 3 - # =pod # # POD #1 # # =cut # # # Comments # # =pod # # POD #2 # # =cut # # my $x; # 1..3 ok t/perl_pod.t ..................... ok 1 - # =pod # # Regular POD # # =cut # ok 2 - # =pod # # POD terminated by eof # 1..2 ok t/perl_v5.28.t ................... 1..4 ok 1 - Can now delete via k/v slices ok 2 - Can initialize array state variables ok 3 - Can initialize hash state variables ok 4 - Named equivalents for various (?X...) regex constructs ok t/perl_v5.30.t ................... 1..3 ok 1 - Higher upper limit on counted repetions in regexes ok 2 - Can specify unicode properties in a regex via a nested regex ok 3 - Can specify variable-length lookbehinds in regexes ok t/perl_v5.32.t ................... 1..1 ok 1 - New binary infix isa operator ok t/perl_v5.34.t ................... 1..3 ok 1 - (Precheck that "vampire for" is valid) ok 2 - Octal constants ok 3 - Try/catch blocks ok t/perl_v5.36.t ................... 1..6 ok 1 - (Precheck that "vampire for" is valid) ok 2 - Try blocks with finally ok 3 - Defer blocks ok 4 - Multi-iterator for loops ok 5 - Unicode double-angle bracket delimiters on quotelikes ok 6 - Other Unicode bracket delimiters on quotelikes ok t/perl_v5.38.t ................... ok 1 - Or-assign in sub signatures ok 2 - Or-assign in anon sub signatures ok 3 - Doh-assign in sub signatures ok 4 - Doh-assign in anon sub signatures ok 5 - Optimistic eval in regexes ok 6 - Class declarations ok 7 - Class declarations with version number ok 8 - Class declaration with attribute ok 9 - Class declaration with attribute with minimal version ok 10 - Class blocks ok 11 - Class block with attribute ok 12 - Class block with version numbers ok 13 - Field declarations ok 14 - Field attribute ok 15 - Field attribute with rename ok 16 - Field default initializer ok 17 - Field default doh initializer ok 18 - Field default or initializer ok 19 - Field with all-of-the-above ok 20 - Array fields ok 21 - Array field with initializer ok 22 - Hash field ok 23 - Hash field with initializer ok 24 - Methods ok 25 - Method with signature ok 26 - Anonymous method ok 27 - Anonymous method with signature ok 28 - ADJUST blocks ok 29 - Class with fields, methods, and ADJUST blocks 1..29 ok t/pod.t .......................... skipped: Test::Pod 1.14 required for testing POD t/postfix_deref.t ................ 1..38 ok 1 - Valid: $sref->$* ok 2 - Valid: $aref->$\#* ok 3 - Valid: $aref->@* ok 4 - Valid: $aref->@[1,2,3] ok 5 - Valid: $aref->%[1..3] ok 6 - Valid: $href->%* ok 7 - Valid: $href->%{'a','b'} ok 8 - Valid: $href->@{'a','b'} ok 9 - Valid: $cref->() ok 10 - Valid: $cref->&* ok 11 - Valid: $rref->$*->$* ok 12 - Valid: $rref->$*->@* ok 13 - Valid: $gref->** ok 14 - Valid: $gref->**->{IO} ok 15 - Valid: $gref->**->**->{IO} ok 16 - Valid: $gref->*{IO} ok 17 - Valid: $obj->method ok 18 - Valid: $obj->method() ok 19 - Valid: $obj->$method ok 20 - Valid: $obj->$method() ok 21 - Valid: $ref->{a}[1]('arg')[2]{z} ok 22 - Valid: $ref->method->[1]('arg')('arg2')->$method()->[2]{z}->**->$*->&*->$\#* ok 23 - Valid: $aref->@*->%[1..3] ok 24 - Valid: $aref->@*->%{'k1', 'k2'} ok 25 - Valid: $aref->@*->method() ok 26 - Valid: $aref->@*->$* ok 27 - Valid: $aref->@*->** ok 28 - Valid: $href->%*->@[1..3] ok 29 - Valid: $href->%*->@{'k1', 'k2'} ok 30 - Valid: $href->%*->method() ok 31 - Valid: $href->%*->$* ok 32 - Valid: $href->%*->** ok 33 - Invalid: $aref->@*->[1] ok 34 - Invalid: $aref->@*->@[1..3] ok 35 - Invalid: $aref->@*->@{'k1', 'k2'} ok 36 - Invalid: $href->%*->{k} ok 37 - Invalid: $href->%*->%[1..3] ok 38 - Invalid: $href->%*->%{'k1', 'k2'} ok t/postfix_deref_qq.t ............. 1..82 ok 1 - Valid: qq{ $sref->$* } ok 2 - and postderef matched appropriately ok 3 - Valid: qq{ $aref->$\#* } ok 4 - and postderef matched appropriately ok 5 - Valid: qq{ $aref->@* } ok 6 - and postderef matched appropriately ok 7 - Valid: qq{ $aref->@[1,2,3] } ok 8 - and postderef matched appropriately ok 9 - Valid: qq{ $href->@{'a','b'} } ok 10 - and postderef matched appropriately ok 11 - Valid: qq{ $rref->$* } ok 12 - and postderef matched appropriately ok 13 - Valid: qq{ $href->{a}[1][2]{z} } ok 14 - and postderef matched appropriately ok 15 - Invalid: qq{ $aref->%[1..3] } ok 16 - and postderef correctly failed to match ok 17 - Invalid: qq{ $href->%* } ok 18 - and postderef correctly failed to match ok 19 - Invalid: qq{ $href->%{'a','b'} } ok 20 - and postderef correctly failed to match ok 21 - Invalid: qq{ $cref->() } ok 22 - and postderef correctly failed to match ok 23 - Invalid: qq{ $cref->&* } ok 24 - and postderef correctly failed to match ok 25 - Invalid: qq{ $rref->$*->$* } ok 26 - and postderef correctly failed to match ok 27 - Invalid: qq{ $rref->$*->@* } ok 28 - and postderef correctly failed to match ok 29 - Invalid: qq{ $gref->** } ok 30 - and postderef correctly failed to match ok 31 - Invalid: qq{ $gref->**->{IO} } ok 32 - and postderef correctly failed to match ok 33 - Invalid: qq{ $gref->**->**->{IO} } ok 34 - and postderef correctly failed to match ok 35 - Invalid: qq{ $gref->*{IO} } ok 36 - and postderef correctly failed to match ok 37 - Invalid: qq{ $obj->method } ok 38 - and postderef correctly failed to match ok 39 - Invalid: qq{ $obj->method() } ok 40 - and postderef correctly failed to match ok 41 - Invalid: qq{ $obj->$method } ok 42 - and postderef correctly failed to match ok 43 - Invalid: qq{ $obj->$method() } ok 44 - and postderef correctly failed to match ok 45 - Invalid: qq{ $href->{a}[1]('arg')[2]{z} } ok 46 - and postderef correctly failed to match ok 47 - Invalid: qq{ $href->method->[1]('arg')('arg2')->$method()->[2]{z}->**->$*->&*->$\#* } ok 48 - and postderef correctly failed to match ok 49 - Invalid: qq{ $aref->@*->[0] } ok 50 - and postderef correctly failed to match ok 51 - Invalid: qq{ $aref->@*->%[1..3] } ok 52 - and postderef correctly failed to match ok 53 - Invalid: qq{ $aref->@*->%{'k1', 'k2'} } ok 54 - and postderef correctly failed to match ok 55 - Invalid: qq{ $aref->@*->method() } ok 56 - and postderef correctly failed to match ok 57 - Invalid: qq{ $aref->@*->$* } ok 58 - and postderef correctly failed to match ok 59 - Invalid: qq{ $aref->@*->** } ok 60 - and postderef correctly failed to match ok 61 - Invalid: qq{ $href->%*->@[1..3] } ok 62 - and postderef correctly failed to match ok 63 - Invalid: qq{ $href->%*->@{'k1', 'k2'} } ok 64 - and postderef correctly failed to match ok 65 - Invalid: qq{ $href->%*->method() } ok 66 - and postderef correctly failed to match ok 67 - Invalid: qq{ $href->%*->$* } ok 68 - and postderef correctly failed to match ok 69 - Invalid: qq{ $href->%*->** } ok 70 - and postderef correctly failed to match ok 71 - Invalid: qq{ $aref->@*->[1] } ok 72 - and postderef correctly failed to match ok 73 - Invalid: qq{ $aref->@*->@[1..3] } ok 74 - and postderef correctly failed to match ok 75 - Invalid: qq{ $aref->@*->@{'k1', 'k2'} } ok 76 - and postderef correctly failed to match ok 77 - Invalid: qq{ $href->%*->{k} } ok 78 - and postderef correctly failed to match ok 79 - Invalid: qq{ $href->%*->%[1..3] } ok 80 - and postderef correctly failed to match ok 81 - Invalid: qq{ $href->%*->%{'k1', 'k2'} } ok 82 - and postderef correctly failed to match ok t/ppi_lexer.t .................... ok 1 - use constant { One => 1 }; # ok 2 - use constant 1 { One => 1 }; # ok 3 - $foo->{bar}; # ok 4 - $foo[1]{bar}; # ok 5 - $foo{bar}; # ok 6 - sub {1}; # ok 7 - grep { $_ } 0 .. 2; # ok 8 - map { $_ => 1 } 0 .. 2; # ok 9 - sort { $b <=> $a } 0 .. 2; # ok 10 - do {foo}; # ok 11 - $foo = { One => 1 }; # ok 12 - $foo ||= { One => 1 }; # ok 13 - 1, { One => 1 }; # ok 14 - One => { Two => 2 }; # ok 15 - {foo, bar}; # ok 16 - {foo => bar}; # ok 17 - {}; # ok 18 - +{foo, bar}; # ok 19 - @foo{'bar', 'baz'}; # ok 20 - @{$foo}{'bar', 'baz'}; # ok 21 - ${$foo}{bar}; # ok 22 - return { foo => 'bar' }; # ok 23 - bless { foo => 'bar' }; # ok 24 - $foo &&= { One => 1 }; # ok 25 - $foo //= { One => 1 }; # ok 26 - $foo //= { 'a' => 1, 'b' => 2 }; # ok 27 - 0 || { One => 1 }; # ok 28 - 1 && { One => 1 }; # ok 29 - undef // { One => 1 }; # ok 30 - $x ? {a=>1} : 1; # ok 31 - $x ? 1 : {a=>1}; # ok 32 - $x ? {a=>1} : {b=>1}; # 1..32 ok t/ppi_node.t ..................... ok 1 - use strict; # # sub one { 1 } # sub two { 2 } # sub three { 3 } # # print one; # print "\n"; # print three; # print "\n"; # # exit; # 1..1 ok t/ppi_statement.t ................ ok 1 - package Foo; # use strict; # ; # while (1) { last; } # BEGIN { } # sub foo { } # state $x; # $x = 5; # 1..1 ok t/ppi_statement_compound.t ....... ok 1 - while (1) { } # until (1) { } # LABEL: while (1) { } # LABEL: until (1) { } # # if (1) { } # unless (1) { } # # for (@foo) { } # foreach (@foo) { } # for $x (@foo) { } # foreach $x (@foo) { } # for my $x (@foo) { } # foreach my $x (@foo) { } # for state $x (@foo) { } # foreach state $x (@foo) { } # LABEL: for (@foo) { } # LABEL: foreach (@foo) { } # LABEL: for $x (@foo) { } # LABEL: foreach $x (@foo) { } # LABEL: for my $x (@foo) { } # LABEL: foreach my $x (@foo) { } # LABEL: for state $x (@foo) { } # LABEL: foreach state $x (@foo) { } # # for qw{foo} { } # foreach qw{foo} { } # for $x qw{foo} { } # foreach $x qw{foo} { } # for my $x qw{foo} { } # foreach my $x qw{foo} { } # for state $x qw{foo} { } # foreach state $x qw{foo} { } # LABEL: for qw{foo} { } # LABEL: foreach qw{foo} { } # LABEL: for $x qw{foo} { } # LABEL: foreach $x qw{foo} { } # LABEL: for my $x qw{foo} { } # LABEL: foreach my $x qw{foo} { } # LABEL: for state $x qw{foo} { } # LABEL: foreach state $x qw{foo} { } # # for ( ; ; ) { } # foreach ( ; ; ) { } # for ($x = 0 ; $x < 1; $x++) { } # foreach ($x = 0 ; $x < 1; $x++) { } # for (my $x = 0 ; $x < 1; $x++) { } # foreach (my $x = 0 ; $x < 1; $x++) { } # LABEL: for ( ; ; ) { } # LABEL: foreach ( ; ; ) { } # LABEL: for ($x = 0 ; $x < 1; $x++) { } # LABEL: foreach ($x = 0 ; $x < 1; $x++) { } # LABEL: for (my $x = 0 ; $x < 1; $x++) { } # LABEL: foreach (my $x = 0 ; $x < 1; $x++) { } # 1..1 ok t/ppi_statement_include.t ........ ok 1 - require 5.6; # require Module; # require 'Module.pm'; # use 5.6; # use Module; # use Module 1.00; # no Module; # 1..1 ok t/ppi_statement_package.t ........ ok 1 - { package => "", }; # +{ package => "", }; # { 'package' => "", }; # +{ 'package' => "", }; # { 'package' , "", }; # +{ 'package' , "", }; # package Foo; # SCOPE: { # package # comment # Bar::Baz; # 1; # } # package Other v1.23; # package Again 0.09; # 1; # 1..1 ok t/ppi_statement_sub.t ............ ok 1 - DESTROY {} # sub BEGIN {} # sub foo {} # sub foo{} # # sub FOO {} # # sub _foo {} # # sub _0foo {} # # sub _foo0 {} # # sub ___ {} # # sub bar() {} # # sub baz : method{} # # sub baz : method lvalue{} # # sub baz : method:lvalue{} # # sub baz (*) : method : lvalue{} # # sub x64 {} # # sub AUTOLOAD; # # sub AUTOLOAD {} # # sub DESTROY; # # sub DESTROY {} # # AUTOLOAD; # # AUTOLOAD {} # # DESTROY; # # sub CHECK {} # # sub UNITCHECK {} # # sub INIT {} # # sub END {} # # sub AUTOLOAD {} # # sub CLONE_SKIP {} # # sub __SUB__ {} # # sub _FOO {} # # sub FOO9 {} # # sub FO9O {} # # sub FOo {} # 1..1 ok t/ppi_statement_variable.t ....... ok 1 - package Bar; # my $foo = 1; # my ( $foo, $bar) = (1, 2); # our $foo = 1; # local $foo; # local $foo = 1; # LABEL: my $foo = 1; # # # As well as those basics, lets also try some harder ones # local($foo = $bar->$bar(), $bar); # 1..1 ok t/ppi_token_dashedword.t ......... ok 1 - -foo, -foo, # -Foo::Bar, -Foo::Bar, # -Foo'Bar, -Foo::Bar, # 1..1 ok t/ppi_token_magic.t .............. ok 1 - $[; \# Magic $[ # ok 2 - $$; \# Magic $$ # ok 3 - %-; \# Magic %- # ok 4 - $\#-; \# Magic $\#- # ok 5 - $$foo; \# Symbol $foo Dereference of $foo # ok 6 - $^W; \# Magic $^W # ok 7 - ${^WIDE_SYSTEM_CALLS}; \# Magic ${^WIDE_SYSTEM_CALLS} # ok 8 - ${^MATCH}; \# Magic ${^MATCH} # ok 9 - @{^_Bar}; \# Magic @{^_Bar} # ok 10 - ${^_Bar}[0]; \# Magic @{^_Bar} # ok 11 - %{^_Baz}; \# Magic %{^_Baz} # ok 12 - ${^_Baz}{burfle}; \# Magic %{^_Baz} # ok 13 - $${^MATCH}; \# Magic ${^MATCH} Dereference of ${^MATCH} # ok 14 - \\${^MATCH}; \# Magic ${^MATCH} # ok 15 - $0; \# Magic $0 -- program being executed # ok 16 - $0x2; \# Magic $0 -- program being executed # ok 17 - $10; \# Magic $10 -- capture variable # ok 18 - $1100; \# Magic $1100 -- capture variable # 1..18 ok t/ppi_token_operator.t ........... ok 1 - bareword x 3; # ok 2 - bareword x3; # ok 3 - $a->package x3; # ok 4 - sort { $a->package cmp $b->package } (); # ok 5 - c->d x 3; # ok 6 - 1 x 3; # ok 7 - "y" x 3; # ok 8 - qq{y} x 3; # ok 9 - "y"x 3; # ok 10 - $a x 3; # ok 11 - $a x3; # ok 12 - $a++x3; # ok 13 - "y"x 3; # ok 14 - 'y'x 3; # ok 15 - (5)x 3; # ok 16 - 1x0x1; # ok 17 - 1 x$y; # ok 18 - $z x=3; # ok 19 - $z x=$y; # ok 20 - 1;x =>1; # ok 21 - 1;x=>1; # ok 22 - $hash{x}=1; # ok 23 - x =>1; # ok 24 - x=>1; # ok 25 - xx=>1; # ok 26 - 1=>x; # ok 27 - 1=>xor 2; # ok 28 - (1) x 6; # ok 29 - (1) x6; # ok 30 - (1)x6; # ok 31 - foo()x6; # ok 32 - qw(1)x6; # ok 33 - qw<1>x6; # ok 34 - [1]x6; # ok 35 - 1x$bar; # ok 36 - 1x@bar; # ok 37 - sub xyzzy : _5x5 {1;}; # ok 38 - LABEL: x64; # ok 39 - 1 => 2; # ok 40 - foo => 2; # ok 41 - -foo => 2; # 1..41 ok t/ppi_token_prototype.t .......... ok 1 - sub (\ [ $ ]){;}; # sub (\\\ [ $ ]){;} # ok 2 - sub foo(){;} # sub foo( ){;} # # sub foo () {;} # # sub foo(+@){;} # # sub foo (+@) {;} # # sub foo(\[$;$_@]){;} # # sub foo(\ [ $ ]){;} # # sub foo(\\\ [ $ ]){;} # # sub foo($ _ %){;} # # sub foo (){;} # # sub foo ( ){;} # # sub foo () {;} # # sub foo (+@){;} # # sub foo (+@) {;} # # sub foo (\[$;$_@]){;} # # sub foo (\ [ $ ]){;} # # sub foo (\\\ [ $ ]){;} # # sub foo ($ _ %){;} # ok 3 - sub(){;} # ok 4 - sub( ){;} # ok 5 - sub () {;} # ok 6 - sub(+@){;} # ok 7 - sub (+@) {;} # ok 8 - sub(\[$;$_@]){;} # ok 9 - sub(\ [ $ ]){;} # ok 10 - sub(\\\ [ $ ]){;} # ok 11 - sub($ _ %){;} # ok 12 - sub (){;} # ok 13 - sub ( ){;} # ok 14 - sub () {;} # ok 15 - sub (+@){;} # ok 16 - sub (+@) {;} # ok 17 - sub (\[$;$_@]){;} # ok 18 - sub ($ _ %){;} # ok 19 - sub DESTROY(){;} # # sub DESTROY( ){;} # # sub DESTROY () {;} # # sub DESTROY(+@){;} # # sub DESTROY (+@) {;} # # sub DESTROY(\[$;$_@]){;} # # sub DESTROY(\ [ $ ]){;} # # sub DESTROY(\\\ [ $ ]){;} # # sub DESTROY($ _ %){;} # # sub DESTROY (){;} # # sub DESTROY ( ){;} # # sub DESTROY () {;} # # sub DESTROY (+@){;} # # sub DESTROY (+@) {;} # # sub DESTROY (\[$;$_@]){;} # # sub DESTROY (\ [ $ ]){;} # # sub DESTROY (\\\ [ $ ]){;} # # sub DESTROY ($ _ %){;} # # sub AUTOLOAD(){;} # # sub AUTOLOAD( ){;} # # sub AUTOLOAD () {;} # # sub AUTOLOAD(+@){;} # # sub AUTOLOAD (+@) {;} # # sub AUTOLOAD(\[$;$_@]){;} # # sub AUTOLOAD(\ [ $ ]){;} # # sub AUTOLOAD(\\\ [ $ ]){;} # # sub AUTOLOAD($ _ %){;} # # sub AUTOLOAD (){;} # # sub AUTOLOAD ( ){;} # # sub AUTOLOAD () {;} # # sub AUTOLOAD (+@){;} # # sub AUTOLOAD (+@) {;} # # sub AUTOLOAD (\[$;$_@]){;} # # sub AUTOLOAD (\ [ $ ]){;} # # sub AUTOLOAD (\\\ [ $ ]){;} # # sub AUTOLOAD ($ _ %){;} # 1..19 ok t/ppi_token_quote_double.t ....... ok 1 - "no interpolations"; # "no \@interpolations"; # "has $interpolation"; # "has @interpolation"; # "has \\@interpolation"; # "no special characters"; # "has \"double\" quotes"; # "has 'single' quotes"; # "has $interpolation"; # "has @interpolation"; # ""; # 1..1 ok t/ppi_token_quote_interpolate.t .. ok 1 - print qq{foo}, qq!bar!, qq ; # print q{foo}, q!bar!, q ; # 1..1 ok t/ppi_token_quote_single.t ....... ok 1 - '', # 'f', # "f\'b", # "f\\nb", # "f\\b", # "f\\\\b", # "f\\'", # 1..1 ok t/ppi_token_word.t ............... ok 1 - no strict; # ok 2 - indirect $foo; # ok 3 - indirect_class_with_colon Foo::; # ok 4 - $bar->method_with_parentheses; # ok 5 - print SomeClass->method_without_parentheses + 1; # ok 6 - sub_call(); # ok 7 - $baz->chained_from->chained_to; # ok 8 - a_first_thing a_middle_thing a_last_thing; # ok 9 - (first_list_element, second_list_element, third_list_element); # ok 10 - first_comma_separated_word, second_comma_separated_word, third_comma_separated_word; # ok 11 - single_bareword_statement; # ok 12 - { bareword_no_semicolon_end_of_block } # $buz{hash_key}; # ok 13 - fat_comma_left_side => $thingy; # ok 14 - $foo and'bar'; # ok 15 - $foo cmp'bar'; # ok 16 - $foo eq'bar'; # ok 17 - $foo ge'bar'; # ok 18 - $foo gt'bar'; # ok 19 - $foo le'bar'; # ok 20 - $foo lt'bar'; # ok 21 - $foo ne'bar'; # ok 22 - not'bar'; # ok 23 - $foo or'bar'; # ok 24 - $foo x'bar'; # ok 25 - $foo xor'bar'; # ok 26 - q'foo'; # ok 27 - qq'foo'; # ok 28 - qr'foo'; # ok 29 - qw'foo'; # ok 30 - qx'foo'; # ok 31 - m'foo'; # ok 32 - s'foo'bar'; # ok 33 - tr'fo'ba'; # ok 34 - y'fo'ba'; # ok 35 - abs'3'; # ok 36 - accept'1234',2345; # ok 37 - alarm'5'; # ok 38 - atan2'5'; # ok 39 - bind'5',""; # ok 40 - binmode'5'; # ok 41 - bless'foo', 'bar'; # ok 42 - break when 1; # ok 43 - caller'3'; # ok 44 - chdir'foo'; # ok 45 - chmod'0777', 'foo'; # ok 46 - chomp'a'; # ok 47 - chop'a'; # ok 48 - chown'a'; # ok 49 - chr'32'; # ok 50 - chroot'a'; # ok 51 - close'1'; # ok 52 - closedir'1'; # ok 53 - connect'1234',$foo; # ok 54 - continue; # ok 55 - cos'3'; # ok 56 - crypt'foo', 'bar'; # ok 57 - dbmclose'foo'; # ok 58 - dbmopen'foo','bar'; # ok 59 - default {} # defined'foo'; # ok 60 - delete'foo'; # ok 61 - die'foo'; # ok 62 - do'foo'; # ok 63 - dump'foo'; # ok 64 - each'foo'; # ok 65 - else {}; # ok 66 - elsif {}; # ok 67 - endgrent; # ok 68 - endhostent; # ok 69 - endnetent; # ok 70 - endprotoent; # ok 71 - endpwent; # ok 72 - endservent; # ok 73 - eof'foo'; # ok 74 - eval'foo'; # ok 75 - evalbytes'foo'; # ok 76 - exec'foo'; # ok 77 - exists'foo'; # ok 78 - exit'foo'; # ok 79 - exp'foo'; # ok 80 - fc'foo'; # ok 81 - fcntl'1'; # ok 82 - fileno'1'; # ok 83 - flock'1', LOCK_EX; # ok 84 - fork; # ok 85 - format # = # . # formline'@',1; # ok 86 - getc'1'; # ok 87 - getgrent; # ok 88 - getgrgid'1'; # ok 89 - getgrnam'foo'; # ok 90 - gethostbyaddr'1', AF_INET; # ok 91 - gethostbyname'foo'; # ok 92 - gethostent; # ok 93 - getlogin; # ok 94 - getnetbyaddr'1', AF_INET; # ok 95 - getnetbyname'foo'; # ok 96 - getnetent; # ok 97 - getpeername'foo'; # ok 98 - getpgrp'1'; # ok 99 - getppid; # ok 100 - getpriority'1',2; # ok 101 - getprotobyname'tcp'; # ok 102 - getprotobynumber'6'; # ok 103 - getprotoent; # ok 104 - getpwent; # ok 105 - getpwnam'foo'; # ok 106 - getpwuid'1'; # ok 107 - getservbyname'foo', 'bar'; # ok 108 - getservbyport'23', 'tcp'; # ok 109 - getservent; # ok 110 - getsockname'foo'; # ok 111 - getsockopt'foo', 'bar', TCP_NODELAY; # ok 112 - glob'foo'; # ok 113 - gmtime'1'; # ok 114 - goto'label'; # ok 115 - hex'1'; # ok 116 - index'1','foo'; # ok 117 - int'1'; # ok 118 - ioctl'1',1; # ok 119 - join'a',@foo; # ok 120 - keys'foo'; # ok 121 - kill'KILL'; # ok 122 - last'label'; # ok 123 - lc'foo'; # ok 124 - lcfirst'foo'; # ok 125 - length'foo'; # ok 126 - link'foo','bar'; # ok 127 - listen'1234',10; # ok 128 - local'foo'; # ok 129 - localtime'1'; # ok 130 - lock'foo'; # ok 131 - log'foo'; # ok 132 - lstat'foo'; # ok 133 - mkdir'foo'; # ok 134 - msgctl'1','foo',1; # ok 135 - msgget'1',1; # ok 136 - msgrcv'1',$foo,1,1,1; # ok 137 - msgsnd'1',$foo,1; # ok 138 - my $foo; # ok 139 - next'label'; # ok 140 - oct'foo'; # ok 141 - open'foo'; # ok 142 - opendir'foo'; # ok 143 - ord'foo'; # ok 144 - our $foo; # ok 145 - pack'H*',$data; # ok 146 - pipe'in','out'; # ok 147 - pop'foo'; # ok 148 - pos'foo'; # ok 149 - print'foo'; # ok 150 - printf'foo','bar'; # ok 151 - prototype'foo'; # ok 152 - push'foo','bar'; # ok 153 - quotemeta'foo'; # ok 154 - rand'1'; # ok 155 - read'1',$foo,100; # ok 156 - readdir'1'; # ok 157 - readline'1'; # ok 158 - readlink'1'; # ok 159 - readpipe'1'; # ok 160 - recv'1',$foo,100,1; # ok 161 - redo'label'; # ok 162 - ref'foo'; # ok 163 - rename'foo','bar'; # ok 164 - require'foo'; # ok 165 - reset'f'; # ok 166 - return'foo'; # ok 167 - reverse'foo','bar'; # ok 168 - rewinddir'1'; # ok 169 - rindex'1','foo'; # ok 170 - rmdir'foo'; # ok 171 - say'foo'; # ok 172 - scalar'foo','bar'; # ok 173 - seek'1',100,0; # ok 174 - seekdir'1',100; # ok 175 - select'1'; # ok 176 - semctl'1',1,1; # ok 177 - semget'foo',1,1; # ok 178 - semop'foo','bar'; # ok 179 - send'1',$foo'100,1; # ok 180 - setgrent'foo'; # ok 181 - sethostent'1'; # ok 182 - setnetent'1'; # ok 183 - setpgrp'1',2; # ok 184 - setpriority'1',2, 3; # ok 185 - setprotoent'1'; # ok 186 - setpwent'foo'; # ok 187 - setservent'1'; # ok 188 - setsockopt'1',2,'foo',3; # ok 189 - shift'1','2'; # ok 190 - shmctl'1',2,$foo; # ok 191 - shmget'1',2,1; # ok 192 - shmread'1',$foo,0,10; # ok 193 - shmwrite'1',$foo,0,10; # ok 194 - shutdown'1',0; # ok 195 - sin'1'; # ok 196 - sleep'1'; # ok 197 - socket'1',2,3,6; # ok 198 - socketpair'1',2,3,4,6; # ok 199 - splice'1',2; # ok 200 - split'1','foo'; # ok 201 - sprintf'foo','bar'; # ok 202 - sqrt'1'; # ok 203 - srand'1'; # ok 204 - stat'foo'; # ok 205 - state $foo; # ok 206 - study'foo'; # ok 207 - substr'foo',1; # ok 208 - symlink'foo','bar'; # ok 209 - syscall'foo'; # ok 210 - sysopen'foo','bar',1; # ok 211 - sysread'1',$bar,1; # ok 212 - sysseek'1',0,0; # ok 213 - system'foo'; # ok 214 - syswrite'1',$bar,1; # ok 215 - tell'1'; # ok 216 - telldir'1'; # ok 217 - tie'foo',$bar; # ok 218 - tied'foo'; # ok 219 - time; # ok 220 - times; # ok 221 - truncate'foo',1; # ok 222 - uc'foo'; # ok 223 - ucfirst'foo'; # ok 224 - umask'foo'; # ok 225 - undef'foo'; # ok 226 - unlink'foo'; # ok 227 - unpack'H*',$data; # ok 228 - unshift'1'; # ok 229 - untie'foo'; # ok 230 - utime'1','2'; # ok 231 - values'foo'; # ok 232 - vec'1',0.0; # ok 233 - wait; # ok 234 - waitpid'1',0; # ok 235 - wantarray; # ok 236 - warn'foo'; # ok 237 - when('foo') {} # ok 238 - write'foo'; # ok 239 - 1 for'foo'; # ok 240 - 1 foreach'foo'; # ok 241 - 1 if'foo'; # ok 242 - 1 unless'foo'; # ok 243 - 1 until'foo'; # ok 244 - 1 while'foo'; # 1..244 ok t/PPR_ERROR.t .................... 1..15 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok 6 - 2: Error source identified ok 7 - 2: Prefix identified ok 8 - 2: Line identified ok 9 - 2: Line with offset identified ok 10 - 2: Diagnostic identified ok 11 - 3: Error source identified ok 12 - 3: Prefix identified ok 13 - 3: Line identified ok 14 - 3: Line with offset identified ok 15 - 3: Diagnostic identified ok t/PPR_ERROR_multiple.t ........... 1..15 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok 6 - 2: Error source identified ok 7 - 2: Prefix identified ok 8 - 2: Line identified ok 9 - 2: Line with offset identified ok 10 - 2: Diagnostic identified ok 11 - 3: Error source identified ok 12 - 3: Prefix identified ok 13 - 3: Line identified ok 14 - 3: Line with offset identified ok 15 - 3: Diagnostic identified ok t/PPR_ERROR_trailing.t ........... 1..5 ok 1 - 1: Error source identified ok 2 - 1: Prefix identified ok 3 - 1: Line identified ok 4 - 1: Line with offset identified ok 5 - 1: Diagnostic identified ok t/PPR_GRAMMAR_placement.t ........ 1..3 ok 1 - $PPR::GRAMMAR at end ok 2 - $PPR::GRAMMAR at start ok 3 - $PPR::GRAMMAR in middle ok t/PPR_X.t ........................ 1..5 ok 1 - Extended expression matched ok 2 - Extended statement matched ok 3 - Extended statement within document matched ok 4 - Did not match English connectives ok 5 - Matched Latin connectives ok t/qr_combine.t ................... ok 1 - inline DEFINE + interpolated grammar inside of qr// ok 2 - interpolate DEFINE + interpolate grammar inside of qr ok 3 - concatenate regex in string then interpolate inside of qr// 1..3 ok t/quotelike_misc.t ............... ok 1 - MATCH: /\N{ SPACE } \x{ 20AC } \d{ 1,9 }/ # ok 2 - MATCH: m{ x{,9} } # ok 3 - MATCH: m{^$DRIVE_RX[\\/]}o # ok 4 - MATCH: m/[@\#]_ # / # ok 5 - MATCH: m{^(.*)::(.*)$} # ok 6 - MATCH: s(a){b} # ok 7 - MATCH: s (a) # /b/ # ok 8 - MATCH: q(d) # ok 9 - MATCH: qq(e) # ok 10 - MATCH: qx(f) # ok 11 - MATCH: qr(g) # ok 12 - MATCH: qw(h i j) # ok 13 - MATCH: < pairs and escaped \}'s } # ok 25 - MATCH: '' # ok 26 - MATCH: "" # ok 27 - MATCH: "a" # ok 28 - MATCH: 'b' # ok 29 - MATCH: `cc` # ok 30 - MATCH: "this is a nested $var[$x] {" # ok 31 - MATCH: /a/gci # ok 32 - MATCH: m/a/gci # ok 33 - MATCH: q{d} # ok 34 - MATCH: qq{e} # ok 35 - MATCH: qx{f} # ok 36 - MATCH: qr{g} # ok 37 - MATCH: q/slash/ # ok 38 - MATCH: q\# slash \# # ok 39 - MATCH: qr qw qx # ok 40 - MATCH: s/x/y/ # ok 41 - MATCH: s/x/y/cgimsox # ok 42 - MATCH: s{a}{b} # ok 43 - MATCH: s{a} # {b} # ok 44 - MATCH: s/'/\\'/g # ok 45 - MATCH: s;';\\\\t\#\\$d\#; # ok 46 - MATCH: tr/x/y/ # ok 47 - MATCH: y/x/y/ # ok 48 - FAIL: q \# slash \# # ok 49 - FAIL: s-$self->{pap}-$self->{sub}- \# CAN'T HANDLE '-' in '->' # ok 50 - FAIL: q<$self->{pat}> # ok 51 - FAIL: qq<$self->{pat}> # ok 52 - FAIL: qr<$self->{pat}> # ok 53 - FAIL: qx<$self->{pat}> # ok 54 - FAIL: s<$self->{pat}>{$self->{sub}} # 1..54 ok t/quotelike_noninerpolating.t .... 1..8 ok 1 - qr ok 2 - m ok 3 - s ok 4 - qx ok 5 - $@ should match a (?&PerlScalarAccessNoSpace) ok 6 - $_ should match a (?&PerlScalarAccessNoSpace) ok 7 - $etc should match a (?&PerlScalarAccessNoSpace) ok 8 - qq ok t/quotelike_s_e.t ................ ok 1 - MATCH: # s/${\<, "baz"; # ok 3 - MATCH: require 'Module.pm'; # ok 4 - MATCH: require 5.014; # ok 5 - MATCH: require 5.14.0; # ok 6 - MATCH: require 5.014_000; # ok 7 - MATCH: require 5.14.0; # ok 8 - MATCH: require 5.14; # ok 9 - MATCH: require Module; # ok 10 - MATCH: require v5.14.0; # ok 11 - MATCH: use 5.014; # ok 12 - MATCH: use 5.014_000; # ok 13 - MATCH: use 5.14.0; # ok 14 - MATCH: use 5.14; # ok 15 - MATCH: use Float::Version 1.5; # ok 16 - MATCH: use Foo 'bar'; \# One thing. # ok 17 - MATCH: use Foo 5 'bar'; \# One thing. # ok 18 - MATCH: use Foo 5; \# Don't expect anything. # ok 19 - MATCH: use Foo; \# Don't expect anything. # ok 20 - MATCH: use Integer::Version 1; # ok 21 - MATCH: use Module 1.00; # ok 22 - MATCH: use Module; # ok 23 - MATCH: use No::Version::With::Argument 'x'; # ok 24 - MATCH: use No::Version; # ok 25 - MATCH: use Test::More tests => 5 * 9; # ok 26 - MATCH: use Version::With::Argument 1 2; # ok 27 - MATCH: use v5.14.0; # ok 28 - MATCH: no 5.014; # ok 29 - MATCH: no 5.014_000; # ok 30 - MATCH: no 5.14.0; # ok 31 - MATCH: no 5.14; # ok 32 - MATCH: no Float::Version 1.5; # ok 33 - MATCH: no Foo 'bar'; \# One thing. # ok 34 - MATCH: no Foo 5 'bar'; \# One thing. # ok 35 - MATCH: no Foo 5; \# Don't expect anything. # ok 36 - MATCH: no Foo qw< bar >, "baz"; # ok 37 - MATCH: no Foo; \# Don't expect anything. # ok 38 - MATCH: no Integer::Version 1; # ok 39 - MATCH: no Module 1.00; # ok 40 - MATCH: no Module; # ok 41 - MATCH: no No::Version::With::Argument 'x'; # ok 42 - MATCH: no No::Version::With::Arguments 1, 2; # ok 43 - MATCH: no No::Version; # ok 44 - MATCH: no Test::More tests => 5 * 9; # ok 45 - MATCH: no Version::With::Argument 1 2; # ok 46 - MATCH: no v5.14.0; # 1..46 ok t/statement_variable.t ........... ok 1 - MATCH: package Bar; # ok 2 - MATCH: my $foo = 1; # ok 3 - MATCH: my ( $foo, $bar) = (1, 2); # ok 4 - MATCH: our $foo = 1; # ok 5 - MATCH: local $foo; # ok 6 - MATCH: local $foo = 1; # ok 7 - MATCH: LABEL: my $foo = 1; # ok 8 - MATCH: local($foo = $bar->$bar(), $bar); # 1..8 ok t/sub_END.t ...................... 1..3 ok 1 - Matched sub __END__ ok 2 - Matched sub __DATA__ ok 3 - Matched sub __OTHER__ ok t/subdecl.t ...................... 1..9 ok 1 - or_equals ok 2 - doh_equals ok 3 - AUTOLOAD ok 4 - DESTROY ok 5 - &DESTROY(); ok 6 - DESTROY(); ok 7 - protofirst ok 8 - protolast ok 9 - unnamed ok t/substitution_ge.t .............. # Subtest: s<(RE)>< $var{x} // croak() >ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: > ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 1 - s<(RE)>< $var{x} // croak() >ge # # Subtest: s[(RE)][ $var{x} // croak() ]ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 2 - s[(RE)][ $var{x} // croak() ]ge # # Subtest: s{(RE)}{ $var{x} // croak() }ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 3 - s{(RE)}{ $var{x} // croak() }ge # # Subtest: s((RE))( $var{x} // croak() )ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 4 - s((RE))( $var{x} // croak() )ge # # Subtest: s"(RE)" $var{x} // croak() "ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 5 - s"(RE)" $var{x} // croak() "ge # # Subtest: s%(RE)% $var{x} // croak() %ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: % ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Interim-matched extra binary expression: %ge ok 5 - Matched METAREGEX 1..5 ok 6 - s%(RE)% $var{x} // croak() %ge # # Subtest: s'(RE)' $var{x} // croak() 'ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 7 - s'(RE)' $var{x} // croak() 'ge # # Subtest: s+(RE)+ $var{x} // croak() +ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: + ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 8 - s+(RE)+ $var{x} // croak() +ge # # Subtest: s,(RE), $var{x} // croak() ,ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Matched METAREGEX 1..3 ok 9 - s,(RE), $var{x} // croak() ,ge # # Subtest: s/(RE)/ $var{x} || croak() /ge ok 1 - Found infix: || ok 2 - Interim-matched extra infix: / ok 3 - Found correct binary expression: $var{x} || croak() ok 4 - Matched METAREGEX 1..4 ok 10 - s/(RE)/ $var{x} || croak() /ge # # Subtest: s@(RE)@ $var{x} // croak() @ge ok 1 - Found infix: // ok 2 - Found correct binary expression: $var{x} // croak() ok 3 - Interim-matched extra binary expression: @ge ok 4 - Matched METAREGEX 1..4 ok 11 - s@(RE)@ $var{x} // croak() @ge # # Subtest: s|(RE)| $var{x} // croak() |ge ok 1 - Found infix: // ok 2 - Interim-matched extra infix: | ok 3 - Found correct binary expression: $var{x} // croak() ok 4 - Matched METAREGEX 1..4 ok 12 - s|(RE)| $var{x} // croak() |ge # 1..12 ok t/token_quote.t .................. ok 1 - MATCH: 'foo' # ok 2 - MATCH: "foo" # ok 3 - MATCH: q{foo} # ok 4 - MATCH: q[foo] # ok 5 - MATCH: q # ok 6 - MATCH: q(foo) # ok 7 - MATCH: q/foo/ # ok 8 - MATCH: q\#foo\# # ok 9 - MATCH: q=foo= # ok 10 - MATCH: q qfooq # ok 11 - MATCH: qq{foo} # ok 12 - MATCH: qq[foo] # ok 13 - MATCH: qq # ok 14 - MATCH: qq(foo) # ok 15 - MATCH: qq/foo/ # ok 16 - MATCH: qq\#foo\# # ok 17 - MATCH: qq=foo= # ok 18 - MATCH: qq qfooq # ok 19 - MATCH: q {foo} # ok 20 - MATCH: q [foo] # ok 21 - MATCH: q # ok 22 - MATCH: q (foo) # ok 23 - MATCH: q /foo/ # ok 24 - MATCH: q =foo= # ok 25 - MATCH: qq {foo} # ok 26 - MATCH: qq [foo] # ok 27 - MATCH: qq # ok 28 - MATCH: qq (foo) # ok 29 - MATCH: qq /foo/ # ok 30 - MATCH: qq =foo= # ok 31 - FAIL: # ok 32 - FAIL: q \#foo\# # ok 33 - FAIL: qq \#foo\# # 1..33 ok t/token_quote_double.t ........... ok 1 - MATCH: "no interpolations" # ok 2 - MATCH: "no \@interpolations" # ok 3 - MATCH: "has $interpolation" # ok 4 - MATCH: "has @interpolation" # ok 5 - MATCH: "has \\@interpolation" # ok 6 - MATCH: "" # ok 7 - MATCH: "no special characters" # ok 8 - MATCH: "has \"double\" quotes" # ok 9 - MATCH: "has 'single' quotes" # ok 10 - MATCH: "has $interpolation" # ok 11 - MATCH: "has @interpolation" # 1..11 ok t/token_quote_single.t ........... ok 1 - MATCH [40]: '' # ok 2 - MATCH [42]: 'f' # ok 3 - MATCH [44]: 'f\'b' # ok 4 - MATCH [46]: 'f\nb' # ok 5 - MATCH [48]: 'f\\b' # ok 6 - MATCH [50]: 'f\\\b' # ok 7 - MATCH [52]: 'f\\\'' # ok 8 - MATCH [54]: q// # ok 9 - MATCH [56]: q/f/ # ok 10 - MATCH [58]: q/f\'b/ # ok 11 - MATCH [60]: q/f\nb/ # ok 12 - MATCH [62]: q/f\\b/ # ok 13 - MATCH [64]: q/f\\\b/ # ok 14 - MATCH [66]: q/f\\'/ # ok 15 - MATCH [68]: q/f\\\// # ok 16 - MATCH [70]: q!! # ok 17 - MATCH [72]: q!f! # ok 18 - MATCH [74]: q!f\'b! # ok 19 - MATCH [76]: q !f\nb! # ok 20 - MATCH [79]: q # !f\\b! # ok 21 - MATCH [84]: q # ! # f\\\b # ! # ok 22 - MATCH [86]: q!f\\'! # ok 23 - MATCH [88]: q!f\\\!! # ok 24 - MATCH [90]: q{} # ok 25 - MATCH [92]: q{f} # ok 26 - MATCH [94]: q {f\'b} # ok 27 - MATCH [100]: q # { # {{{f\nb}}} # ([< # } # ok 28 - MATCH [102]: q{f\\b} # ok 29 - MATCH [104]: q{f\\\b} # ok 30 - MATCH [106]: q{f\\'} # ok 31 - MATCH [108]: q{f\\\}} # ok 32 - MATCH [110]: q[] # ok 33 - MATCH [112]: q[f] # ok 34 - MATCH [114]: q [f\'b] # ok 35 - MATCH [119]: q # [ # f\nb # ] # ok 36 - MATCH [121]: q[f\\b] # ok 37 - MATCH [123]: q[f\\\b] # ok 38 - MATCH [125]: q[f\\'] # ok 39 - MATCH [127]: q[f\\\]] # ok 40 - MATCH [129]: q<> # ok 41 - MATCH [131]: q # ok 42 - MATCH [133]: q # ok 43 - MATCH [139]: q # < # <<<>>> # {[( # > # ok 44 - MATCH [141]: q # ok 45 - MATCH [143]: q # ok 46 - MATCH [145]: q # ok 47 - MATCH [147]: q> # ok 48 - MATCH [149]: q() # ok 49 - MATCH [151]: q(f) # ok 50 - MATCH [153]: q (f\'b) # ok 51 - MATCH [159]: q \# Comment here # ( # ((f\nb)) # {[< # ) # ok 52 - MATCH [161]: q(f\\b) # ok 53 - MATCH [163]: q(f\\\b) # ok 54 - MATCH [165]: q(f\\') # ok 55 - MATCH [167]: q(f\\\)) # ok 56 - FAIL [170]: '\\'' # ok 57 - FAIL [172]: '''' # ok 58 - FAIL [174]: 'f\\\\'' # ok 59 - FAIL [176]: q/\\' # ok 60 - FAIL [178]: q{\\' # ok 61 - FAIL [182]: q { # { # } # ok 62 - FAIL [184]: q <\\' # ok 63 - FAIL [187]: q # [\\' # ok 64 - FAIL [189]: q(\\' # ok 65 - FAIL [191]: q q\\' # ok 66 - FAIL [193]: q =\\' # 1..66 ok t/token_quotelike_words.t ........ ok 1 - MATCH: qw/foo bar baz/ # ok 2 - MATCH: qw/ foo bar baz / # ok 3 - MATCH: qw # { # )foo # {bar} # method_with_parentheses($a ? $b : $c); # ok 2 - MATCH: pack'H*',$data; # ok 3 - MATCH: unpack'H*',$data; # ok 4 - MATCH: Foo'Bar; # ok 5 - MATCH: Foo::Bar; # ok 6 - MATCH: F; # ok 7 - MATCH: indirect $foo; # ok 8 - MATCH: indirect_class_with_colon Foo::; # ok 9 - MATCH: $bar->method_with_parentheses; # ok 10 - MATCH: $bar->method_with_parentheses(); # ok 11 - MATCH: $bar->method_with_parentheses(1,'2',qr{3}); # ok 12 - MATCH: print SomeClass->method_without_parentheses + 1; # ok 13 - MATCH: print SomeClass->method_with_parentheses() + 1; # ok 14 - MATCH: sub_call(); # ok 15 - MATCH: $baz->chained_from->chained_to; # ok 16 - MATCH: a_first_thing a_middle_thing a_last_thing; # ok 17 - MATCH: (first_list_element, second_list_element, third_list_element); # ok 18 - MATCH: first_comma_separated_word, second_comma_separated_word, third_comma_separated_word; # ok 19 - MATCH: single_bareword_statement; # ok 20 - MATCH: { bareword_no_semicolon_end_of_block } # ok 21 - MATCH: $buz{hash_key}; # ok 22 - MATCH: fat_comma_left_side => $thingy; # ok 23 - MATCH: $foo eq'bar'; # ok 24 - MATCH: $foo ne'bar'; # ok 25 - MATCH: $foo ge'bar'; # ok 26 - MATCH: $foo le'bar'; # ok 27 - MATCH: $foo gt'bar'; # ok 28 - MATCH: $foo lt'bar'; # ok 29 - MATCH: q'foo'; # ok 30 - MATCH: qq'foo'; # ok 31 - MATCH: qx'foo'; # ok 32 - MATCH: qw'foo'; # ok 33 - MATCH: qr'foo'; # ok 34 - MATCH: m'foo'; # ok 35 - MATCH: s'foo'bar'; # ok 36 - MATCH: tr'fo'ba'; # ok 37 - MATCH: y'fo'ba'; # 1..37 ok t/trycatch.t ..................... 1..1 ok 1 ok t/trytiny.t ...................... 1..6 ok 1 - catch {...} interpreted as sub call ok 2 - try {...} interpreted as sub call ok 3 - Try/catch as statement ok 4 - catch {...} interpreted as sub call ok 5 - try {...} interpreted as sub call ok 6 - Try/catch as expression ok t/unpunctuated.t ................. 1..4 ok 1 - matched blokhead's wonderful JAPH! ok 2 - Redirected output ok 3 - Executed JAPH ok 4 - JAPH is correct ok t/vars.t ......................... ok 1 - $\# special case ok 2 - MATCH: $\# ok 3 - MATCH: $\#- ok 4 - MATCH: @{$obj->nextval($cat ? $dog : $fish)} ok 5 - MATCH: @{$obj->nextval($cat?$dog:$fish)->{new}} ok 6 - MATCH: @{$obj->nextval(cat()?$dog:$fish)->{new}} ok 7 - MATCH: @{$obj->nextval} ok 8 - MATCH: @{$obj->nextval($cat,$dog)->{new}} ok 9 - MATCH: $obj->nextval ok 10 - MATCH: $obj->_nextval ok 11 - MATCH: $obj->next_val_ ok 12 - MATCH: $::obj ok 13 - MATCH: %::obj:: ok 14 - MATCH: $a ok 15 - MATCH: $ a ok 16 - MATCH: $ # a ok 17 - MATCH: ${a} ok 18 - MATCH: $_ ok 19 - MATCH: $ _ ok 20 - MATCH: ${_} ok 21 - MATCH: $a[1] ok 22 - MATCH: @a[1] ok 23 - MATCH: %a[1] ok 24 - MATCH: @a[1,2,3] ok 25 - MATCH: %a[1,2,3] ok 26 - MATCH: @a[somefunc x 3] ok 27 - MATCH: %a[somefunc x 3] ok 28 - MATCH: $_[1] ok 29 - MATCH: $a{cat} ok 30 - MATCH: @a{cat} ok 31 - MATCH: %a{cat} ok 32 - MATCH: @a{qw} ok 33 - MATCH: %a{'cat',"dog"} ok 34 - MATCH: @a{somefunc $x, $y} ok 35 - MATCH: %a{somefunc($x, $y) x 3} ok 36 - MATCH: $_{cat} ok 37 - MATCH: $a->[1] ok 38 - MATCH: $a->{"cat"}[1] ok 39 - MATCH: @$listref ok 40 - MATCH: @{$listref} ok 41 - MATCH: @{ 'x' x $x } ok 42 - MATCH: $ a {'cat'} ok 43 - MATCH: $ # a # { # x # } ok 44 - MATCH: $a::b::c{d}->{$e->()} ok 45 - MATCH: $a'b'c'd{e}->{$e->()} ok 46 - MATCH: $a'b::c'd{e}->{$e->()} ok 47 - MATCH: $\#_ ok 48 - MATCH: $\#array ok 49 - MATCH: $\#{array} ok 50 - MATCH: $var[$\#var] ok 51 - MATCH: $1 ok 52 - MATCH: $11 ok 53 - MATCH: $& ok 54 - MATCH: $` ok 55 - MATCH: $' ok 56 - MATCH: $+ ok 57 - MATCH: $* ok 58 - MATCH: $. ok 59 - MATCH: $/ ok 60 - MATCH: $| ok 61 - MATCH: $, ok 62 - MATCH: $" ok 63 - MATCH: $; ok 64 - MATCH: $% ok 65 - MATCH: $= ok 66 - MATCH: $- ok 67 - MATCH: $~ ok 68 - MATCH: $^ ok 69 - MATCH: $: ok 70 - MATCH: $^L ok 71 - MATCH: $^A ok 72 - MATCH: $? ok 73 - MATCH: $! ok 74 - MATCH: $^E ok 75 - MATCH: $@ ok 76 - MATCH: $< ok 77 - MATCH: $> ok 78 - MATCH: $( ok 79 - MATCH: $) ok 80 - MATCH: $[ ok 81 - MATCH: $] ok 82 - MATCH: $^C ok 83 - MATCH: $^D ok 84 - MATCH: $^F ok 85 - MATCH: $^H ok 86 - MATCH: $^I ok 87 - MATCH: $^M ok 88 - MATCH: $^O ok 89 - MATCH: $^P ok 90 - MATCH: $^R ok 91 - MATCH: $^S ok 92 - MATCH: $^T ok 93 - MATCH: $^V ok 94 - MATCH: $^W ok 95 - MATCH: ${^WARNING_BITS} ok 96 - MATCH: ${^WIDE_SYSTEM_CALLS} ok 97 - MATCH: $^X ok 98 - MATCH: $[ ok 99 - MATCH: $$ ok 100 - MATCH: %- ok 101 - MATCH: $$foo ok 102 - MATCH: $^W ok 103 - MATCH: ${^MATCH} ok 104 - MATCH: $${^MATCH} ok 105 - MATCH: @{^_Bar} ok 106 - MATCH: ${^_Bar}[0] ok 107 - MATCH: %{^_Baz} ok 108 - MATCH: ${^_Baz}{burfle} ok 109 - FAIL: $^WIDE_SYSTEM_CALLS ok 110 - FAIL: $a-> ok 111 - FAIL: @{$ ok 112 - FAIL: $ a :: b :: c ok 113 - FAIL: $ a ' b ' c ok 114 - FAIL: \${^MATCH} ok 115 - FAIL: *var ok 116 - FAIL: *$var ok 117 - FAIL: *{var} ok 118 - FAIL: *{$var} ok 119 - FAIL: *var{cat} ok 120 - FAIL: \&var ok 121 - FAIL: \&mod::var ok 122 - FAIL: \&mod'var ok 123 - FAIL: $a-> ok 124 - FAIL: $a (1..3) { print $a } 1..124 ok t/yadayadayada.t ................. 1..3 ok 1 - Pure yada ok 2 - Partial yada ok 3 - Not an expression ok All tests successful. Files=75, Tests=1253, 16 wallclock secs ( 0.30 usr 0.08 sys + 14.24 cusr 1.40 csys = 16.02 CPU) Result: PASS make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' create-stamp debian/debhelper-build-stamp dh_prep dh_auto_install --destdir=debian/libppr-perl/ make -j21 install DESTDIR=/build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl AM_UPDATE_INFO_DIR=no PREFIX=/usr make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' Manifying 2 pod documents Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/perl5/PPR.pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/perl5/PPR/X.pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/man/man3/PPR.3pm Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/man/man3/PPR::X.3pm make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' dh_installdocs dh_installchangelogs dh_installman dh_perl dh_link dh_strip_nondeterminism dh_compress dh_fixperms dh_missing dh_installdeb dh_gencontrol dh_md5sums dh_builddeb dpkg-deb: building package 'libppr-perl' in '../libppr-perl_0.001010-2_all.deb'. dpkg-genbuildinfo --build=binary -O../libppr-perl_0.001010-2_i386.buildinfo dpkg-genchanges --build=binary -O../libppr-perl_0.001010-2_i386.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: user script /srv/workspace/pbuilder/67916/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/67916/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/67916 and its subdirectories I: Current time: Fri Dec 26 16:55:25 +14 2025 I: pbuilder-time-stamp: 1766717725 + false + set +x Fri Dec 26 02:55:25 UTC 2025 I: Signing ./b2/libppr-perl_0.001010-2_i386.buildinfo as libppr-perl_0.001010-2_i386.buildinfo.asc Fri Dec 26 02:55:25 UTC 2025 I: Signed ./b2/libppr-perl_0.001010-2_i386.buildinfo as ./b2/libppr-perl_0.001010-2_i386.buildinfo.asc Fri Dec 26 02:55:25 UTC 2025 - build #2 for libppr-perl/unstable/i386 on ionos6-i386 done. Starting cleanup. All cleanup done. Fri Dec 26 02:55:25 UTC 2025 - reproducible_build.sh stopped running as /tmp/jenkins-script-sHo0Tv8C, removing. /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr: total 96 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 20:31 b1 drwxr-xr-x 2 jenkins jenkins 4096 Nov 22 20:32 b2 -rw-r--r-- 1 jenkins jenkins 2331 Oct 11 15:51 libppr-perl_0.001010-2.dsc -rw------- 1 jenkins jenkins 78616 Nov 22 20:31 rbuildlog.wtRquN8 /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b1: total 184 -rw-r--r-- 1 jenkins jenkins 74861 Nov 22 20:31 build.log -rw-r--r-- 1 jenkins jenkins 1840 Nov 22 20:31 libppr-perl_0.001010-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 2331 Nov 22 20:31 libppr-perl_0.001010-2.dsc -rw-r--r-- 1 jenkins jenkins 66196 Nov 22 20:31 libppr-perl_0.001010-2_all.deb -rw-r--r-- 1 jenkins jenkins 4642 Nov 22 20:31 libppr-perl_0.001010-2_i386.buildinfo -rw-r--r-- 1 jenkins jenkins 5524 Nov 22 20:31 libppr-perl_0.001010-2_i386.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1044 Nov 22 20:31 libppr-perl_0.001010-2_i386.changes -rw-r--r-- 1 jenkins jenkins 1236 Nov 22 20:31 libppr-perl_0.001010-2_source.changes /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b2: total 176 -rw-r--r-- 1 jenkins jenkins 76773 Nov 22 20:32 build.log -rw-r--r-- 1 jenkins jenkins 1840 Nov 22 20:32 libppr-perl_0.001010-2.debian.tar.xz -rw-r--r-- 1 jenkins jenkins 2331 Nov 22 20:32 libppr-perl_0.001010-2.dsc -rw-r--r-- 1 jenkins jenkins 66196 Nov 22 20:32 libppr-perl_0.001010-2_all.deb -rw-r--r-- 1 jenkins jenkins 4642 Nov 22 20:32 libppr-perl_0.001010-2_i386.buildinfo -rw-r--r-- 1 jenkins jenkins 5524 Nov 22 20:32 libppr-perl_0.001010-2_i386.buildinfo.asc -rw-r--r-- 1 jenkins jenkins 1044 Nov 22 20:32 libppr-perl_0.001010-2_i386.changes -rw-r--r-- 1 jenkins jenkins 1236 Nov 22 20:32 libppr-perl_0.001010-2_source.changes Fri Nov 22 20:32:26 UTC 2024 I: Deleting $TMPDIR on ionos6-i386.debian.net. Fri Nov 22 20:32:27 UTC 2024 I: libppr-perl_0.001010-2_i386.changes: Format: 1.8 Date: Fri, 11 Oct 2024 17:38:50 +0200 Source: libppr-perl Binary: libppr-perl Architecture: all Version: 0.001010-2 Distribution: unstable Urgency: medium Maintainer: Debian Perl Group Changed-By: gregor herrmann Description: libppr-perl - Pattern-based Perl Recognizer Changes: libppr-perl (0.001010-2) unstable; urgency=medium . * No-change source-only re-upload. Checksums-Sha1: 6f7ca13c7c989ed4b137729bcf13221b6089fecb 66196 libppr-perl_0.001010-2_all.deb 06f30569d7f053cb136006ee176a13f6e629ba93 4642 libppr-perl_0.001010-2_i386.buildinfo Checksums-Sha256: a00a022989fdbcdd8e88c8a366d387d14fea94d92c58f36b53b3653326a923ae 66196 libppr-perl_0.001010-2_all.deb 588fb5717870731c62986c5e363c67a5e36a08fff48aba3e90a91922178e036c 4642 libppr-perl_0.001010-2_i386.buildinfo Files: e29213d37670b76264cf4abe999b0ae0 66196 perl optional libppr-perl_0.001010-2_all.deb b09351d9a7895ab3d3d8e2f9ee11da6e 4642 perl optional libppr-perl_0.001010-2_i386.buildinfo removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/i386/libppr-perl_0.001010-2.rbuild.log' removed '/var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/i386/libppr-perl_0.001010-2.rbuild.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/unstable/i386/libppr-perl_0.001010-2.build1.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/logs/unstable/i386/libppr-perl_0.001010-2.build2.log.gz' removed '/var/lib/jenkins/userContent/reproducible/debian/buildinfo/unstable/i386/libppr-perl_0.001010-2_i386.buildinfo' removed '/var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/i386/libppr-perl_0.001010-2.diff.gz' Diff of the two buildlogs: -- --- b1/build.log 2024-11-22 20:31:48.693557031 +0000 +++ b2/build.log 2024-11-22 20:32:26.635835490 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Fri Nov 22 08:30:51 -12 2024 -I: pbuilder-time-stamp: 1732307451 +I: Current time: Fri Dec 26 16:54:50 +14 2025 +I: pbuilder-time-stamp: 1766717690 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -26,54 +26,86 @@ dpkg-source: info: unpacking libppr-perl_0.001010-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/62850/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D01_modify_environment starting +debug: Running on ionos6-i386. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Dec 26 02:54 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='i386' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=11 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='i386' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="32" [3]="1" [4]="release" [5]="i686-pc-linux-gnu") + BASH_VERSION='5.2.32(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=i386 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=21 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=i686 + HOST_ARCH=i386 IFS=' ' - INVOCATION_ID='20cb27a2a30e4194b15b8a6e459b0c1a' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - LD_LIBRARY_PATH='/usr/lib/libeatmydata' - LD_PRELOAD='libeatmydata.so' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='62850' - PS1='# ' - PS2='> ' + INVOCATION_ID=7295146ea6994c799f4fb19450425033 + LANG=C + LANGUAGE=de_CH:de + LC_ALL=C + LD_LIBRARY_PATH=/usr/lib/libeatmydata + LD_PRELOAD=libeatmydata.so + MACHTYPE=i686-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=67916 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/pbuilderrc_RZ2D --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b1 --logfile b1/build.log libppr-perl_0.001010-2.dsc' - SUDO_GID='112' - SUDO_UID='107' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://46.16.76.132:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/pbuilderrc_3cPV --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b2 --logfile b2/build.log libppr-perl_0.001010-2.dsc' + SUDO_GID=112 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://213.165.73.152:3128 I: uname -a - Linux ionos2-i386 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-27-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.115-1 (2024-11-01) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Aug 4 21:30 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/62850/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Aug 4 2024 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -138,7 +170,7 @@ Get: 27 http://deb.debian.org/debian unstable/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 28 http://deb.debian.org/debian unstable/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 29 http://deb.debian.org/debian unstable/main i386 debhelper all 13.20 [915 kB] -Fetched 20.1 MB in 0s (72.3 MB/s) +Fetched 20.1 MB in 0s (85.7 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package sensible-utils. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19952 files and directories currently installed.) @@ -269,7 +301,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/libppr-perl-0.001010/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../libppr-perl_0.001010-2_source.changes +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/libppr-perl-0.001010/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../libppr-perl_0.001010-2_source.changes dpkg-buildpackage: info: source package libppr-perl dpkg-buildpackage: info: source version 0.001010-2 dpkg-buildpackage: info: source distribution unstable @@ -291,14 +327,14 @@ Writing Makefile for PPR Writing MYMETA.yml and MYMETA.json dh_auto_build - make -j11 + make -j21 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' -cp lib/PPR.pm blib/lib/PPR.pm cp lib/PPR/X.pm blib/lib/PPR/X.pm +cp lib/PPR.pm blib/lib/PPR.pm Manifying 2 pod documents make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' dh_auto_test - make -j11 test TEST_VERBOSE=1 + make -j21 test TEST_VERBOSE=1 make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' PERL_DL_NONLAZY=1 "/usr/bin/perl" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(1, 'blib/lib', 'blib/arch')" t/*.t # Testing PPR 0.001010 @@ -3078,13 +3114,13 @@ ok 3 - Not an expression ok All tests successful. -Files=75, Tests=1253, 27 wallclock secs ( 0.32 usr 0.12 sys + 24.60 cusr 1.98 csys = 27.02 CPU) +Files=75, Tests=1253, 16 wallclock secs ( 0.30 usr 0.08 sys + 14.24 cusr 1.40 csys = 16.02 CPU) Result: PASS make[1]: Leaving directory '/build/reproducible-path/libppr-perl-0.001010' create-stamp debian/debhelper-build-stamp dh_prep dh_auto_install --destdir=debian/libppr-perl/ - make -j11 install DESTDIR=/build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl AM_UPDATE_INFO_DIR=no PREFIX=/usr + make -j21 install DESTDIR=/build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl AM_UPDATE_INFO_DIR=no PREFIX=/usr make[1]: Entering directory '/build/reproducible-path/libppr-perl-0.001010' Manifying 2 pod documents Installing /build/reproducible-path/libppr-perl-0.001010/debian/libppr-perl/usr/share/perl5/PPR.pm @@ -3113,12 +3149,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/67916/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/62850 and its subdirectories -I: Current time: Fri Nov 22 08:31:48 -12 2024 -I: pbuilder-time-stamp: 1732307508 +I: removing directory /srv/workspace/pbuilder/67916 and its subdirectories +I: Current time: Fri Dec 26 16:55:25 +14 2025 +I: pbuilder-time-stamp: 1766717725 Compressing the 2nd log... /var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/i386/libppr-perl_0.001010-2.diff: 67.0% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/logdiffs/unstable/i386/libppr-perl_0.001010-2.diff.gz b2/build.log: 76.0% -- replaced with stdout Compressing the 1st log... b1/build.log: 76.3% -- replaced with stdout Fri Nov 22 20:32:28 UTC 2024 I: diffoscope 283 will be used to compare the two builds: ++ date -u +%s + DIFFOSCOPE_STAMP=/var/log/reproducible-builds/diffoscope_stamp_libppr-perl_unstable_i386_1732307548 + touch /var/log/reproducible-builds/diffoscope_stamp_libppr-perl_unstable_i386_1732307548 + RESULT=0 + systemd-run '--description=diffoscope on libppr-perl/0.001010-2 in unstable/i386' --slice=rb-build-diffoscope.slice -u rb-diffoscope-i386_9-32383 '--property=SuccessExitStatus=1 124' --user --send-sighup --pipe --wait -E TMPDIR timeout 155m nice schroot --directory /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr --run-session -c jenkins-reproducible-unstable-diffoscope-09ee6579-4c0a-48c4-86ff-52b0b24b9a4a -- sh -c 'export TMPDIR=/srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/dbd-tmp-LxPklIa ; timeout 150m diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/libppr-perl_0.001010-2.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/libppr-perl_0.001010-2.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/libppr-perl_0.001010-2.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b1/libppr-perl_0.001010-2_i386.changes /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b2/libppr-perl_0.001010-2_i386.changes' + false + set +x Running as unit: rb-diffoscope-i386_9-32383.service # Profiling output for: /usr/bin/diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/libppr-perl_0.001010-2.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/libppr-perl_0.001010-2.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/libppr-perl_0.001010-2.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b1/libppr-perl_0.001010-2_i386.changes /srv/reproducible-results/rbuild-debian/r-b-build.7tWPLhmr/b2/libppr-perl_0.001010-2_i386.changes ## command (total time: 0.000s) 0.000s 1 call cmp (internal) ## has_same_content_as (total time: 0.000s) 0.000s 1 call abc.DotChangesFile ## main (total time: 0.337s) 0.337s 2 calls outputs 0.000s 1 call cleanup ## recognizes (total time: 0.015s) 0.015s 12 calls diffoscope.comparators.binary.FilesystemFile ## specialize (total time: 0.000s) 0.000s 1 call specialize Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 646ms CPU time consumed: 645ms _ _ _ _ | (_) |__ _ __ _ __ _ __ _ __ ___ _ __| | | | | '_ \| '_ \| '_ \| '__|____| '_ \ / _ \ '__| | | | | |_) | |_) | |_) | | |_____| |_) | __/ | | | |_|_|_.__/| .__/| .__/|_| | .__/ \___|_| |_| |_| |_| |_| Fri Nov 22 20:32:29 UTC 2024 I: diffoscope 283 found no differences in the changes files, and a .buildinfo file also exists. Fri Nov 22 20:32:29 UTC 2024 I: libppr-perl from unstable built successfully and reproducibly on i386. INSERT 0 1 INSERT 0 1 DELETE 1 [2024-11-22 20:32:29] INFO: Starting at 2024-11-22 20:32:29.845677 [2024-11-22 20:32:29] INFO: Generating the pages of 1 package(s) [2024-11-22 20:32:29] CRITICAL: https://tests.reproducible-builds.org/debian/unstable/i386/libppr-perl didn't produce a buildlog, even though it has been built. [2024-11-22 20:32:30] INFO: Finished at 2024-11-22 20:32:30.000553, took: 0:00:00.154883 Fri Nov 22 20:32:30 UTC 2024 - successfully updated the database and updated https://tests.reproducible-builds.org/debian/rb-pkg/unstable/i386/libppr-perl.html Fri Nov 22 20:32:30 UTC 2024 I: Submitting .buildinfo files to external archives: Fri Nov 22 20:32:30 UTC 2024 I: Submitting 8.0K b1/libppr-perl_0.001010-2_i386.buildinfo.asc https://buildinfo.debian.net/06f30569d7f053cb136006ee176a13f6e629ba93/libppr-perl_0.001010-2_all Fri Nov 22 20:32:30 UTC 2024 I: Submitting 8.0K b2/libppr-perl_0.001010-2_i386.buildinfo.asc https://buildinfo.debian.net/18a9ab1e871df6f6f201fddd05b9b14fb8720da4/libppr-perl_0.001010-2_all Fri Nov 22 20:32:31 UTC 2024 I: Done submitting .buildinfo files to http://buildinfo.debian.net/api/submit. Fri Nov 22 20:32:31 UTC 2024 I: Done submitting .buildinfo files. Fri Nov 22 20:32:31 UTC 2024 I: Removing signed libppr-perl_0.001010-2_i386.buildinfo.asc files: removed './b1/libppr-perl_0.001010-2_i386.buildinfo.asc' removed './b2/libppr-perl_0.001010-2_i386.buildinfo.asc' 1732307551 i386 unstable libppr-perl Starting cleanup. /var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/i386/libppr-perl_0.001010-2.rbuild.log: 74.7% -- replaced with /var/lib/jenkins/userContent/reproducible/debian/rbuild/unstable/i386/libppr-perl_0.001010-2.rbuild.log.gz [2024-11-22 20:32:31] INFO: Starting at 2024-11-22 20:32:31.875944 [2024-11-22 20:32:31] INFO: Generating the pages of 1 package(s) [2024-11-22 20:32:32] INFO: Finished at 2024-11-22 20:32:32.032736, took: 0:00:00.156800 All cleanup done. Fri Nov 22 20:32:32 UTC 2024 - total duration: 0h 1m 48s. Fri Nov 22 20:32:32 UTC 2024 - reproducible_build.sh stopped running as /tmp/jenkins-script-AwKewLIP, removing. Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 1min 50.749s CPU time consumed: 6.723s