Raspbian Package Auto-Building

Build log for libffi-platypus-perl (0.59-1) on armhf

libffi-platypus-perl0.59-1armhf → 2018-12-24 04:59:48

sbuild (Debian sbuild) 0.71.0 (24 Aug 2016) on bm-wb-01

+==============================================================================+
| libffi-platypus-perl 0.59-1 (armhf)          Mon, 24 Dec 2018 04:47:49 +0000 |
+==============================================================================+

Package: libffi-platypus-perl
Version: 0.59-1
Source Version: 0.59-1
Distribution: buster-staging
Machine Architecture: armhf
Host Architecture: armhf
Build Architecture: armhf

I: NOTICE: Log filtering will replace 'var/run/schroot/mount/buster-staging-armhf-sbuild-f2595714-3530-42b9-a6be-879f8704acf6' with '<<CHROOT>>'

+------------------------------------------------------------------------------+
| Update chroot                                                                |
+------------------------------------------------------------------------------+

Get:1 http://172.17.0.1/private buster-staging InRelease [11.3 kB]
Get:2 http://172.17.0.1/private buster-staging/main Sources [11.3 MB]
Get:3 http://172.17.0.1/private buster-staging/main armhf Packages [13.1 MB]
Fetched 24.4 MB in 30s (800 kB/s)
Reading package lists...

+------------------------------------------------------------------------------+
| Fetch source files                                                           |
+------------------------------------------------------------------------------+


Check APT
---------

Checking available source versions...

Download source files with APT
------------------------------

Reading package lists...
NOTICE: 'libffi-platypus-perl' packaging is maintained in the 'Git' version control system at:
https://salsa.debian.org/perl-team/modules/packages/libffi-platypus-perl.git
Please use:
git clone https://salsa.debian.org/perl-team/modules/packages/libffi-platypus-perl.git
to retrieve the latest (possibly unreleased) updates to the package.
Need to get 221 kB of source archives.
Get:1 http://172.17.0.1/private buster-staging/main libffi-platypus-perl 0.59-1 (dsc) [2456 B]
Get:2 http://172.17.0.1/private buster-staging/main libffi-platypus-perl 0.59-1 (tar) [216 kB]
Get:3 http://172.17.0.1/private buster-staging/main libffi-platypus-perl 0.59-1 (diff) [3292 B]
Fetched 221 kB in 0s (3182 kB/s)
Download complete and in download only mode
I: NOTICE: Log filtering will replace 'build/libffi-platypus-perl-uQULTe/libffi-platypus-perl-0.59' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/libffi-platypus-perl-uQULTe' with '<<BUILDDIR>>'

+------------------------------------------------------------------------------+
| Install build-essential                                                      |
+------------------------------------------------------------------------------+


Setup apt archive
-----------------

Merged Build-Depends: build-essential, fakeroot
Filtered Build-Depends: build-essential, fakeroot
dpkg-deb: building package 'sbuild-build-depends-core-dummy' in '/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive/sbuild-build-depends-core-dummy.deb'.
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning:   sbuild-build-depends-core-dummy
dpkg-scanpackages: info: Wrote 1 entries to output Packages file.
gpg: keybox '/<<BUILDDIR>>/resolver-QN5XeZ/gpg/pubring.kbx' created
gpg: /<<BUILDDIR>>/resolver-QN5XeZ/gpg/trustdb.gpg: trustdb created
gpg: key 35506D9A48F77B2E: public key "Sbuild Signer (Sbuild Build Dependency Archive Key) <buildd-tools-devel@lists.alioth.debian.org>" imported
gpg: Total number processed: 1
gpg:               imported: 1
gpg: key 35506D9A48F77B2E: "Sbuild Signer (Sbuild Build Dependency Archive Key) <buildd-tools-devel@lists.alioth.debian.org>" not changed
gpg: key 35506D9A48F77B2E: secret key imported
gpg: Total number processed: 1
gpg:              unchanged: 1
gpg:       secret keys read: 1
gpg:   secret keys imported: 1
gpg: using "Sbuild Signer" as default secret key for signing
Ign:1 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release [957 B]
Get:3 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release.gpg [370 B]
Ign:3 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release.gpg
Get:4 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Sources [349 B]
Get:5 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Packages [432 B]
Fetched 2108 B in 1s (2947 B/s)
Reading package lists...
W: copy:///<<BUILDDIR>>/resolver-QN5XeZ/apt_archive/./Release.gpg: The key(s) in the keyring /etc/apt/trusted.gpg.d/sbuild-build-depends-archive.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: GPG error: copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 35506D9A48F77B2E
Reading package lists...

Install core build dependencies (apt-based resolver)
----------------------------------------------------

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following packages were automatically installed and are no longer required:
  ca-certificates e2fsprogs-l10n krb5-locales libgpg-error-l10n
  libsasl2-modules libssl1.1 openssl
Use 'apt autoremove' to remove them.
The following NEW packages will be installed:
  sbuild-build-depends-core-dummy
0 upgraded, 1 newly installed, 0 to remove and 48 not upgraded.
Need to get 852 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ sbuild-build-depends-core-dummy 0.invalid.0 [852 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 852 B in 0s (0 B/s)
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 15636 files and directories currently installed.)
Preparing to unpack .../sbuild-build-depends-core-dummy_0.invalid.0_armhf.deb ...
Unpacking sbuild-build-depends-core-dummy (0.invalid.0) ...
Setting up sbuild-build-depends-core-dummy (0.invalid.0) ...

+------------------------------------------------------------------------------+
| Check architectures                                                          |
+------------------------------------------------------------------------------+

Arch check ok (armhf included in any)

+------------------------------------------------------------------------------+
| Install package build dependencies                                           |
+------------------------------------------------------------------------------+


Setup apt archive
-----------------

Merged Build-Depends: debhelper (>= 10), libalt-alien-ffi-system-perl (>= 0.20), libcapture-tiny-perl, libconfig-autoconf-perl (>= 0.309), libffi-checklib-perl, libfile-sharedir-perl, libmodule-build-perl, perl (>= 5.21.4)
Filtered Build-Depends: debhelper (>= 10), libalt-alien-ffi-system-perl (>= 0.20), libcapture-tiny-perl, libconfig-autoconf-perl (>= 0.309), libffi-checklib-perl, libfile-sharedir-perl, libmodule-build-perl, perl (>= 5.21.4)
dpkg-deb: building package 'sbuild-build-depends-libffi-platypus-perl-dummy' in '/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive/sbuild-build-depends-libffi-platypus-perl-dummy.deb'.
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning:   sbuild-build-depends-core-dummy sbuild-build-depends-libffi-platypus-perl-dummy
dpkg-scanpackages: info: Wrote 2 entries to output Packages file.
gpg: using "Sbuild Signer" as default secret key for signing
Ign:1 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release [963 B]
Get:3 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release.gpg [370 B]
Ign:3 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release.gpg
Get:4 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Sources [586 B]
Get:5 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Packages [659 B]
Fetched 2578 B in 1s (3472 B/s)
Reading package lists...
W: copy:///<<BUILDDIR>>/resolver-QN5XeZ/apt_archive/./Release.gpg: The key(s) in the keyring /etc/apt/trusted.gpg.d/sbuild-build-depends-archive.gpg are ignored as the file is not readable by user '_apt' executing apt-key.
W: GPG error: copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 35506D9A48F77B2E
Reading package lists...

Install libffi-platypus-perl build dependencies (apt-based resolver)
--------------------------------------------------------------------

Installing build dependencies
Reading package lists...
Building dependency tree...
Reading state information...
The following packages were automatically installed and are no longer required:
  ca-certificates e2fsprogs-l10n krb5-locales libgpg-error-l10n
  libsasl2-modules libssl1.1 openssl
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
  autoconf automake autopoint autotools-dev bsdmainutils debhelper
  dh-autoreconf dh-strip-nondeterminism dwz file gettext gettext-base
  groff-base intltool-debian libalt-alien-ffi-system-perl libarchive-zip-perl
  libbsd0 libcapture-tiny-perl libclass-inspector-perl libconfig-autoconf-perl
  libcroco3 libelf1 libffi-checklib-perl libffi-dev libfile-sharedir-perl
  libfile-slurp-tiny-perl libfile-stripnondeterminism-perl libglib2.0-0
  libicu63 libmagic-mgc libmagic1 libmodule-build-perl libpipeline1
  libsigsegv2 libtool libxml2 m4 man-db pkg-config po-debconf
Suggested packages:
  autoconf-archive gnu-standards autoconf-doc wamerican | wordlist whois
  vacation dh-make gettext-doc libasprintf-dev libgettextpo-dev groff
  libtool-doc gfortran | fortran95-compiler gcj-jdk m4-doc apparmor less
  www-browser libmail-box-perl
Recommended packages:
  curl | wget | lynx libarchive-cpio-perl libglib2.0-data shared-mime-info
  xdg-user-dirs libmodule-signature-perl libpod-readme-perl
  libsoftware-license-perl libltdl-dev libmail-sendmail-perl
The following NEW packages will be installed:
  autoconf automake autopoint autotools-dev bsdmainutils debhelper
  dh-autoreconf dh-strip-nondeterminism dwz file gettext gettext-base
  groff-base intltool-debian libalt-alien-ffi-system-perl libarchive-zip-perl
  libbsd0 libcapture-tiny-perl libclass-inspector-perl libconfig-autoconf-perl
  libcroco3 libelf1 libffi-checklib-perl libffi-dev libfile-sharedir-perl
  libfile-slurp-tiny-perl libfile-stripnondeterminism-perl libglib2.0-0
  libicu63 libmagic-mgc libmagic1 libmodule-build-perl libpipeline1
  libsigsegv2 libtool libxml2 m4 man-db pkg-config po-debconf
  sbuild-build-depends-libffi-platypus-perl-dummy
0 upgraded, 41 newly installed, 0 to remove and 48 not upgraded.
Need to get 18.6 MB of archives.
After this operation, 66.5 MB of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-QN5XeZ/apt_archive ./ sbuild-build-depends-libffi-platypus-perl-dummy 0.invalid.0 [952 B]
Get:2 http://172.17.0.1/private buster-staging/main armhf libbsd0 armhf 0.9.1-1 [104 kB]
Get:3 http://172.17.0.1/private buster-staging/main armhf bsdmainutils armhf 11.1.2 [182 kB]
Get:4 http://172.17.0.1/private buster-staging/main armhf groff-base armhf 1.22.3-10 [1005 kB]
Get:5 http://172.17.0.1/private buster-staging/main armhf libpipeline1 armhf 1.5.0-2 [25.1 kB]
Get:6 http://172.17.0.1/private buster-staging/main armhf man-db armhf 2.8.4-3 [1160 kB]
Get:7 http://172.17.0.1/private buster-staging/main armhf libmagic-mgc armhf 1:5.34-2 [239 kB]
Get:8 http://172.17.0.1/private buster-staging/main armhf libmagic1 armhf 1:5.34-2 [107 kB]
Get:9 http://172.17.0.1/private buster-staging/main armhf file armhf 1:5.34-2 [65.0 kB]
Get:10 http://172.17.0.1/private buster-staging/main armhf gettext-base armhf 0.19.8.1-9 [117 kB]
Get:11 http://172.17.0.1/private buster-staging/main armhf libsigsegv2 armhf 2.12-2 [32.3 kB]
Get:12 http://172.17.0.1/private buster-staging/main armhf m4 armhf 1.4.18-2 [185 kB]
Get:13 http://172.17.0.1/private buster-staging/main armhf autoconf all 2.69-11 [341 kB]
Get:14 http://172.17.0.1/private buster-staging/main armhf autotools-dev all 20180224.1 [77.0 kB]
Get:15 http://172.17.0.1/private buster-staging/main armhf automake all 1:1.16.1-4 [771 kB]
Get:16 http://172.17.0.1/private buster-staging/main armhf autopoint all 0.19.8.1-9 [434 kB]
Get:17 http://172.17.0.1/private buster-staging/main armhf libtool all 2.4.6-6 [547 kB]
Get:18 http://172.17.0.1/private buster-staging/main armhf dh-autoreconf all 19 [16.9 kB]
Get:19 http://172.17.0.1/private buster-staging/main armhf libarchive-zip-perl all 1.64-1 [96.8 kB]
Get:20 http://172.17.0.1/private buster-staging/main armhf libfile-stripnondeterminism-perl all 1.0.0-1 [19.5 kB]
Get:21 http://172.17.0.1/private buster-staging/main armhf dh-strip-nondeterminism all 1.0.0-1 [12.5 kB]
Get:22 http://172.17.0.1/private buster-staging/main armhf libelf1 armhf 0.170-0.5 [160 kB]
Get:23 http://172.17.0.1/private buster-staging/main armhf dwz armhf 0.12-3 [66.0 kB]
Get:24 http://172.17.0.1/private buster-staging/main armhf libglib2.0-0 armhf 2.58.1-2 [1051 kB]
Get:25 http://172.17.0.1/private buster-staging/main armhf libicu63 armhf 63.1-5 [7976 kB]
Get:26 http://172.17.0.1/private buster-staging/main armhf libxml2 armhf 2.9.4+dfsg1-7+b1 [570 kB]
Get:27 http://172.17.0.1/private buster-staging/main armhf libcroco3 armhf 0.6.12-2 [132 kB]
Get:28 http://172.17.0.1/private buster-staging/main armhf gettext armhf 0.19.8.1-9 [1219 kB]
Get:29 http://172.17.0.1/private buster-staging/main armhf intltool-debian all 0.35.0+20060710.4 [26.3 kB]
Get:30 http://172.17.0.1/private buster-staging/main armhf po-debconf all 1.0.21 [248 kB]
Get:31 http://172.17.0.1/private buster-staging/main armhf debhelper all 11.5.4 [1003 kB]
Get:32 http://172.17.0.1/private buster-staging/main armhf libffi-dev armhf 3.2.1-9 [159 kB]
Get:33 http://172.17.0.1/private buster-staging/main armhf pkg-config armhf 0.29-4 [59.2 kB]
Get:34 http://172.17.0.1/private buster-staging/main armhf libalt-alien-ffi-system-perl all 0.21-1 [7744 B]
Get:35 http://172.17.0.1/private buster-staging/main armhf libcapture-tiny-perl all 0.48-1 [26.0 kB]
Get:36 http://172.17.0.1/private buster-staging/main armhf libclass-inspector-perl all 1.32-1 [19.1 kB]
Get:37 http://172.17.0.1/private buster-staging/main armhf libfile-slurp-tiny-perl all 0.004-1 [7288 B]
Get:38 http://172.17.0.1/private buster-staging/main armhf libconfig-autoconf-perl all 0.317-1 [41.9 kB]
Get:39 http://172.17.0.1/private buster-staging/main armhf libffi-checklib-perl all 0.23-1 [12.5 kB]
Get:40 http://172.17.0.1/private buster-staging/main armhf libfile-sharedir-perl all 1.116-2 [16.7 kB]
Get:41 http://172.17.0.1/private buster-staging/main armhf libmodule-build-perl all 0.422400-1 [259 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 18.6 MB in 2s (8872 kB/s)
Selecting previously unselected package libbsd0:armhf.
(Reading database ... 15636 files and directories currently installed.)
Preparing to unpack .../00-libbsd0_0.9.1-1_armhf.deb ...
Unpacking libbsd0:armhf (0.9.1-1) ...
Selecting previously unselected package bsdmainutils.
Preparing to unpack .../01-bsdmainutils_11.1.2_armhf.deb ...
Unpacking bsdmainutils (11.1.2) ...
Selecting previously unselected package groff-base.
Preparing to unpack .../02-groff-base_1.22.3-10_armhf.deb ...
Unpacking groff-base (1.22.3-10) ...
Selecting previously unselected package libpipeline1:armhf.
Preparing to unpack .../03-libpipeline1_1.5.0-2_armhf.deb ...
Unpacking libpipeline1:armhf (1.5.0-2) ...
Selecting previously unselected package man-db.
Preparing to unpack .../04-man-db_2.8.4-3_armhf.deb ...
Unpacking man-db (2.8.4-3) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../05-libmagic-mgc_1%3a5.34-2_armhf.deb ...
Unpacking libmagic-mgc (1:5.34-2) ...
Selecting previously unselected package libmagic1:armhf.
Preparing to unpack .../06-libmagic1_1%3a5.34-2_armhf.deb ...
Unpacking libmagic1:armhf (1:5.34-2) ...
Selecting previously unselected package file.
Preparing to unpack .../07-file_1%3a5.34-2_armhf.deb ...
Unpacking file (1:5.34-2) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../08-gettext-base_0.19.8.1-9_armhf.deb ...
Unpacking gettext-base (0.19.8.1-9) ...
Selecting previously unselected package libsigsegv2:armhf.
Preparing to unpack .../09-libsigsegv2_2.12-2_armhf.deb ...
Unpacking libsigsegv2:armhf (2.12-2) ...
Selecting previously unselected package m4.
Preparing to unpack .../10-m4_1.4.18-2_armhf.deb ...
Unpacking m4 (1.4.18-2) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../11-autoconf_2.69-11_all.deb ...
Unpacking autoconf (2.69-11) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../12-autotools-dev_20180224.1_all.deb ...
Unpacking autotools-dev (20180224.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../13-automake_1%3a1.16.1-4_all.deb ...
Unpacking automake (1:1.16.1-4) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../14-autopoint_0.19.8.1-9_all.deb ...
Unpacking autopoint (0.19.8.1-9) ...
Selecting previously unselected package libtool.
Preparing to unpack .../15-libtool_2.4.6-6_all.deb ...
Unpacking libtool (2.4.6-6) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../16-dh-autoreconf_19_all.deb ...
Unpacking dh-autoreconf (19) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../17-libarchive-zip-perl_1.64-1_all.deb ...
Unpacking libarchive-zip-perl (1.64-1) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../18-libfile-stripnondeterminism-perl_1.0.0-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (1.0.0-1) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../19-dh-strip-nondeterminism_1.0.0-1_all.deb ...
Unpacking dh-strip-nondeterminism (1.0.0-1) ...
Selecting previously unselected package libelf1:armhf.
Preparing to unpack .../20-libelf1_0.170-0.5_armhf.deb ...
Unpacking libelf1:armhf (0.170-0.5) ...
Selecting previously unselected package dwz.
Preparing to unpack .../21-dwz_0.12-3_armhf.deb ...
Unpacking dwz (0.12-3) ...
Selecting previously unselected package libglib2.0-0:armhf.
Preparing to unpack .../22-libglib2.0-0_2.58.1-2_armhf.deb ...
Unpacking libglib2.0-0:armhf (2.58.1-2) ...
Selecting previously unselected package libicu63:armhf.
Preparing to unpack .../23-libicu63_63.1-5_armhf.deb ...
Unpacking libicu63:armhf (63.1-5) ...
Selecting previously unselected package libxml2:armhf.
Preparing to unpack .../24-libxml2_2.9.4+dfsg1-7+b1_armhf.deb ...
Unpacking libxml2:armhf (2.9.4+dfsg1-7+b1) ...
Selecting previously unselected package libcroco3:armhf.
Preparing to unpack .../25-libcroco3_0.6.12-2_armhf.deb ...
Unpacking libcroco3:armhf (0.6.12-2) ...
Selecting previously unselected package gettext.
Preparing to unpack .../26-gettext_0.19.8.1-9_armhf.deb ...
Unpacking gettext (0.19.8.1-9) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../27-intltool-debian_0.35.0+20060710.4_all.deb ...
Unpacking intltool-debian (0.35.0+20060710.4) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../28-po-debconf_1.0.21_all.deb ...
Unpacking po-debconf (1.0.21) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../29-debhelper_11.5.4_all.deb ...
Unpacking debhelper (11.5.4) ...
Selecting previously unselected package libffi-dev:armhf.
Preparing to unpack .../30-libffi-dev_3.2.1-9_armhf.deb ...
Unpacking libffi-dev:armhf (3.2.1-9) ...
Selecting previously unselected package pkg-config.
Preparing to unpack .../31-pkg-config_0.29-4_armhf.deb ...
Unpacking pkg-config (0.29-4) ...
Selecting previously unselected package libalt-alien-ffi-system-perl.
Preparing to unpack .../32-libalt-alien-ffi-system-perl_0.21-1_all.deb ...
Unpacking libalt-alien-ffi-system-perl (0.21-1) ...
Selecting previously unselected package libcapture-tiny-perl.
Preparing to unpack .../33-libcapture-tiny-perl_0.48-1_all.deb ...
Unpacking libcapture-tiny-perl (0.48-1) ...
Selecting previously unselected package libclass-inspector-perl.
Preparing to unpack .../34-libclass-inspector-perl_1.32-1_all.deb ...
Unpacking libclass-inspector-perl (1.32-1) ...
Selecting previously unselected package libfile-slurp-tiny-perl.
Preparing to unpack .../35-libfile-slurp-tiny-perl_0.004-1_all.deb ...
Unpacking libfile-slurp-tiny-perl (0.004-1) ...
Selecting previously unselected package libconfig-autoconf-perl.
Preparing to unpack .../36-libconfig-autoconf-perl_0.317-1_all.deb ...
Unpacking libconfig-autoconf-perl (0.317-1) ...
Selecting previously unselected package libffi-checklib-perl.
Preparing to unpack .../37-libffi-checklib-perl_0.23-1_all.deb ...
Unpacking libffi-checklib-perl (0.23-1) ...
Selecting previously unselected package libfile-sharedir-perl.
Preparing to unpack .../38-libfile-sharedir-perl_1.116-2_all.deb ...
Unpacking libfile-sharedir-perl (1.116-2) ...
Selecting previously unselected package libmodule-build-perl.
Preparing to unpack .../39-libmodule-build-perl_0.422400-1_all.deb ...
Adding 'diversion of /usr/bin/config_data to /usr/bin/config_data.diverted by libmodule-build-perl'
Adding 'diversion of /usr/share/man/man1/config_data.1.gz to /usr/share/man/man1/config_data.diverted.1.gz by libmodule-build-perl'
Unpacking libmodule-build-perl (0.422400-1) ...
Selecting previously unselected package sbuild-build-depends-libffi-platypus-perl-dummy.
Preparing to unpack .../40-sbuild-build-depends-libffi-platypus-perl-dummy_0.invalid.0_armhf.deb ...
Unpacking sbuild-build-depends-libffi-platypus-perl-dummy (0.invalid.0) ...
Setting up libfile-slurp-tiny-perl (0.004-1) ...
Setting up libarchive-zip-perl (1.64-1) ...
Setting up libicu63:armhf (63.1-5) ...
Setting up libffi-checklib-perl (0.23-1) ...
Setting up libsigsegv2:armhf (2.12-2) ...
Setting up libelf1:armhf (0.170-0.5) ...
Setting up groff-base (1.22.3-10) ...
Setting up libglib2.0-0:armhf (2.58.1-2) ...
No schema files found: doing nothing.
Setting up libcapture-tiny-perl (0.48-1) ...
Setting up libffi-dev:armhf (3.2.1-9) ...
Setting up gettext-base (0.19.8.1-9) ...
Setting up libpipeline1:armhf (1.5.0-2) ...
Setting up m4 (1.4.18-2) ...
Setting up libbsd0:armhf (0.9.1-1) ...
Setting up libxml2:armhf (2.9.4+dfsg1-7+b1) ...
Setting up libmagic-mgc (1:5.34-2) ...
Setting up libmagic1:armhf (1:5.34-2) ...
Setting up libcroco3:armhf (0.6.12-2) ...
Setting up pkg-config (0.29-4) ...
Processing triggers for libc-bin (2.28-2) ...
Setting up dwz (0.12-3) ...
Setting up autotools-dev (20180224.1) ...
Setting up bsdmainutils (11.1.2) ...
update-alternatives: using /usr/bin/bsd-write to provide /usr/bin/write (write) in auto mode
update-alternatives: using /usr/bin/bsd-from to provide /usr/bin/from (from) in auto mode
Setting up libmodule-build-perl (0.422400-1) ...
Setting up autopoint (0.19.8.1-9) ...
Setting up libclass-inspector-perl (1.32-1) ...
Setting up libfile-stripnondeterminism-perl (1.0.0-1) ...
Setting up gettext (0.19.8.1-9) ...
Setting up libconfig-autoconf-perl (0.317-1) ...
Setting up libalt-alien-ffi-system-perl (0.21-1) ...
Setting up autoconf (2.69-11) ...
Setting up file (1:5.34-2) ...
Setting up intltool-debian (0.35.0+20060710.4) ...
Setting up automake (1:1.16.1-4) ...
update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode
Setting up man-db (2.8.4-3) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libfile-sharedir-perl (1.116-2) ...
Setting up libtool (2.4.6-6) ...
Setting up po-debconf (1.0.21) ...
Setting up dh-autoreconf (19) ...
Setting up dh-strip-nondeterminism (1.0.0-1) ...
Setting up debhelper (11.5.4) ...
Setting up sbuild-build-depends-libffi-platypus-perl-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.28-2) ...

+------------------------------------------------------------------------------+
| Build environment                                                            |
+------------------------------------------------------------------------------+

Kernel: Linux 4.9.0-0.bpo.1-armmp armhf (armv7l)
Toolchain package versions: binutils_2.31.1-10+rpi1 dpkg-dev_1.19.2 g++-8_8.2.0-9+rpi1 gcc-8_8.2.0-9+rpi1 libc6-dev_2.28-2 libstdc++-8-dev_8.2.0-9+rpi1 libstdc++6_8.2.0-9+rpi1 linux-libc-dev_4.18.20-2+rpi1
Package versions: adduser_3.118 apt_1.8.0~alpha2 autoconf_2.69-11 automake_1:1.16.1-4 autopoint_0.19.8.1-9 autotools-dev_20180224.1 base-files_10.1+rpi1 base-passwd_3.5.45 bash_4.4.18-3.1 binutils_2.31.1-10+rpi1 binutils-arm-linux-gnueabihf_2.31.1-10+rpi1 binutils-common_2.31.1-10+rpi1 bsdmainutils_11.1.2 bsdutils_1:2.33-0.2 build-essential_12.5 bzip2_1.0.6-9 ca-certificates_20170717 coreutils_8.30-1 cpio_2.12+dfsg-6 cpp_4:8.2.0-2+rpi1 cpp-8_8.2.0-9+rpi1 dash_0.5.10.2-2 debconf_1.5.69 debhelper_11.5.4 debianutils_4.8.6 dh-autoreconf_19 dh-strip-nondeterminism_1.0.0-1 diffutils_1:3.6-1 dirmngr_2.2.11-1 dmsetup_2:1.02.145-4.1+b5 dpkg_1.19.2 dpkg-dev_1.19.2 dwz_0.12-3 e2fslibs_1.44.4-2 e2fsprogs_1.44.4-2 e2fsprogs-l10n_1.44.4-2 fakeroot_1.23-1 fdisk_2.33-0.2 file_1:5.34-2 findutils_4.6.0+git+20181018-1 g++_4:8.2.0-2+rpi1 g++-8_8.2.0-9+rpi1 gcc_4:8.2.0-2+rpi1 gcc-4.6-base_4.6.4-5+rpi1 gcc-4.7-base_4.7.3-11+rpi1 gcc-4.8-base_4.8.5-4 gcc-4.9-base_4.9.4-2+rpi1+b19 gcc-5-base_5.5.0-8 gcc-8_8.2.0-9+rpi1 gcc-8-base_8.2.0-9+rpi1 gettext_0.19.8.1-9 gettext-base_0.19.8.1-9 gnupg_2.2.11-1 gnupg-agent_2.2.11-1 gnupg-l10n_2.2.11-1 gnupg-utils_2.2.11-1 gpg_2.2.11-1 gpg-agent_2.2.11-1 gpg-wks-client_2.2.11-1 gpg-wks-server_2.2.11-1 gpgconf_2.2.11-1 gpgsm_2.2.11-1 gpgv_2.2.11-1 grep_3.1-2 groff-base_1.22.3-10 gzip_1.9-2.1 hostname_3.21 inetutils-ping_2:1.9.4-5 init-system-helpers_1.56 initramfs-tools_0.132 initramfs-tools-core_0.132 intltool-debian_0.35.0+20060710.4 klibc-utils_2.0.4-14+rpi1 kmod_25-2 krb5-locales_1.16.1-1 libacl1_2.2.52-3 libalt-alien-ffi-system-perl_0.21-1 libapparmor1_2.13.1-3+b1 libapt-pkg5.0_1.8.0~alpha2 libarchive-zip-perl_1.64-1 libargon2-1_0~20171227-0.1 libasan5_8.2.0-9+rpi1 libassuan0_2.5.1-2 libatomic1_8.2.0-9+rpi1 libattr1_1:2.4.47-2 libaudit-common_1:2.8.4-2 libaudit1_1:2.8.4-2 libbinutils_2.31.1-10+rpi1 libblkid1_2.33-0.2 libbsd0_0.9.1-1 libbz2-1.0_1.0.6-9 libc-bin_2.28-2 libc-dev-bin_2.28-2 libc6_2.28-2 libc6-dev_2.28-2 libcap-ng0_0.7.9-1 libcap2_1:2.25-1.2 libcapture-tiny-perl_0.48-1 libcc1-0_8.2.0-9+rpi1 libclass-inspector-perl_1.32-1 libcom-err2_1.44.4-2 libconfig-autoconf-perl_0.317-1 libcroco3_0.6.12-2 libcryptsetup12_2:2.0.6-1 libcryptsetup4_2:1.7.5-1 libdb5.3_5.3.28+dfsg1-0.2 libdbus-1-3_1.12.12-1 libdebconfclient0_0.245 libdevmapper1.02.1_2:1.02.145-4.1+b5 libdpkg-perl_1.19.2 libdrm-common_2.4.95-1+rpi1 libdrm2_2.4.95-1+rpi1 libelf1_0.170-0.5 libext2fs2_1.44.4-2 libfakeroot_1.23-1 libfdisk1_2.33-0.2 libffi-checklib-perl_0.23-1 libffi-dev_3.2.1-9 libffi6_3.2.1-9 libfile-sharedir-perl_1.116-2 libfile-slurp-tiny-perl_0.004-1 libfile-stripnondeterminism-perl_1.0.0-1 libgcc-8-dev_8.2.0-9+rpi1 libgcc1_1:8.2.0-9+rpi1 libgcrypt20_1.8.4-4 libgdbm-compat4_1.18.1-2 libgdbm3_1.8.3-14 libgdbm6_1.18.1-2 libglib2.0-0_2.58.1-2 libgmp10_2:6.1.2+dfsg-4 libgnutls30_3.5.19-1+b1 libgomp1_8.2.0-9+rpi1 libgpg-error-l10n_1.32-3 libgpg-error0_1.32-3 libgssapi-krb5-2_1.16.1-1 libhogweed4_3.4.1~rc1-1 libicu63_63.1-5 libidn11_1.33-2.2 libidn2-0_2.0.5-1 libip4tc0_1.8.2-2+b1 libisl19_0.20-2 libjson-c3_0.12.1-1.3 libk5crypto3_1.16.1-1 libkeyutils1_1.5.9-9.3 libklibc_2.0.4-14+rpi1 libkmod2_25-2 libkrb5-3_1.16.1-1 libkrb5support0_1.16.1-1 libksba8_1.3.5-2 libldap-2.4-2_2.4.46+dfsg-5+rpi1+b1 libldap-common_2.4.46+dfsg-5+rpi1 liblz4-1_1.8.2-1+rpi1 liblzma5_5.2.2-1.3 libmagic-mgc_1:5.34-2 libmagic1_1:5.34-2 libmodule-build-perl_0.422400-1 libmount1_2.33-0.2 libmpc3_1.1.0-1 libmpfr6_4.0.1-2 libncurses5_6.1+20181013-1 libncurses6_6.1+20181013-1 libncursesw5_6.1+20181013-1 libncursesw6_6.1+20181013-1 libnettle6_3.4.1~rc1-1 libnpth0_1.6-1 libp11-kit0_0.23.14-2 libpam-modules_1.1.8-3.8 libpam-modules-bin_1.1.8-3.8 libpam-runtime_1.1.8-3.8 libpam0g_1.1.8-3.8 libpcre3_2:8.39-11+rpi1 libperl5.24_5.24.1-7 libperl5.28_5.28.1-3 libpipeline1_1.5.0-2 libplymouth4_0.9.4-1 libpng16-16_1.6.34-2+rpi1 libprocps7_2:3.3.15-2 libreadline7_7.0-5 libsasl2-2_2.1.27~rc8-1 libsasl2-modules_2.1.27~rc8-1 libsasl2-modules-db_2.1.27~rc8-1 libseccomp2_2.3.3-3 libselinux1_2.8-1 libsemanage-common_2.8-1 libsemanage1_2.8-1 libsepol1_2.8-1 libsigsegv2_2.12-2 libsmartcols1_2.33-0.2 libsqlite3-0_3.26.0-3 libss2_1.44.4-2 libssl1.1_1.1.1a-1 libstdc++-8-dev_8.2.0-9+rpi1 libstdc++6_8.2.0-9+rpi1 libsystemd0_239-15+rpi1 libtasn1-6_4.13-3 libtinfo5_6.1+20181013-1 libtinfo6_6.1+20181013-1 libtool_2.4.6-6 libubsan1_8.2.0-9+rpi1 libudev1_239-15+rpi1 libunistring2_0.9.10-1 libustr-1.0-1_1.0.4-6 libuuid1_2.33-0.2 libxml2_2.9.4+dfsg1-7+b1 libzstd1_1.3.5+dfsg-1+rpi1 linux-base_4.5 linux-libc-dev_4.18.20-2+rpi1 login_1:4.5-1.1 lsb-base_10.2018112800+rpi1 m4_1.4.18-2 make_4.2.1-1.2 makedev_2.3.1-94 man-db_2.8.4-3 mawk_1.3.3-17 mount_2.33-0.2 multiarch-support_2.28-2 nano_3.2-1 ncurses-base_6.1+20181013-1 ncurses-bin_6.1+20181013-1 netbase_5.5 openssl_1.1.1a-1 passwd_1:4.5-1.1 patch_2.7.6-3 perl_5.28.1-3 perl-base_5.28.1-3 perl-modules-5.24_5.24.1-7 perl-modules-5.28_5.28.1-3 pinentry-curses_1.1.0-1 pkg-config_0.29-4 plymouth_0.9.4-1 po-debconf_1.0.21 procps_2:3.3.15-2 raspbian-archive-keyring_20120528.2 readline-common_7.0-5 sbuild-build-depends-core-dummy_0.invalid.0 sbuild-build-depends-libffi-platypus-perl-dummy_0.invalid.0 sed_4.5-2 sensible-utils_0.0.12 systemd_239-15+rpi1 sysvinit-utils_2.93-1 tar_1.30+dfsg-3+rpi1 tzdata_2018g-1 udev_239-15+rpi1 util-linux_2.33-0.2 xz-utils_5.2.2-1.3 zlib1g_1:1.2.11.dfsg-1

+------------------------------------------------------------------------------+
| Build                                                                        |
+------------------------------------------------------------------------------+


Unpack source
-------------

gpgv: unknown type of key resource 'trustedkeys.kbx'
gpgv: keyblock resource '/sbuild-nonexistent/.gnupg/trustedkeys.kbx': General error
gpgv: Signature made Fri Dec 21 19:33:59 2018 UTC
gpgv:                using RSA key D1E1316E93A760A8104D85FABB3A68018649AA06
gpgv: Can't check signature: No public key
dpkg-source: warning: failed to verify signature on ./libffi-platypus-perl_0.59-1.dsc
dpkg-source: info: extracting libffi-platypus-perl in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking libffi-platypus-perl_0.59.orig.tar.gz
dpkg-source: info: unpacking libffi-platypus-perl_0.59-1.debian.tar.xz

Check disc space
----------------

Sufficient free space for build

User Environment
----------------

APT_CONFIG=/var/lib/sbuild/apt.conf
DEB_BUILD_OPTIONS=parallel=4
HOME=/sbuild-nonexistent
LC_ALL=POSIX
LOGNAME=buildd
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SCHROOT_ALIAS_NAME=buster-staging-armhf-sbuild
SCHROOT_CHROOT_NAME=buster-staging-armhf-sbuild
SCHROOT_COMMAND=env
SCHROOT_GID=109
SCHROOT_GROUP=buildd
SCHROOT_SESSION_ID=buster-staging-armhf-sbuild-f2595714-3530-42b9-a6be-879f8704acf6
SCHROOT_UID=104
SCHROOT_USER=buildd
SHELL=/bin/sh
TERM=linux
USER=buildd

dpkg-buildpackage
-----------------

dpkg-buildpackage: info: source package libffi-platypus-perl
dpkg-buildpackage: info: source version 0.59-1
dpkg-buildpackage: info: source distribution unstable
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture armhf
 fakeroot debian/rules clean
dh clean
   dh_clean
 debian/rules build-arch
dh build-arch
   dh_update_autotools_config -a
   dh_autoreconf -a
   dh_auto_configure -a
	perl -I. Build.PL --installdirs vendor --config "optimize=-g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2" --config "ld=arm-linux-gnueabihf-gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -Wl,-z,now"
command = pkg-config --cflags libffi
command = pkg-config --libs libffi


CONFIGURE
  + $args{extra_compiler_flags} = 
  + $args{extra_linker_flags} = -lffi


Created MYMETA.yml and MYMETA.json
Creating new 'Build' script for 'FFI-Platypus' version '0.59'
   dh_auto_build -a
	perl Build
Checking for cc... arm-linux-gnueabihf-gcc
Checking for stdlib.h... yes
Checking for stdint.h... yes
Checking for sys/types.h... yes
Checking for sys/stat.h... yes
Checking for unistd.h... yes
Checking for alloca.h... yes
Checking for dlfcn.h... yes
Checking for limits.h... yes
Checking for stddef.h... yes
Checking for wchar.h... yes
Checking for signal.h... yes
Checking for inttypes.h... yes
Checking for windows.h... no
Checking for sys/cygwin.h... no
Checking for string.h... yes
Checking for psapi.h... no
Checking for stdio.h... yes
Checking for stdbool.h... yes
Checking for complex.h... yes
Checking for stdlib.h... (cached) yes
Checking for stdarg.h... yes
Checking for string.h... (cached) yes
Checking for float.h... yes
Checking for assert.h... yes
Checking for ctype.h... yes
Checking for errno.h... yes
Checking for limits.h... (cached) yes
Checking for locale.h... yes
Checking for math.h... yes
Checking for setjmp.h... yes
Checking for signal.h... (cached) yes
Checking for stddef.h... (cached) yes
Checking for stdio.h... (cached) yes
Checking for time.h... yes
Checking whether RTLD_LAZY is declared... yes
Checking whether alloca is declared... yes
Checking for dlopen in -ldl... yes
Checking for size of char... yes
Checking for compute result of (signed(char))... no
Checking for size of signed char... yes
Checking for size of unsigned char... yes
Checking for size of short... 2
Checking for compute result of (signed(short))... yes
Checking for size of signed short... 2
Checking for size of unsigned short... 2
Checking for size of int... 4
Checking for compute result of (signed(int))... yes
Checking for size of signed int... 4
Checking for size of unsigned int... 4
Checking for size of long... 4
Checking for compute result of (signed(long))... yes
Checking for size of signed long... 4
Checking for size of unsigned long... 4
Checking for size of size_t... 4
Checking for compute result of (signed(size_t))... no
Checking for size of float... 4
Checking for size of double... 8
Checking for size of bool... no
Checking for size of _Bool... yes
Checking for compute result of (signed(_Bool))... no
Checking for size of void*... 4
Checking for compute result of (signed(void*))... no
Checking for size of long long... 8
Checking for compute result of (signed(long long))... yes
Checking for size of signed long long... 8
Checking for size of unsigned long long... 8
Checking for size of dev_t... 8
Checking for compute result of (signed(dev_t))... no
Checking for size of ino_t... 8
Checking for compute result of (signed(ino_t))... no
Checking for size of mode_t... 4
Checking for compute result of (signed(mode_t))... no
Checking for size of nlink_t... 4
Checking for compute result of (signed(nlink_t))... no
Checking for size of uid_t... 4
Checking for compute result of (signed(uid_t))... no
Checking for size of gid_t... 4
Checking for compute result of (signed(gid_t))... no
Checking for size of off_t... 8
Checking for compute result of (signed(off_t))... no
Checking for size of blksize_t... 4
Checking for compute result of (signed(blksize_t))... no
Checking for size of blkcnt_t... 8
Checking for compute result of (signed(blkcnt_t))... no
Checking for size of time_t... 4
Checking for compute result of (signed(time_t))... no
Checking for size of int_least8_t... yes
Checking for size of int_least16_t... 2
Checking for size of int_least32_t... 4
Checking for size of int_least64_t... 8
Checking for size of uint_least8_t... yes
Checking for size of uint_least16_t... 2
Checking for size of uint_least32_t... 4
Checking for size of uint_least64_t... 8
Checking for size of ptrdiff_t... 4
Checking for compute result of (signed(ptrdiff_t))... no
Checking for size of wchar_t... 4
Checking for compute result of (signed(wchar_t))... no
Checking for size of wint_t... no
Checking for stdlib.h... (cached) yes
Checking for stdarg.h... (cached) yes
Checking for string.h... (cached) yes
Checking for float.h... (cached) yes
Checking for assert.h... (cached) yes
Checking for ctype.h... (cached) yes
Checking for errno.h... (cached) yes
Checking for limits.h... (cached) yes
Checking for locale.h... (cached) yes
Checking for math.h... (cached) yes
Checking for setjmp.h... (cached) yes
Checking for signal.h... (cached) yes
Checking for stddef.h... (cached) yes
Checking for stdio.h... (cached) yes
Checking for time.h... (cached) yes
Checking for sys/types.h... (cached) yes
Checking for sys/stat.h... (cached) yes
Checking for memory.h... yes
Checking for strings.h... yes
Checking for inttypes.h... (cached) yes
Checking for stdint.h... (cached) yes
Checking for unistd.h... (cached) yes
Checking for align of void*... 4
Checking for align of float... 4
Checking for align of double... 8
Checking for align of long double... 8
Checking for align of float complex... no
Checking for compute result of (__builtin_offsetof(struct align, bfloat_complex))... 4
Checking for align of double complex... no
Checking for compute result of (__builtin_offsetof(struct align, bdouble_complex))... 8
Checking for align of int8_t... yes
Checking for align of int16_t... 2
Checking for align of int32_t... 4
Checking for align of int64_t... 8
Checking for size of long double... 8
Checking for size of float complex... 8
Checking for size of double complex... 16
Checking for size of complex... 16
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o inc/probe/abi.o inc/probe/abi.c
arm-linux-gnueabihf-gcc -fstack-protector-strong -L/usr/local/lib -Wl,-z,relro -Wl,-z,now -o inc/probe/abi inc/probe/abi.o -lffi
inc/probe/abi --test
exit = 0
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o inc/probe/bigendian.o inc/probe/bigendian.c
arm-linux-gnueabihf-gcc -fstack-protector-strong -L/usr/local/lib -Wl,-z,relro -Wl,-z,now -o inc/probe/bigendian inc/probe/bigendian.o -lffi
inc/probe/bigendian --test
exit = 2
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o inc/probe/bigendian64.o inc/probe/bigendian64.c
arm-linux-gnueabihf-gcc -fstack-protector-strong -L/usr/local/lib -Wl,-z,relro -Wl,-z,now -o inc/probe/bigendian64 inc/probe/bigendian64.o -lffi
inc/probe/bigendian64 --test
exit = 2
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o inc/probe/complex.o inc/probe/complex.c
inc/probe/complex.c: In function 'main':
inc/probe/complex.c:34:14: error: 'ffi_type_complex_float' undeclared (first use in this function); did you mean 'ffi_type_float'?
   args[0] = &ffi_type_complex_float;
              ^~~~~~~~~~~~~~~~~~~~~~
              ffi_type_float
inc/probe/complex.c:34:14: note: each undeclared identifier is reported only once for each function it appears in
inc/probe/complex.c:56:14: error: 'ffi_type_complex_double' undeclared (first use in this function); did you mean 'ffi_type_longdouble'?
   args[0] = &ffi_type_complex_double;
              ^~~~~~~~~~~~~~~~~~~~~~~
              ffi_type_longdouble
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o inc/probe/longdouble.o inc/probe/longdouble.c
arm-linux-gnueabihf-gcc -fstack-protector-strong -L/usr/local/lib -Wl,-z,relro -Wl,-z,now -o inc/probe/longdouble inc/probe/longdouble.o -lffi
inc/probe/longdouble --test
exit = 2
probing for ABIs...
arm-linux-gnueabihf-gcc  -E  .abi-probe-test/Vv26ZmwyBO/ffitest.c
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -DTRY_FFI_ABI=FFI_DEFAULT_ABI -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o .abi-probe-test/Vv26ZmwyBO/default_abi.o .abi-probe-test/Vv26ZmwyBO/default_abi.c
arm-linux-gnueabihf-gcc -fstack-protector-strong -L/usr/local/lib -Wl,-z,relro -Wl,-z,now -o .abi-probe-test/Vv26ZmwyBO/default_abi .abi-probe-test/Vv26ZmwyBO/default_abi.o -lffi
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -DTRY_FFI_ABI=FFI_SYSV -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o .abi-probe-test/Vv26ZmwyBO/sysv.o .abi-probe-test/Vv26ZmwyBO/sysv.c
arm-linux-gnueabihf-gcc -fstack-protector-strong -L/usr/local/lib -Wl,-z,relro -Wl,-z,now -o .abi-probe-test/Vv26ZmwyBO/sysv .abi-probe-test/Vv26ZmwyBO/sysv.o -lffi
arm-linux-gnueabihf-gcc -Iinclude -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -DTRY_FFI_ABI=FFI_VFP -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o .abi-probe-test/Vv26ZmwyBO/vfp.o .abi-probe-test/Vv26ZmwyBO/vfp.c
arm-linux-gnueabihf-gcc -fstack-protector-strong -L/usr/local/lib -Wl,-z,relro -Wl,-z,now -o .abi-probe-test/Vv26ZmwyBO/vfp .abi-probe-test/Vv26ZmwyBO/vfp.o -lffi
  found abi: default_abi = 2
  found abi: sysv = 1
  found abi: vfp = 2
Building FFI-Platypus
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/closure.o xs/closure.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/complex.o xs/complex.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/custom.o xs/custom.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/havepm.o xs/havepm.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/meta.o xs/meta.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/names.o xs/names.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/perl_math_int64.o xs/perl_math_int64.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/record_opaque.o xs/record_opaque.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/record_simple.o xs/record_simple.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/record_string.o xs/record_string.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o xs/windl.o xs/windl.c
arm-linux-gnueabihf-gcc -Iinclude -Ixs -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -DVERSION="0.59" -DXS_VERSION="0.59" -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o lib/FFI/Platypus.o lib/FFI/Platypus.c
ExtUtils::Mkbootstrap::Mkbootstrap('blib/arch/auto/FFI/Platypus/Platypus.bs')
arm-linux-gnueabihf-gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -Wl,-z,now -shared -L/usr/local/lib -fstack-protector-strong -o blib/arch/auto/FFI/Platypus/Platypus.so lib/FFI/Platypus.o xs/closure.o xs/complex.o xs/custom.o xs/havepm.o xs/meta.o xs/names.o xs/perl_math_int64.o xs/record_opaque.o xs/record_simple.o xs/record_string.o xs/windl.o -lffi
   dh_auto_test -a
	perl Build test --verbose 1
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/align.o t/ffi/align.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/align_array.o t/ffi/align_array.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/align_fixed.o t/ffi/align_fixed.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/align_string.o t/ffi/align_string.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/basic.o t/ffi/basic.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/closure.o t/ffi/closure.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/color.o t/ffi/color.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/complex_double.o t/ffi/complex_double.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/complex_float.o t/ffi/complex_float.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/double.o t/ffi/double.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/float.o t/ffi/float.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/longdouble.o t/ffi/longdouble.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/memcmp4.o t/ffi/memcmp4.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/pointer.o t/ffi/pointer.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/record.o t/ffi/record.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/sint16.o t/ffi/sint16.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/sint32.o t/ffi/sint32.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/sint64.o t/ffi/sint64.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/sint8.o t/ffi/sint8.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/string.o t/ffi/string.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/string_array.o t/ffi/string_array.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/uint16.o t/ffi/uint16.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/uint32.o t/ffi/uint32.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/uint64.o t/ffi/uint64.c
arm-linux-gnueabihf-gcc -I/<<PKGBUILDDIR>>/include -I/usr/lib/arm-linux-gnueabihf/perl/5.28/CORE -fPIC -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -o t/ffi/uint8.o t/ffi/uint8.c
arm-linux-gnueabihf-gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -Wl,-z,now -shared -L/usr/local/lib -fstack-protector-strong -o /<<PKGBUILDDIR>>/t/ffi/libtest.so t/ffi/align.o t/ffi/align_array.o t/ffi/align_fixed.o t/ffi/align_string.o t/ffi/basic.o t/ffi/closure.o t/ffi/color.o t/ffi/complex_double.o t/ffi/complex_float.o t/ffi/double.o t/ffi/float.o t/ffi/longdouble.o t/ffi/memcmp4.o t/ffi/pointer.o t/ffi/record.o t/ffi/sint16.o t/ffi/sint32.o t/ffi/sint64.o t/ffi/sint8.o t/ffi/string.o t/ffi/string_array.o t/ffi/uint16.o t/ffi/uint32.o t/ffi/uint64.o t/ffi/uint8.o -lffi
# 
# 
# 
# HARNESS_ACTIVE=1
# HARNESS_IS_VERBOSE=1
# HARNESS_VERSION=3.42
# LC_ALL=POSIX
# PERL5LIB=/<<PKGBUILDDIR>>/blib/lib:/<<PKGBUILDDIR>>/blib/arch:inc
# PERL_DL_NONLAZY=1
# PERL_USE_UNSAFE_INC=1
# SHELL=/bin/sh
# 
# 
# 
# PERL5LIB path
# /<<PKGBUILDDIR>>/blib/lib
# /<<PKGBUILDDIR>>/blib/arch
# inc
# 
# 
# 
# perl               5.028001
# Alien::Base        -
# Alien::FFI         0.21
# Capture::Tiny      0.48
# Config::AutoConf   0.317
# ExtUtils::CBuilder 0.280230
# FFI::CheckLib      0.23
# File::ShareDir     1.116
# IPC::Cmd           1.00
# Module::Build      0.4224
# PkgConfig          -
# Test::More         1.302133
# constant           1.33
# 
# 
# 
# Alien::FFI version       = 0.21
# Alien::FFI->install_type = system
# Alien::FFI->cflags       = 
# Alien::FFI->libs         = -lffi
# Alien::FFI->dist_dir     = undef
# Alien::FFI->version      = 3.2.1
# extended diagnostic failed: Can't locate object method "runtime_prop" via package "Alien::FFI" at t/00_diag.t line 38.
# 
# 
# 
# CPU Info:
#   model name	: ARMv7 Processor rev 10 (v7l)
# 
# 
# 
t/00_diag.t .............................. 
1..1
ok 1 - okay
command = pkg-config --cflags libffi
command = pkg-config --libs libffi
ok
t/01_use.t ............................... 
ok 1 - require FFI::Platypus;
ok 2 - require FFI::Platypus::API;
ok 3 - require FFI::Platypus::Buffer;
ok 4 - require FFI::Platypus::DL;
ok 5 - require FFI::Platypus::Declare;
ok 6 - require FFI::Platypus::Lang;
ok 7 - require FFI::Platypus::Lang::ASM;
ok 8 - require FFI::Platypus::Lang::C;
ok 9 - require FFI::Platypus::Lang::Win32;
ok 10 - require FFI::Platypus::Memory;
ok 11 - require FFI::Platypus::Record;
ok 12 - require FFI::Platypus::Record::TieArray;
ok 13 - require FFI::Platypus::ShareConfig;
ok 14 - require FFI::Platypus::Type::PointerSizeBuffer;
ok 15 - require FFI::Platypus::Type::StringPointer;
ok 16 - test for FFI::Platypus
ok 17 - test for FFI::Platypus::API
ok 18 - test for FFI::Platypus::Buffer
ok 19 - test for FFI::Platypus::DL
ok 20 - test for FFI::Platypus::Declare
ok 21 - test for FFI::Platypus::Lang
ok 22 - test for FFI::Platypus::Lang::ASM
ok 23 - test for FFI::Platypus::Lang::C
ok 24 - test for FFI::Platypus::Lang::Win32
ok 25 - test for FFI::Platypus::Memory
ok 26 - test for FFI::Platypus::Record
ok 27 - test for FFI::Platypus::Record::TieArray
ok 28 - test for FFI::Platypus::ShareConfig
ok 29 - test for FFI::Platypus::Type::PointerSizeBuffer
ok 30 - test for FFI::Platypus::Type::StringPointer
1..30
ok
t/ffi_platypus.t ......................... 
# Subtest: constructor
    # Subtest: basic
        ok 1 - An object of class 'FFI::Platypus' isa 'FFI::Platypus'
        1..1
    ok 1 - basic
    # Subtest: no arguments
        ok 1 - 'FFI::Platypus.new' isa 'FFI::Platypus'
        ok 2 - ffi.lib
        1..2
    ok 2 - no arguments
    # Subtest: with single lib
        ok 1 - 'FFI::Platypus.new' isa 'FFI::Platypus'
        ok 2 - ffi.lib
        1..2
    ok 3 - with single lib
    # Subtest: with multiple lib
        ok 1 - 'FFI::Platypus.new' isa 'FFI::Platypus'
        ok 2 - ffi.lib
        1..2
    ok 4 - with multiple lib
    1..4
ok 1 - constructor
# Subtest: abi
    ok 1 - has a default ABI
    # Subtest: vfp
        ok 1 - string
        ok 2 - integer
        1..2
    ok 2 - vfp
    # Subtest: default_abi
        ok 1 - string
        ok 2 - integer
        1..2
    ok 3 - default_abi
    # Subtest: sysv
        ok 1 - string
        ok 2 - integer
        1..2
    ok 4 - sysv
    # Subtest: bogus
        ok 1 - string
        ok 2 - integer
        1..2
    ok 5 - bogus
    1..5
ok 2 - abi
# Subtest: alignof
    # Subtest: ffi types
        ok 1 - alignof sint8 = 1
        ok 2 - alignof sint8 [2] = 1
        ok 3 - alignof sint8 * = 4
        ok 4 - alignof custom_sint8 = 1
        ok 5 - alignof uint8 = 1
        ok 6 - alignof uint8 [2] = 1
        ok 7 - alignof uint8 * = 4
        ok 8 - alignof custom_uint8 = 1
        ok 9 - alignof sint16 = 2
        ok 10 - alignof sint16 [2] = 2
        ok 11 - alignof sint16 * = 4
        ok 12 - alignof custom_sint16 = 2
        ok 13 - alignof uint16 = 2
        ok 14 - alignof uint16 [2] = 2
        ok 15 - alignof uint16 * = 4
        ok 16 - alignof custom_uint16 = 2
        ok 17 - alignof sint32 = 4
        ok 18 - alignof sint32 [2] = 4
        ok 19 - alignof sint32 * = 4
        ok 20 - alignof custom_sint32 = 4
        ok 21 - alignof uint32 = 4
        ok 22 - alignof uint32 [2] = 4
        ok 23 - alignof uint32 * = 4
        ok 24 - alignof custom_uint32 = 4
        ok 25 - alignof sint64 = 8
        ok 26 - alignof sint64 [2] = 8
        ok 27 - alignof sint64 * = 4
        ok 28 - alignof custom_sint64 = 8
        ok 29 - alignof uint64 = 8
        ok 30 - alignof uint64 [2] = 8
        ok 31 - alignof uint64 * = 4
        ok 32 - alignof custom_uint64 = 8
        ok 33 - alignof float = 4
        ok 34 - alignof float [2] = 4
        ok 35 - alignof float * = 4
        ok 36 - alignof custom_float = 4
        ok 37 - alignof double = 8
        ok 38 - alignof double [2] = 8
        ok 39 - alignof double * = 4
        ok 40 - alignof custom_double = 8
        ok 41 - alignof opaque = 4
        ok 42 - alignof opaque [2] = 4
        ok 43 - alignof opaque * = 4
        ok 44 - alignof custom_opaque = 4
        ok 45 - alignof string = 4
        1..45
    ok 1 - ffi types
    # Subtest: aliases
        ok 1 - alignof ushort = 2
        ok 2 - alignof foo = 2
        1..2
    ok 2 - aliases
    # Subtest: closure
        ok 1 - sizeof closure_t = 4
        1..1
    ok 3 - closure
    # Subtest: record
        ok 1
        # {'ffi_type' => 'pointer','ref' => 0,'size' => 22,'type' => 'record','type_code' => 2307}
        1..1
    ok 4 - record
    1..4
ok 3 - alignof
# Subtest: custom type
    # Subtest: float
        ok 1 - ffi.custom_type 1
        # {'float_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'custom_perl','type_code' => 16451}}
        ok 2 - ffi.custom_type 1
        # {'float_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'custom_perl','type_code' => 16451}}
        ok 3 - ffi.custom_type 1
        # {'float_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'custom_perl','type_code' => 16451}}
        ok 4 - ffi.custom_type 1
        # {'float_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'custom_perl','type_code' => 16451}}
        ok 5 - ffi.custom_type 1
        # {'float_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'custom_perl','type_code' => 16451}}
        ok 6 - ffi.custom_type 1
        # {'float_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'custom_perl','type_code' => 16451}}
        1..6
    ok 1 - float
    # Subtest: double
        ok 1 - ffi.custom_type 1
        # {'double_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'double','size' => 8,'type' => 'custom_perl','type_code' => 16452}}
        ok 2 - ffi.custom_type 1
        # {'double_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'double','size' => 8,'type' => 'custom_perl','type_code' => 16452}}
        ok 3 - ffi.custom_type 1
        # {'double_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'double','size' => 8,'type' => 'custom_perl','type_code' => 16452}}
        ok 4 - ffi.custom_type 1
        # {'double_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'double','size' => 8,'type' => 'custom_perl','type_code' => 16452}}
        ok 5 - ffi.custom_type 1
        # {'double_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'double','size' => 8,'type' => 'custom_perl','type_code' => 16452}}
        ok 6 - ffi.custom_type 1
        # {'double_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'float','ffi_type' => 'double','size' => 8,'type' => 'custom_perl','type_code' => 16452}}
        1..6
    ok 2 - double
    # Subtest: opaque
        ok 1 - ffi.custom_type 1
        # {'opaque_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'custom_perl','type_code' => 16643}}
        ok 2 - ffi.custom_type 1
        # {'opaque_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'custom_perl','type_code' => 16643}}
        ok 3 - ffi.custom_type 1
        # {'opaque_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'custom_perl','type_code' => 16643}}
        ok 4 - ffi.custom_type 1
        # {'opaque_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'custom_perl','type_code' => 16643}}
        ok 5 - ffi.custom_type 1
        # {'opaque_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'custom_perl','type_code' => 16643}}
        ok 6 - ffi.custom_type 1
        # {'opaque_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'custom_perl','type_code' => 16643}}
        1..6
    ok 3 - opaque
    # Subtest: uint8
        ok 1 - ffi.custom_type 1
        # {'uint8_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'custom_perl','type_code' => 16417}}
        ok 2 - ffi.custom_type 1
        # {'uint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'custom_perl','type_code' => 16417}}
        ok 3 - ffi.custom_type 1
        # {'uint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'custom_perl','type_code' => 16417}}
        ok 4 - ffi.custom_type 1
        # {'uint8_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'custom_perl','type_code' => 16417}}
        ok 5 - ffi.custom_type 1
        # {'uint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'custom_perl','type_code' => 16417}}
        ok 6 - ffi.custom_type 1
        # {'uint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'custom_perl','type_code' => 16417}}
        1..6
    ok 4 - uint8
    # Subtest: sint8
        ok 1 - ffi.custom_type 1
        # {'sint8_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 1,'type' => 'custom_perl','type_code' => 16401}}
        ok 2 - ffi.custom_type 1
        # {'sint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 1,'type' => 'custom_perl','type_code' => 16401}}
        ok 3 - ffi.custom_type 1
        # {'sint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 1,'type' => 'custom_perl','type_code' => 16401}}
        ok 4 - ffi.custom_type 1
        # {'sint8_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 1,'type' => 'custom_perl','type_code' => 16401}}
        ok 5 - ffi.custom_type 1
        # {'sint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 1,'type' => 'custom_perl','type_code' => 16401}}
        ok 6 - ffi.custom_type 1
        # {'sint8_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 1,'type' => 'custom_perl','type_code' => 16401}}
        1..6
    ok 5 - sint8
    # Subtest: uint16
        ok 1 - ffi.custom_type 1
        # {'uint16_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 2,'type' => 'custom_perl','type_code' => 16418}}
        ok 2 - ffi.custom_type 1
        # {'uint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 2,'type' => 'custom_perl','type_code' => 16418}}
        ok 3 - ffi.custom_type 1
        # {'uint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 2,'type' => 'custom_perl','type_code' => 16418}}
        ok 4 - ffi.custom_type 1
        # {'uint16_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 2,'type' => 'custom_perl','type_code' => 16418}}
        ok 5 - ffi.custom_type 1
        # {'uint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 2,'type' => 'custom_perl','type_code' => 16418}}
        ok 6 - ffi.custom_type 1
        # {'uint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 2,'type' => 'custom_perl','type_code' => 16418}}
        1..6
    ok 6 - uint16
    # Subtest: sint16
        ok 1 - ffi.custom_type 1
        # {'sint16_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 2,'type' => 'custom_perl','type_code' => 16402}}
        ok 2 - ffi.custom_type 1
        # {'sint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 2,'type' => 'custom_perl','type_code' => 16402}}
        ok 3 - ffi.custom_type 1
        # {'sint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 2,'type' => 'custom_perl','type_code' => 16402}}
        ok 4 - ffi.custom_type 1
        # {'sint16_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 2,'type' => 'custom_perl','type_code' => 16402}}
        ok 5 - ffi.custom_type 1
        # {'sint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 2,'type' => 'custom_perl','type_code' => 16402}}
        ok 6 - ffi.custom_type 1
        # {'sint16_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 2,'type' => 'custom_perl','type_code' => 16402}}
        1..6
    ok 7 - sint16
    # Subtest: uint32
        ok 1 - ffi.custom_type 1
        # {'uint32_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'custom_perl','type_code' => 16419}}
        ok 2 - ffi.custom_type 1
        # {'uint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'custom_perl','type_code' => 16419}}
        ok 3 - ffi.custom_type 1
        # {'uint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'custom_perl','type_code' => 16419}}
        ok 4 - ffi.custom_type 1
        # {'uint32_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'custom_perl','type_code' => 16419}}
        ok 5 - ffi.custom_type 1
        # {'uint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'custom_perl','type_code' => 16419}}
        ok 6 - ffi.custom_type 1
        # {'uint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'custom_perl','type_code' => 16419}}
        1..6
    ok 8 - uint32
    # Subtest: sint32
        ok 1 - ffi.custom_type 1
        # {'sint32_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'custom_perl','type_code' => 16403}}
        ok 2 - ffi.custom_type 1
        # {'sint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'custom_perl','type_code' => 16403}}
        ok 3 - ffi.custom_type 1
        # {'sint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'custom_perl','type_code' => 16403}}
        ok 4 - ffi.custom_type 1
        # {'sint32_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'custom_perl','type_code' => 16403}}
        ok 5 - ffi.custom_type 1
        # {'sint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'custom_perl','type_code' => 16403}}
        ok 6 - ffi.custom_type 1
        # {'sint32_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'custom_perl','type_code' => 16403}}
        1..6
    ok 9 - sint32
    # Subtest: uint64
        ok 1 - ffi.custom_type 1
        # {'uint64_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 8,'type' => 'custom_perl','type_code' => 16420}}
        ok 2 - ffi.custom_type 1
        # {'uint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 8,'type' => 'custom_perl','type_code' => 16420}}
        ok 3 - ffi.custom_type 1
        # {'uint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 8,'type' => 'custom_perl','type_code' => 16420}}
        ok 4 - ffi.custom_type 1
        # {'uint64_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 8,'type' => 'custom_perl','type_code' => 16420}}
        ok 5 - ffi.custom_type 1
        # {'uint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 8,'type' => 'custom_perl','type_code' => 16420}}
        ok 6 - ffi.custom_type 1
        # {'uint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 8,'type' => 'custom_perl','type_code' => 16420}}
        1..6
    ok 10 - uint64
    # Subtest: sint64
        ok 1 - ffi.custom_type 1
        # {'sint64_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 8,'type' => 'custom_perl','type_code' => 16404}}
        ok 2 - ffi.custom_type 1
        # {'sint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 8,'type' => 'custom_perl','type_code' => 16404}}
        ok 3 - ffi.custom_type 1
        # {'sint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 8,'type' => 'custom_perl','type_code' => 16404}}
        ok 4 - ffi.custom_type 1
        # {'sint64_1' => {'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 8,'type' => 'custom_perl','type_code' => 16404}}
        ok 5 - ffi.custom_type 1
        # {'sint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 8,'type' => 'custom_perl','type_code' => 16404}}
        ok 6 - ffi.custom_type 1
        # {'sint64_1' => {'custom_native_to_p' => \sub { "DUMMY" },'custom_perl_to_nat' => \sub { "DUMMY" },'custom_perl_to_native_p' => \sub { "DUMMY" },'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 8,'type' => 'custom_perl','type_code' => 16404}}
        1..6
    ok 11 - sint64
    1..11
ok 4 - custom type
# Subtest: find lib
    # Subtest: find_lib
        ok 1 - found f0 = 3065872812
        1..1
    ok 1 - find_lib
    # Subtest: external
        ok 1 - ffi.find_symbol(f0) = 3065872812
        ok 2 - ffi.find_symbol(bogus) = undef
        1..2
    ok 2 - external
    # Subtest: internal
        ok 1 - ffi.find_symbol(printf) = 3067593576
        ok 2 - ffi.find_symbol(bogus) = undef
        1..2
    ok 3 - internal
    1..3
ok 5 - find lib
# Subtest: find symbol
    # Subtest: external
        ok 1 - ffi.find_symbol(f0) = 3065872812
        ok 2 - ffi.find_symbol(bogus) = undef
        1..2
    ok 1 - external
    # Subtest: internal
        ok 1 - ffi.find_symbol(printf) = 3067593576
        ok 2 - ffi.find_symbol(bogus) = undef
        1..2
    ok 2 - internal
    1..2
ok 6 - find symbol
# Subtest: lib
    # Subtest: basic
        ok 1 - exists t/ffi/libtest.so
        ok 2 - ffi.lib (set)
        ok 3 - ffi.lib (get)
        1..3
    ok 1 - basic
    # Subtest: undef
        # Subtest: baseline
            ok 1
            1..1
        ok 1 - baseline
        # Subtest: lib => [undef]
            ok 1
            1..1
        ok 2 - lib => [undef]
        # Subtest: lib => undef
            ok 1
            1..1
        ok 3 - lib => undef
        1..3
    ok 2 - undef
    # Subtest: coderef
        ok 1 - exists t/ffi/libtest.so
        ok 2 - ffi.lib (set)
        ok 3 - ffi.lib (get)
        1..3
    ok 3 - coderef
    1..3
ok 7 - lib
# Subtest: sizeof
    # Subtest: integers
        ok 1 - sizeof uint8 = 1
        ok 2 - sizeof uint16 = 2
        ok 3 - sizeof uint32 = 4
        ok 4 - sizeof uint64 = 8
        ok 5 - sizeof sint8 = 1
        ok 6 - sizeof sint16 = 2
        ok 7 - sizeof sint32 = 4
        ok 8 - sizeof sint64 = 8
        1..8
    ok 1 - integers
    # Subtest: floats
        ok 1 - sizeof float = 4
        ok 2 - sizeof double = 8
        1..2
    ok 2 - floats
    # Subtest: pointers
        ok 1 - sizeof opaque = 4
        ok 2 - sizeof uint8* = 4
        ok 3 - sizeof uint16* = 4
        ok 4 - sizeof uint32* = 4
        ok 5 - sizeof uint64* = 4
        ok 6 - sizeof sint8* = 4
        ok 7 - sizeof sint16* = 4
        ok 8 - sizeof sint32* = 4
        ok 9 - sizeof sint64* = 4
        ok 10 - sizeof float* = 4
        ok 11 - sizeof double* = 4
        ok 12 - sizeof opaque* = 4
        ok 13 - sizeof string = 4
        ok 14 - sizeof (int)->int = 4
        1..14
    ok 3 - pointers
    # Subtest: arrays
        ok 1 - sizeof uint8 [32] = 1
        ok 2 - sizeof uint8 [32] = 2
        ok 3 - sizeof uint8 [32] = 3
        ok 4 - sizeof uint8 [32] = 4
        ok 5 - sizeof uint8 [32] = 5
        ok 6 - sizeof uint8 [32] = 6
        ok 7 - sizeof uint8 [32] = 7
        ok 8 - sizeof uint8 [32] = 8
        ok 9 - sizeof uint8 [32] = 9
        ok 10 - sizeof uint8 [32] = 10
        ok 11 - sizeof uint16 [32] = 2
        ok 12 - sizeof uint16 [32] = 4
        ok 13 - sizeof uint16 [32] = 6
        ok 14 - sizeof uint16 [32] = 8
        ok 15 - sizeof uint16 [32] = 10
        ok 16 - sizeof uint16 [32] = 12
        ok 17 - sizeof uint16 [32] = 14
        ok 18 - sizeof uint16 [32] = 16
        ok 19 - sizeof uint16 [32] = 18
        ok 20 - sizeof uint16 [32] = 20
        ok 21 - sizeof uint32 [32] = 4
        ok 22 - sizeof uint32 [32] = 8
        ok 23 - sizeof uint32 [32] = 12
        ok 24 - sizeof uint32 [32] = 16
        ok 25 - sizeof uint32 [32] = 20
        ok 26 - sizeof uint32 [32] = 24
        ok 27 - sizeof uint32 [32] = 28
        ok 28 - sizeof uint32 [32] = 32
        ok 29 - sizeof uint32 [32] = 36
        ok 30 - sizeof uint32 [32] = 40
        ok 31 - sizeof uint64 [32] = 8
        ok 32 - sizeof uint64 [32] = 16
        ok 33 - sizeof uint64 [32] = 24
        ok 34 - sizeof uint64 [32] = 32
        ok 35 - sizeof uint64 [32] = 40
        ok 36 - sizeof uint64 [32] = 48
        ok 37 - sizeof uint64 [32] = 56
        ok 38 - sizeof uint64 [32] = 64
        ok 39 - sizeof uint64 [32] = 72
        ok 40 - sizeof uint64 [32] = 80
        ok 41 - sizeof sint8 [32] = 1
        ok 42 - sizeof sint8 [32] = 2
        ok 43 - sizeof sint8 [32] = 3
        ok 44 - sizeof sint8 [32] = 4
        ok 45 - sizeof sint8 [32] = 5
        ok 46 - sizeof sint8 [32] = 6
        ok 47 - sizeof sint8 [32] = 7
        ok 48 - sizeof sint8 [32] = 8
        ok 49 - sizeof sint8 [32] = 9
        ok 50 - sizeof sint8 [32] = 10
        ok 51 - sizeof sint16 [32] = 2
        ok 52 - sizeof sint16 [32] = 4
        ok 53 - sizeof sint16 [32] = 6
        ok 54 - sizeof sint16 [32] = 8
        ok 55 - sizeof sint16 [32] = 10
        ok 56 - sizeof sint16 [32] = 12
        ok 57 - sizeof sint16 [32] = 14
        ok 58 - sizeof sint16 [32] = 16
        ok 59 - sizeof sint16 [32] = 18
        ok 60 - sizeof sint16 [32] = 20
        ok 61 - sizeof sint32 [32] = 4
        ok 62 - sizeof sint32 [32] = 8
        ok 63 - sizeof sint32 [32] = 12
        ok 64 - sizeof sint32 [32] = 16
        ok 65 - sizeof sint32 [32] = 20
        ok 66 - sizeof sint32 [32] = 24
        ok 67 - sizeof sint32 [32] = 28
        ok 68 - sizeof sint32 [32] = 32
        ok 69 - sizeof sint32 [32] = 36
        ok 70 - sizeof sint32 [32] = 40
        ok 71 - sizeof sint64 [32] = 8
        ok 72 - sizeof sint64 [32] = 16
        ok 73 - sizeof sint64 [32] = 24
        ok 74 - sizeof sint64 [32] = 32
        ok 75 - sizeof sint64 [32] = 40
        ok 76 - sizeof sint64 [32] = 48
        ok 77 - sizeof sint64 [32] = 56
        ok 78 - sizeof sint64 [32] = 64
        ok 79 - sizeof sint64 [32] = 72
        ok 80 - sizeof sint64 [32] = 80
        ok 81 - sizeof float [32] = 4
        ok 82 - sizeof float [32] = 8
        ok 83 - sizeof float [32] = 12
        ok 84 - sizeof float [32] = 16
        ok 85 - sizeof float [32] = 20
        ok 86 - sizeof float [32] = 24
        ok 87 - sizeof float [32] = 28
        ok 88 - sizeof float [32] = 32
        ok 89 - sizeof float [32] = 36
        ok 90 - sizeof float [32] = 40
        ok 91 - sizeof double [32] = 8
        ok 92 - sizeof double [32] = 16
        ok 93 - sizeof double [32] = 24
        ok 94 - sizeof double [32] = 32
        ok 95 - sizeof double [32] = 40
        ok 96 - sizeof double [32] = 48
        ok 97 - sizeof double [32] = 56
        ok 98 - sizeof double [32] = 64
        ok 99 - sizeof double [32] = 72
        ok 100 - sizeof double [32] = 80
        ok 101 - sizeof opaque [32] = 4
        ok 102 - sizeof opaque [32] = 8
        ok 103 - sizeof opaque [32] = 12
        ok 104 - sizeof opaque [32] = 16
        ok 105 - sizeof opaque [32] = 20
        ok 106 - sizeof opaque [32] = 24
        ok 107 - sizeof opaque [32] = 28
        ok 108 - sizeof opaque [32] = 32
        ok 109 - sizeof opaque [32] = 36
        ok 110 - sizeof opaque [32] = 40
        1..110
    ok 4 - arrays
    # Subtest: custom_type
        ok 1 - sizeof my_uint8 = 1
        ok 2 - sizeof my_uint16 = 2
        ok 3 - sizeof my_uint32 = 4
        ok 4 - sizeof my_uint64 = 8
        ok 5 - sizeof my_sint8 = 1
        ok 6 - sizeof my_sint16 = 2
        ok 7 - sizeof my_sint32 = 4
        ok 8 - sizeof my_sint64 = 8
        ok 9 - sizeof my_float = 4
        ok 10 - sizeof my_double = 8
        ok 11 - sizeof my_opaque = 4
        1..11
    ok 5 - custom_type
    1..5
ok 8 - sizeof
# Subtest: type
    # Subtest: simple type
        ok 1 - ffi.type(sint8)
        ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
        1..2
    ok 1 - simple type
    # Subtest: aliased type
        ok 1 - ffi.type(sint8 => my_integer_8)
        ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
        ok 3 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
        ok 4 - ffi.types returns my_integer_8
        1..4
    ok 2 - aliased type
    # Subtest: ffi basic types
        # Subtest: sint8
            ok 1 - ffi.type(sint8)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 1,'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 1,'type' => 'scalar','type_code' => 17}
            # 0
            ok 3 - size = 1
            1..3
        ok 1 - sint8
        # Subtest: uint8
            ok 1 - ffi.type(uint8)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 1,'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'scalar','type_code' => 33}
            # 0
            ok 3 - size = 1
            1..3
        ok 2 - uint8
        # Subtest: sint16
            ok 1 - ffi.type(sint16)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 2,'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 2,'type' => 'scalar','type_code' => 18}
            # 0
            ok 3 - size = 2
            1..3
        ok 3 - sint16
        # Subtest: uint16
            ok 1 - ffi.type(uint16)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 2,'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 2,'type' => 'scalar','type_code' => 34}
            # 0
            ok 3 - size = 2
            1..3
        ok 4 - uint16
        # Subtest: sint32
            ok 1 - ffi.type(sint32)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'scalar','type_code' => 19}
            # 0
            ok 3 - size = 4
            1..3
        ok 5 - sint32
        # Subtest: uint32
            ok 1 - ffi.type(uint32)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'scalar','type_code' => 35}
            # 0
            ok 3 - size = 4
            1..3
        ok 6 - uint32
        # Subtest: sint64
            ok 1 - ffi.type(sint64)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 8,'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 8,'type' => 'scalar','type_code' => 20}
            # 0
            ok 3 - size = 8
            1..3
        ok 7 - sint64
        # Subtest: uint64
            ok 1 - ffi.type(uint64)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 8,'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 8,'type' => 'scalar','type_code' => 36}
            # 0
            ok 3 - size = 8
            1..3
        ok 8 - uint64
        # Subtest: float
            ok 1 - ffi.type(float)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'scalar','type_code' => 67}
            # 0
            ok 3 - size = 4
            1..3
        ok 9 - float
        # Subtest: double
            ok 1 - ffi.type(double)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 8,'element_type' => 'float','ffi_type' => 'double','size' => 8,'type' => 'scalar','type_code' => 68}
            # 0
            ok 3 - size = 8
            1..3
        ok 10 - double
        # Subtest: opaque
            ok 1 - ffi.type(opaque)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'scalar','type_code' => 259}
            # 0
            ok 3 - size = 4
            1..3
        ok 11 - opaque
        # Subtest: string
            ok 1 - ffi.type(string)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'access' => 'ro','element_size' => 4,'ffi_type' => 'pointer','size' => 4,'type' => 'string','type_code' => 771}
            # 0
            ok 3 - size = 4
            1..3
        ok 12 - string
        1..12
    ok 3 - ffi basic types
    # Subtest: ffi pointer types
        # Subtest: sint8 *
            ok 1 - ffi.type(sint8 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 1,'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 4,'type' => 'pointer','type_code' => 4113}
            # 0
            ok 3 - size = 4
            1..3
        ok 1 - sint8 *
        # Subtest: uint8 *
            ok 1 - ffi.type(uint8 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 1,'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 4,'type' => 'pointer','type_code' => 4129}
            # 0
            ok 3 - size = 4
            1..3
        ok 2 - uint8 *
        # Subtest: sint16 *
            ok 1 - ffi.type(sint16 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 2,'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 4,'type' => 'pointer','type_code' => 4114}
            # 0
            ok 3 - size = 4
            1..3
        ok 3 - sint16 *
        # Subtest: uint16 *
            ok 1 - ffi.type(uint16 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 2,'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 4,'type' => 'pointer','type_code' => 4130}
            # 0
            ok 3 - size = 4
            1..3
        ok 4 - uint16 *
        # Subtest: sint32 *
            ok 1 - ffi.type(sint32 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'pointer','type_code' => 4115}
            # 0
            ok 3 - size = 4
            1..3
        ok 5 - sint32 *
        # Subtest: uint32 *
            ok 1 - ffi.type(uint32 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 4,'type' => 'pointer','type_code' => 4131}
            # 0
            ok 3 - size = 4
            1..3
        ok 6 - uint32 *
        # Subtest: sint64 *
            ok 1 - ffi.type(sint64 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 8,'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 4,'type' => 'pointer','type_code' => 4116}
            # 0
            ok 3 - size = 4
            1..3
        ok 7 - sint64 *
        # Subtest: uint64 *
            ok 1 - ffi.type(uint64 *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 8,'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 4,'type' => 'pointer','type_code' => 4132}
            # 0
            ok 3 - size = 4
            1..3
        ok 8 - uint64 *
        # Subtest: float *
            ok 1 - ffi.type(float *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'float','ffi_type' => 'float','size' => 4,'type' => 'pointer','type_code' => 4163}
            # 0
            ok 3 - size = 4
            1..3
        ok 9 - float *
        # Subtest: double *
            ok 1 - ffi.type(double *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 8,'element_type' => 'float','ffi_type' => 'double','size' => 4,'type' => 'pointer','type_code' => 4164}
            # 0
            ok 3 - size = 4
            1..3
        ok 10 - double *
        # Subtest: opaque *
            ok 1 - ffi.type(opaque *)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_size' => 4,'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'pointer','type_code' => 4355}
            # 0
            ok 3 - size = 4
            1..3
        ok 11 - opaque *
        # Subtest: string *
            1..0 # SKIP ME GRIMLOCK SAY STRING CAN NO BE POINTER
        ok 12 # skip ME GRIMLOCK SAY STRING CAN NO BE POINTER
        1..12
    ok 4 - ffi pointer types
    # Subtest: ffi array types
        # Subtest: sint8 [5]
            ok 1 - ffi.type(sint8 [5])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 5,'element_size' => 1,'element_type' => 'int','ffi_type' => 'sint8','sign' => 1,'size' => 5,'type' => 'array','type_code' => 8209}
            # 0
            ok 3 - size = 5
            ok 4 - size = 5
            1..4
        ok 1 - sint8 [5]
        # Subtest: uint8 [7]
            ok 1 - ffi.type(uint8 [7])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 7,'element_size' => 1,'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 7,'type' => 'array','type_code' => 8225}
            # 0
            ok 3 - size = 7
            ok 4 - size = 7
            1..4
        ok 2 - uint8 [7]
        # Subtest: sint16 [9]
            ok 1 - ffi.type(sint16 [9])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 9,'element_size' => 2,'element_type' => 'int','ffi_type' => 'sint16','sign' => 1,'size' => 18,'type' => 'array','type_code' => 8210}
            # 0
            ok 3 - size = 18
            ok 4 - size = 9
            1..4
        ok 3 - sint16 [9]
        # Subtest: uint16 [11]
            ok 1 - ffi.type(uint16 [11])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 11,'element_size' => 2,'element_type' => 'int','ffi_type' => 'uint16','sign' => 0,'size' => 22,'type' => 'array','type_code' => 8226}
            # 0
            ok 3 - size = 22
            ok 4 - size = 11
            1..4
        ok 4 - uint16 [11]
        # Subtest: sint32 [13]
            ok 1 - ffi.type(sint32 [13])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 13,'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 52,'type' => 'array','type_code' => 8211}
            # 0
            ok 3 - size = 52
            ok 4 - size = 13
            1..4
        ok 5 - sint32 [13]
        # Subtest: uint32 [15]
            ok 1 - ffi.type(uint32 [15])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 15,'element_size' => 4,'element_type' => 'int','ffi_type' => 'uint32','sign' => 0,'size' => 60,'type' => 'array','type_code' => 8227}
            # 0
            ok 3 - size = 60
            ok 4 - size = 15
            1..4
        ok 6 - uint32 [15]
        # Subtest: sint64 [17]
            ok 1 - ffi.type(sint64 [17])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 17,'element_size' => 8,'element_type' => 'int','ffi_type' => 'sint64','sign' => 1,'size' => 136,'type' => 'array','type_code' => 8212}
            # 0
            ok 3 - size = 136
            ok 4 - size = 17
            1..4
        ok 7 - sint64 [17]
        # Subtest: uint64 [19]
            ok 1 - ffi.type(uint64 [19])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 19,'element_size' => 8,'element_type' => 'int','ffi_type' => 'uint64','sign' => 0,'size' => 152,'type' => 'array','type_code' => 8228}
            # 0
            ok 3 - size = 152
            ok 4 - size = 19
            1..4
        ok 8 - uint64 [19]
        # Subtest: float [21]
            ok 1 - ffi.type(float [21])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 21,'element_size' => 4,'element_type' => 'float','ffi_type' => 'float','size' => 84,'type' => 'array','type_code' => 8259}
            # 0
            ok 3 - size = 84
            ok 4 - size = 21
            1..4
        ok 9 - float [21]
        # Subtest: double [23]
            ok 1 - ffi.type(double [23])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 23,'element_size' => 8,'element_type' => 'float','ffi_type' => 'double','size' => 184,'type' => 'array','type_code' => 8260}
            # 0
            ok 3 - size = 184
            ok 4 - size = 23
            1..4
        ok 10 - double [23]
        # Subtest: opaque [25]
            ok 1 - ffi.type(opaque [25])
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            # {'element_count' => 25,'element_size' => 4,'element_type' => 'opaque','ffi_type' => 'pointer','size' => 100,'type' => 'array','type_code' => 8451}
            # 0
            ok 3 - size = 100
            ok 4 - size = 25
            1..4
        ok 11 - opaque [25]
        # Subtest: string [27]
            1..0 # SKIP ME GRIMLOCK SAY STRING CAN NO BE ARRAY
        ok 12 # skip ME GRIMLOCK SAY STRING CAN NO BE ARRAY
        1..12
    ok 5 - ffi array types
    # Subtest: closure types
        ok 1 - (int)->int is a legal closure type
        # {'element_size' => 4,'ffi_type' => 'pointer','signature' => [[{'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'scalar','type_code' => 19}],{'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'scalar','type_code' => 19}],'size' => 4,'type' => 'closure','type_code' => 1283}
        # 0
        ok 2 # skip arrays not currently supported as closure argument types
        ok 3 - inline closure illegal
        ok 4 - argument type closure illegal
        ok 5 - return type closure illegal
        ok 6 - a more complicated closure
        # {'element_size' => 4,'ffi_type' => 'pointer','signature' => [[{'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'scalar','type_code' => 19},{'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'scalar','type_code' => 19},{'element_size' => 4,'element_type' => 'int','ffi_type' => 'sint32','sign' => 1,'size' => 4,'type' => 'scalar','type_code' => 19},{'element_size' => 1,'element_type' => 'int','ffi_type' => 'uint8','sign' => 0,'size' => 1,'type' => 'scalar','type_code' => 33},{'access' => 'ro','element_size' => 4,'ffi_type' => 'pointer','size' => 4,'type' => 'string','type_code' => 771},{'element_size' => 4,'element_type' => 'opaque','ffi_type' => 'pointer','size' => 4,'type' => 'scalar','type_code' => 259}],{'element_size' => 0,'element_type' => 'void','ffi_type' => 'void','size' => 0,'type' => 'scalar','type_code' => 8}],'size' => 4,'type' => 'closure','type_code' => 1283}
        # 0
        1..6
    ok 6 - closure types
    # Subtest: record
        # {'ffi_type' => 'pointer','ref' => 0,'size' => 1,'type' => 'record','type_code' => 2307}
        # 0
        # {'ffi_type' => 'pointer','ref' => 0,'size' => 32,'type' => 'record','type_code' => 2307}
        # 0
        ok 1 - sizeof my_record_1 = 1
        ok 2 - sizeof my_record_32 = 32
        # {'ffi_type' => 'pointer','ref' => 1,'size' => 22,'type' => 'record','type_code' => 2307}
        # 0
        # {'ffi_type' => 'pointer','ref' => 1,'size' => 44,'type' => 'record','type_code' => 2307}
        # 0
        ok 3 - sizeof my_record_22 = 22
        ok 4 - sizeof my_record_44 = 44
        1..4
    ok 7 - record
    # Subtest: string
        # Subtest: string
            ok 1 - sizeof string = 4
            ok 2 - access = ro
            # {'access' => 'ro','element_size' => 4,'ffi_type' => 'pointer','size' => 4,'type' => 'string','type_code' => 771}
            # 0
            1..2
        ok 1 - string
        # Subtest: string_rw
            ok 1 - sizeof string_rw = 4
            ok 2 - access = rw
            # {'access' => 'rw','element_size' => 4,'ffi_type' => 'pointer','size' => 4,'type' => 'string','type_code' => 771}
            # 0
            1..2
        ok 2 - string_rw
        # Subtest: string_ro
            ok 1 - sizeof string_ro = 4
            ok 2 - access = ro
            # {'access' => 'ro','element_size' => 4,'ffi_type' => 'pointer','size' => 4,'type' => 'string','type_code' => 771}
            # 0
            1..2
        ok 3 - string_ro
        # Subtest: string rw
            ok 1 - sizeof string rw = 4
            ok 2 - access = rw
            # {'access' => 'rw','element_size' => 4,'ffi_type' => 'pointer','size' => 4,'type' => 'string','type_code' => 771}
            # 0
            1..2
        ok 4 - string rw
        # Subtest: string ro
            ok 1 - sizeof string ro = 4
            ok 2 - access = ro
            # {'access' => 'ro','element_size' => 4,'ffi_type' => 'pointer','size' => 4,'type' => 'string','type_code' => 771}
            # 0
            1..2
        ok 5 - string ro
        # Subtest: string (10)
            ok 1 - is actually a record type
            ok 2 - sizeof string (10) = 10
            # {'ffi_type' => 'pointer','ref' => 0,'size' => 10,'type' => 'record','type_code' => 2307}
            # 0
            1..2
        ok 6 - string (10)
        # Subtest: string(10)
            ok 1 - is actually a record type
            ok 2 - sizeof string(10) = 10
            # {'ffi_type' => 'pointer','ref' => 0,'size' => 10,'type' => 'record','type_code' => 2307}
            # 0
            1..2
        ok 7 - string(10)
        1..7
    ok 8 - string
    # Subtest: private
        # Subtest: void
            ok 1 - type = FFI::Platypus::Type->new(void)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = void
            1..3
        ok 1 - void
        # Subtest: uint8
            ok 1 - type = FFI::Platypus::Type->new(uint8)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = uint8
            1..3
        ok 2 - uint8
        # Subtest: sint8
            ok 1 - type = FFI::Platypus::Type->new(sint8)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = sint8
            1..3
        ok 3 - sint8
        # Subtest: uint16
            ok 1 - type = FFI::Platypus::Type->new(uint16)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = uint16
            1..3
        ok 4 - uint16
        # Subtest: sint16
            ok 1 - type = FFI::Platypus::Type->new(sint16)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = sint16
            1..3
        ok 5 - sint16
        # Subtest: uint32
            ok 1 - type = FFI::Platypus::Type->new(uint32)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = uint32
            1..3
        ok 6 - uint32
        # Subtest: sint32
            ok 1 - type = FFI::Platypus::Type->new(sint32)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = sint32
            1..3
        ok 7 - sint32
        # Subtest: uint64
            ok 1 - type = FFI::Platypus::Type->new(uint64)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = uint64
            1..3
        ok 8 - uint64
        # Subtest: sint64
            ok 1 - type = FFI::Platypus::Type->new(sint64)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = sint64
            1..3
        ok 9 - sint64
        # Subtest: float
            ok 1 - type = FFI::Platypus::Type->new(float)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = float
            1..3
        ok 10 - float
        # Subtest: double
            ok 1 - type = FFI::Platypus::Type->new(double)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = double
            1..3
        ok 11 - double
        # Subtest: longdouble
            1..0 # SKIP test requires longdouble support
        ok 12 # skip test requires longdouble support
        # Subtest: opaque
            ok 1 - type = FFI::Platypus::Type->new(opaque)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = pointer
            1..3
        ok 13 - opaque
        # Subtest: pointer
            ok 1 - type = FFI::Platypus::Type->new(pointer)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = pointer
            1..3
        ok 14 - pointer
        # Subtest: string
            ok 1 - type = FFI::Platypus::Type->new(string)
            ok 2 - An object of class 'FFI::Platypus::Type' isa 'FFI::Platypus::Type'
            ok 3 - type.meta.ffi_type = pointer
            1..3
        ok 15 - string
        1..15
    ok 9 - private
    1..9
ok 9 - type
# Subtest: class or instance method
    ok 1 - class and instance methods are identical
    # type: blkcnt_t
    # type: blksize_t
    # type: bool
    # type: char
    # type: dev_t
    # type: double
    # type: float
    # type: gid_t
    # type: ino_t
    # type: int
    # type: int16_t
    # type: int32_t
    # type: int64_t
    # type: int8_t
    # type: int_least16_t
    # type: int_least32_t
    # type: int_least64_t
    # type: int_least8_t
    # type: long
    # type: long long
    # type: mode_t
    # type: nlink_t
    # type: off_t
    # type: opaque
    # type: pointer
    # type: ptrdiff_t
    # type: short
    # type: signed char
    # type: signed int
    # type: signed long
    # type: signed long long
    # type: signed short
    # type: sint16
    # type: sint32
    # type: sint64
    # type: sint8
    # type: size_t
    # type: string
    # type: time_t
    # type: uchar
    # type: uid_t
    # type: uint
    # type: uint16
    # type: uint16_t
    # type: uint32
    # type: uint32_t
    # type: uint64
    # type: uint64_t
    # type: uint8
    # type: uint8_t
    # type: uint_least16_t
    # type: uint_least32_t
    # type: uint_least64_t
    # type: uint_least8_t
    # type: ulong
    # type: unsigned char
    # type: unsigned int
    # type: unsigned long
    # type: unsigned long long
    # type: unsigned short
    # type: ushort
    # type: void
    # type: void*
    # type: wchar_t
    1..1
ok 10 - class or instance method
# Subtest: cast
    # Subtest: cast from string to pointer
        ok 1 - dynamic
        ok 2 - static
        1..2
    ok 1 - cast from string to pointer
    # Subtest: cast from pointer to string
        ok 1 - dynamic
        ok 2 - static
        1..2
    ok 2 - cast from pointer to string
    # Subtest: cast closure to opaque
        ok 1 - dynamic
        ok 2 - dynamic
        ok 3 - static
        ok 4 - static
        1..4
    ok 3 - cast closure to opaque
    1..3
ok 11 - cast
# Subtest: ignore_not_found
    # Subtest: ignore_not_found=undef
        ok 1 - no exception
        ok 2 - returned a function
        # f1 isa FFI::Platypus::Function
        ok 3 - function exception
        # exception=unable to find bogus at t/ffi_platypus.t line 622.
        ok 4 - attach exception
        # exception=unable to find bogus at t/ffi_platypus.t line 626.
        1..4
    ok 1 - ignore_not_found=undef
    # Subtest: ignore_not_found=0
        ok 1 - no exception
        ok 2 - returned a function
        # f1 isa FFI::Platypus::Function
        ok 3 - function exception
        # exception=unable to find bogus at t/ffi_platypus.t line 642.
        ok 4 - attach exception
        # exception=unable to find bogus at t/ffi_platypus.t line 646.
        1..4
    ok 2 - ignore_not_found=0
    # Subtest: ignore_not_found=0 (constructor)
        ok 1 - no exception
        ok 2 - returned a function
        # f1 isa FFI::Platypus::Function
        ok 3 - function exception
        # exception=unable to find bogus at t/ffi_platypus.t line 660.
        ok 4 - attach exception
        # exception=unable to find bogus at t/ffi_platypus.t line 664.
        1..4
    ok 3 - ignore_not_found=0 (constructor)
    # Subtest: ignore_not_found=1
        ok 1 - no exception
        ok 2 - returned a function
        # f1 isa FFI::Platypus::Function
        ok 3 - function no exception
        ok 4 - f2 is undefined
        ok 5 - attach no exception
        1..5
    ok 4 - ignore_not_found=1
    # Subtest: ignore_not_found=1 (constructor)
        ok 1 - no exception
        ok 2 - returned a function
        # f1 isa FFI::Platypus::Function
        ok 3 - function no exception
        ok 4 - f2 is undefined
        ok 5 - attach no exception
        1..5
    ok 5 - ignore_not_found=1 (constructor)
    # Subtest: ignore_not_found bool context
        ok 1 - f1 exists and resolved to boolean true
        ok 2 - f2 does not exist and resolved to boolean false
        1..2
    ok 6 - ignore_not_found bool context
    1..6
ok 12 - ignore_not_found
# Subtest: attach basic
    ok 1 - f0(22) = 22
    ok 2 - f1(22) = 22
    ok 3 - Roger::f1(22) = 22
    ok 4 - f0_wrap(22) = 25
    ok 5 - f0_wrap(22) = 25
    1..5
ok 13 - attach basic
# Subtest: attach void
    ok 1 - $i_ptr = 43 after f2(\$i_ptr)
    ok 2 - $i_ptr = 44 after f2_implicit(\$i_ptr)
    1..2
ok 14 - attach void
1..14
ok
t/ffi_platypus_api.t ..................... skipped: TODO
t/ffi_platypus_buffer.t .................. 
# Subtest: simple
    ok 1 - ptr = 11138912
    ok 2 - size = 16
    ok 3 - scalar = me grimlock king
    1..3
ok 1 - simple
# Subtest: unicode
    ok 1 - ptr = 7464288
    ok 2 - size = 12
    ok 3 - scalar = привет
    1..3
ok 2 - unicode
1..2
ok
t/ffi_platypus_closure.t ................. 
# Subtest: basic
    ok 1 - An object of class 'FFI::Platypus::Closure' isa 'FFI::Platypus::Closure'
    ok 2 - closure.(1) = 2
    ok 3 - An object of class 'FFI::Platypus::Closure' isa 'FFI::Platypus::Closure'
    ok 4 - closure.(1) = 3
    ok 5 - An object of class 'FFI::Platypus::Closure' isa 'FFI::Platypus::Closure'
    ok 6 - closure.(1) = 3
    ok 7 - able to call sticky
    1..7
ok 1 - basic
# Subtest: sticky
    ok 1 - An object of class 'FFI::Platypus::Closure' isa 'FFI::Platypus::Closure'
    # _svrefcnt = 1
    ok 2 - called $closure->sticky
    ok 3
    ok 4 - called $closure->unstick
    ok 5
    1..5
ok 2 - sticky
# Subtest: private
    ok 1 - An object of class 'FFI::Platypus::Closure' isa 'FFI::Platypus::Closure'
    ok 2 - closure.(1) = 2
    1..2
ok 3 - private
# Subtest: space
    ok 1 - good without space
    ok 2 - good with space
    1..2
ok 4 - space
# Subtest: die
    ok 1
    ok 2 - does not exit
    # warning = 'omg i don't want to die! at t/ffi_platypus_closure.t line 68.
    # '
    1..2
ok 5 - die
# Subtest: reuse
    ok 1
    ok 2
    1..2
ok 6 - reuse
1..6
ok
t/ffi_platypus_declare.t ................. 
# Subtest: normal
    ok 1 - f0(22) = 22
    ok 2 - f1(22) = 22
    ok 3 - f0_wrap(22) = 25
    ok 4 - f0_wrap2(22) = 25
    1..4
ok 1 - normal
# Subtest: with type aliases
    ok 1 - atoi("42") = 42
    1..1
ok 2 - with type aliases
# Subtest: simple closure test
    ok 1 - An object of class 'FFI::Platypus::Closure' isa 'FFI::Platypus::Closure'
    ok 2 - closure.(1) = 2
    1..2
ok 3 - simple closure test
# Subtest: abis
    ok 1 - has a default ABI
    # Subtest: default_abi
        ok 1 - string
        ok 2 - integer
        1..2
    ok 2 - default_abi
    # Subtest: sysv
        ok 1 - string
        ok 2 - integer
        1..2
    ok 3 - sysv
    # Subtest: vfp
        ok 1 - string
        ok 2 - integer
        1..2
    ok 4 - vfp
    # Subtest: bogus
        ok 1 - string
        ok 2 - integer
        1..2
    ok 5 - bogus
    1..5
ok 4 - abis
# Subtest: lang
    # Subtest: C
        ok 1 - int is an okay type
        ok 2 - foo_t is not an okay type
        # unknown type: foo_t at t/ffi_platypus_declare.t line 100.
        ok 3 - sint16 is an okay type
        1..3
    ok 1 - C
    # Subtest: Foo constructor
        ok 1 - int is not an okay type
        # unknown type: int at t/ffi_platypus_declare.t line 129.
        ok 2 - foo_t is an okay type
        ok 3 - sint16 is an okay type
        ok 4 - sizeof foo_t = 2
        ok 5 - sizeof foo_t = 4
        1..5
    ok 2 - Foo constructor
    1..2
ok 5 - lang
# Subtest: sizeof
    ok 1 - sizeof uint32 = 4
    ok 2 - sizeof uint32[2] = 8
    1..2
ok 6 - sizeof
# Subtest: sticky
    ok 1 - call_closure(2) = 4
    1..1
ok 7 - sticky
# Subtest: cast
    # Subtest: cast from string to pointer
        ok 1 - dynamic
        ok 2 - static
        1..2
    ok 1 - cast from string to pointer
    # Subtest: cast from pointer to string
        ok 1 - dynamic
        ok 2 - static
        1..2
    ok 2 - cast from pointer to string
    # Subtest: cast closure to opaque
        ok 1 - dynamic
        ok 2 - static
        1..2
    ok 3 - cast closure to opaque
    1..3
ok 8 - cast
1..8
ok
t/ffi_platypus_dl.t ...................... 
# Subtest: flags
    ok 1 - RTLD_PLATYPUS_DEFAULT is defined
    # RTLD_LOCAL                0000 0
    # RTLD_PLATYPUS_DEFAULT     0001 1
    # RTLD_LAZY                 0001 1
    # RTLD_NOW                  0002 2
    # RTLD_NOLOAD               0004 4
    # RTLD_DEEPBIND             0008 8
    # RTLD_GLOBAL               0100 256
    # RTLD_NODELETE             1000 4096
    1..1
ok 1 - flags
# Subtest: dlopen
    # Subtest: bad library
        ok 1 - Returns undef on fail
        # dlerror = t/ffi/libbogus.so: cannot open shared object file: No such file or directory
        1..1
    ok 1 - bad library
    # Subtest: good library
        ok 1 - Returns handle on good
        # h = 7626672
        1..1
    ok 2 - good library
    1..2
ok 2 - dlopen
# Subtest: dlsym
    # Subtest: good symbol
        ok 1 - returns an address
        # address = 3065885100
        1..1
    ok 1 - good symbol
    # Subtest: bad symbol
        ok 1 - bad symbol returns undef
        # dlerror = t/ffi/libtest.so: undefined symbol: bogus
        1..1
    ok 2 - bad symbol
    1..2
ok 3 - dlsym
1..3
ok
t/ffi_platypus_function.t ................ 
# Subtest: built in type
    ok 1 - ffi.function(f0, [uint8] => uint8)
    ok 2 - An object of class 'FFI::Platypus::Function' isa 'FFI::Platypus::Function'
    ok 3 - function.call(22) = 22
    ok 4 - function.(22) = 22
    1..4
ok 1 - built in type
# Subtest: custom type
    ok 1 - ffi.function(f0, [my_int_8] => my_int_8)
    ok 2 - An object of class 'FFI::Platypus::Function' isa 'FFI::Platypus::Function'
    ok 3 - function.call(22) = 22
    ok 4 - function.(22) = 22
    1..4
ok 2 - custom type
# Subtest: private
    ok 1 - FFI::Platypus::Function->new
    ok 2 - An object of class 'FFI::Platypus::Function' isa 'FFI::Platypus::Function'
    ok 3 - function.call(22) = 22
    ok 4 - fooble(22) = 22
    1..4
ok 3 - private
1..3
ok
t/ffi_platypus_internal.t ................ 
# Subtest: basic
    # alpha order:
    ok 1 - FFI_PL_BASE_CLOSURE            0x0400
    ok 2 - FFI_PL_BASE_COMPLEX            0x0080
    ok 3 - FFI_PL_BASE_FLOAT              0x0040
    ok 4 - FFI_PL_BASE_MASK               0x0ff8
    ok 5 - FFI_PL_BASE_OPAQUE             0x0100
    ok 6 - FFI_PL_BASE_RECORD             0x0800
    ok 7 - FFI_PL_BASE_SINT               0x0010
    ok 8 - FFI_PL_BASE_STRING             0x0200
    ok 9 - FFI_PL_BASE_UINT               0x0020
    ok 10 - FFI_PL_BASE_VOID               0x0008
    ok 11 - FFI_PL_SHAPE_ARRAY             0x2000
    ok 12 - FFI_PL_SHAPE_CUSTOM_MASK       0xf000
    ok 13 - FFI_PL_SHAPE_CUSTOM_NATIVE     0x8000
    ok 14 - FFI_PL_SHAPE_CUSTOM_PERL       0x4000
    ok 15 - FFI_PL_SHAPE_POINTER           0x1000
    ok 16 - FFI_PL_SHAPE_SCALAR            0x0000
    ok 17 - FFI_PL_SIZE_0                  0x0000
    ok 18 - FFI_PL_SIZE_128                0x0005
    ok 19 - FFI_PL_SIZE_16                 0x0002
    ok 20 - FFI_PL_SIZE_256                0x0006
    ok 21 - FFI_PL_SIZE_32                 0x0003
    ok 22 - FFI_PL_SIZE_512                0x0007
    ok 23 - FFI_PL_SIZE_64                 0x0004
    ok 24 - FFI_PL_SIZE_8                  0x0001
    ok 25 - FFI_PL_SIZE_MASK               0x0007
    ok 26 - FFI_PL_SIZE_PTR                0x0003
    ok 27 - FFI_PL_TYPE_CLOSURE            0x0503
    ok 28 - FFI_PL_TYPE_COMPLEX_DOUBLE     0x0085
    ok 29 - FFI_PL_TYPE_COMPLEX_FLOAT      0x0084
    ok 30 - FFI_PL_TYPE_DOUBLE             0x0044
    ok 31 - FFI_PL_TYPE_FLOAT              0x0043
    ok 32 - FFI_PL_TYPE_LONG_DOUBLE        0x0045
    ok 33 - FFI_PL_TYPE_OPAQUE             0x0103
    ok 34 - FFI_PL_TYPE_RECORD             0x0903
    ok 35 - FFI_PL_TYPE_SINT16             0x0012
    ok 36 - FFI_PL_TYPE_SINT32             0x0013
    ok 37 - FFI_PL_TYPE_SINT64             0x0014
    ok 38 - FFI_PL_TYPE_SINT8              0x0011
    ok 39 - FFI_PL_TYPE_STRING             0x0303
    ok 40 - FFI_PL_TYPE_UINT16             0x0022
    ok 41 - FFI_PL_TYPE_UINT32             0x0023
    ok 42 - FFI_PL_TYPE_UINT64             0x0024
    ok 43 - FFI_PL_TYPE_UINT8              0x0021
    ok 44 - FFI_PL_TYPE_VOID               0x0008
    # value order:
    ok 45 - FFI_PL_SIZE_0                  0x0000
    ok 46 - FFI_PL_SHAPE_SCALAR            0x0000
    ok 47 - FFI_PL_SIZE_8                  0x0001
    ok 48 - FFI_PL_SIZE_16                 0x0002
    ok 49 - FFI_PL_SIZE_32                 0x0003
    ok 50 - FFI_PL_SIZE_PTR                0x0003
    ok 51 - FFI_PL_SIZE_64                 0x0004
    ok 52 - FFI_PL_SIZE_128                0x0005
    ok 53 - FFI_PL_SIZE_256                0x0006
    ok 54 - FFI_PL_SIZE_512                0x0007
    ok 55 - FFI_PL_SIZE_MASK               0x0007
    ok 56 - FFI_PL_BASE_VOID               0x0008
    ok 57 - FFI_PL_TYPE_VOID               0x0008
    ok 58 - FFI_PL_BASE_SINT               0x0010
    ok 59 - FFI_PL_TYPE_SINT8              0x0011
    ok 60 - FFI_PL_TYPE_SINT16             0x0012
    ok 61 - FFI_PL_TYPE_SINT32             0x0013
    ok 62 - FFI_PL_TYPE_SINT64             0x0014
    ok 63 - FFI_PL_BASE_UINT               0x0020
    ok 64 - FFI_PL_TYPE_UINT8              0x0021
    ok 65 - FFI_PL_TYPE_UINT16             0x0022
    ok 66 - FFI_PL_TYPE_UINT32             0x0023
    ok 67 - FFI_PL_TYPE_UINT64             0x0024
    ok 68 - FFI_PL_BASE_FLOAT              0x0040
    ok 69 - FFI_PL_TYPE_FLOAT              0x0043
    ok 70 - FFI_PL_TYPE_DOUBLE             0x0044
    ok 71 - FFI_PL_TYPE_LONG_DOUBLE        0x0045
    ok 72 - FFI_PL_BASE_COMPLEX            0x0080
    ok 73 - FFI_PL_TYPE_COMPLEX_FLOAT      0x0084
    ok 74 - FFI_PL_TYPE_COMPLEX_DOUBLE     0x0085
    ok 75 - FFI_PL_BASE_OPAQUE             0x0100
    ok 76 - FFI_PL_TYPE_OPAQUE             0x0103
    ok 77 - FFI_PL_BASE_STRING             0x0200
    ok 78 - FFI_PL_TYPE_STRING             0x0303
    ok 79 - FFI_PL_BASE_CLOSURE            0x0400
    ok 80 - FFI_PL_TYPE_CLOSURE            0x0503
    ok 81 - FFI_PL_BASE_RECORD             0x0800
    ok 82 - FFI_PL_TYPE_RECORD             0x0903
    ok 83 - FFI_PL_BASE_MASK               0x0ff8
    ok 84 - FFI_PL_SHAPE_POINTER           0x1000
    ok 85 - FFI_PL_SHAPE_ARRAY             0x2000
    ok 86 - FFI_PL_SHAPE_CUSTOM_PERL       0x4000
    ok 87 - FFI_PL_SHAPE_CUSTOM_NATIVE     0x8000
    ok 88 - FFI_PL_SHAPE_CUSTOM_MASK       0xf000
    1..88
ok 1 - basic
1..1
ok
t/ffi_platypus_lang.t .................... 
# Subtest: Foo constructor
    ok 1 - int is not an okay type
    # unknown type: int at t/ffi_platypus_lang.t line 14.
    ok 2 - foo_t is an okay type
    ok 3 - sint16 is an okay type
    ok 4 - sizeof foo_t = 2
    ok 5 - sizeof foo_t = 4
    ok 6
    1..6
ok 1 - Foo constructor
# Subtest: Foo attribute
    ok 1 - int is not an okay type
    # unknown type: int at t/ffi_platypus_lang.t line 34.
    ok 2 - foo_t is an okay type
    ok 3 - sint16 is an okay type
    ok 4 - sizeof foo_t = 2
    ok 5 - sizeof foo_t = 4
    ok 6
    1..6
ok 2 - Foo attribute
# Subtest: MyLang::Roger
    ok 1 - int is not an okay type
    # unknown type: int at t/ffi_platypus_lang.t line 53.
    ok 2 - sizeof foo_t = 4
    1..2
ok 3 - MyLang::Roger
1..3
ok
t/ffi_platypus_lang_asm.t ................ 
# Subtest: ASM
    ok 1 - int is not an okay type
    # unknown type: int at t/ffi_platypus_lang_asm.t line 13.
    ok 2 - foo_t is not an okay type
    # unknown type: foo_t at t/ffi_platypus_lang_asm.t line 16.
    ok 3 - sint16 is an okay type
    ok 4 - unable to find unmangled name
    1..4
ok 1 - ASM
1..1
ok
t/ffi_platypus_lang_c.t .................. 
# Subtest: C
    ok 1 - int is an okay type
    ok 2 - foo_t is not an okay type
    # unknown type: foo_t at t/ffi_platypus_lang_c.t line 15.
    ok 3 - sint16 is an okay type
    ok 4 - unable to find unmangled name
    1..4
ok 1 - C
1..1
ok
t/ffi_platypus_lang_win32.t .............. 
# BOOL                           sint32
# BOOLEAN                        uint8
# BYTE                           uint8
# CCHAR                          uint8
# CHAR                           uint8
# COLORREF                       uint32
# DWORD                          uint32
# DWORD32                        uint32
# DWORD64                        uint64
# DWORDLONG                      uint64
# DWORD_PTR                      uint16
# FLOAT                          float
# HACCEL                         opaque
# HALF_PTR                       sint16
# HANDLE                         opaque
# HBITMAP                        opaque
# HBRUSH                         opaque
# HCOLORSPACE                    opaque
# HCONV                          opaque
# HCONVLIST                      opaque
# HCURSOR                        opaque
# HDC                            opaque
# HDDEDATA                       opaque
# HDESK                          opaque
# HDROP                          opaque
# HDWP                           opaque
# HENHMETAFILE                   opaque
# HFILE                          sint32
# HFONT                          opaque
# HGDIOBJ                        opaque
# HGLOBAL                        opaque
# HHOOK                          opaque
# HICON                          opaque
# HINSTANCE                      opaque
# HKEY                           opaque
# HKL                            opaque
# HLOCAL                         opaque
# HMENU                          opaque
# HMETAFILE                      opaque
# HMODULE                        opaque
# HMONITOR                       opaque
# HPALETTE                       opaque
# HPEN                           opaque
# HRESULT                        sint32
# HRGN                           opaque
# HRSRC                          opaque
# HSZ                            opaque
# HWINSTA                        opaque
# HWND                           opaque
# INT                            sint32
# INT16                          sint16
# INT32                          sint32
# INT64                          sint64
# INT8                           sint8
# INT_PTR                        sint32
# LANGID                         uint16
# LCID                           uint32
# LCTYPE                         uint32
# LGRPID                         uint32
# LONG                           sint32
# LONG32                         sint32
# LONG64                         sint64
# LONGLONG                       sint64
# LONG_PTR                       sint16
# LPCSTR                         string
# LPCVOID                        opaque
# LPVOID                         opaque
# LRESULT                        sint16
# PSTR                           string
# PVOID                          opaque
# QWORD                          uint64
# SC_HANDLE                      opaque
# SC_LOCK                        opaque
# SERVICE_STATUS_HANDLE          opaque
# SHORT                          sint16
# SIZE_T                         uint16
# SSIZE_T                        sint16
# UCHAR                          uint8
# UHALF_PTR                      uint16
# UINT16                         uint16
# UINT32                         uint32
# UINT64                         uint64
# UINT8                          uint8
# UINT_PTR                       uint32
# ULONG                          uint32
# ULONG32                        uint32
# ULONG64                        uint64
# ULONGLONG                      uint64
# ULONG_PTR                      uint16
# USHORT                         uint16
# USN                            sint64
# VOID                           void
# WORD                           uint16
# WPARAM                         uint32
# blkcnt_t                       uint64
# blksize_t                      uint32
# bool                           uint8
# char                           uint8
# complex                        complex_double
# dev_t                          uint64
# double complex                 complex_double
# float complex                  complex_float
# gid_t                          uint32
# ino_t                          uint64
# int                            sint32
# int16_t                        sint16
# int32_t                        sint32
# int64_t                        sint64
# int8_t                         sint8
# int_least16_t                  sint16
# int_least32_t                  sint32
# int_least64_t                  sint64
# int_least8_t                   sint8
# long                           sint32
# long double                    longdouble
# long long                      sint64
# mode_t                         uint32
# nlink_t                        uint32
# off_t                          uint64
# ptrdiff_t                      uint32
# short                          sint16
# signed char                    sint8
# signed int                     sint32
# signed long                    sint32
# signed long long               sint64
# signed short                   sint16
# size_t                         uint32
# time_t                         uint32
# uchar                          uint8
# uid_t                          uint32
# uint                           uint32
# uint16_t                       uint16
# uint32_t                       uint32
# uint64_t                       uint64
# uint8_t                        uint8
# uint_least16_t                 uint16
# uint_least32_t                 uint32
# uint_least64_t                 uint64
# uint_least8_t                  uint8
# ulong                          uint32
# unsigned char                  uint8
# unsigned int                   uint32
# unsigned long                  uint32
# unsigned long long             uint64
# unsigned short                 uint16
# ushort                         uint16
# void*                          uint32
# wchar_t                        uint32
ok 1 - good
1..1
ok
t/ffi_platypus_memory.t .................. 
# Subtest: malloc calloc memset free
    ok 1 - malloc returns 8986344
    ok 2 - calloc returns 7667504
    ok 3 - string = yyyyxxxx
    ok 4 - free $ptr1
    ok 5 - free $ptr2
    1..5
ok 1 - malloc calloc memset free
# Subtest: memcpy
    ok 1 - initial data copied
    ok 2 - copy of copy
    ok 3 - memcpy returns a pointer
    ok 4 - free $ptr1
    ok 5 - free $ptr2
    1..5
ok 2 - memcpy
# Subtest: realloc
    ok 1 - realloc call ptr = 5628168
    ok 2 - initial data copied
    ok 3 - realloc call ptr = 9072424 (2)
    ok 4 - after realloc data there
    ok 5 - final free
    1..5
ok 3 - realloc
# Subtest: strdup
    # strdup implementation = c
    ok 1 - string = this and
    ok 2 - free $ptr1
    1..2
ok 4 - strdup
1..4
ok
t/ffi_platypus_record.t .................. 
# Subtest: integer accessor
    ok 1 - An object of class 'Foo1' isa 'Foo1'
    ok 2 - foo._record_size = 8
    ok 3 - foo.first   = 1
    ok 4 - foo.second  = 2
    ok 5 - foo.first   = 22
    ok 6 - foo.second = 42
    ok 7 - foo.first   = 3
    ok 8 - foo.second  = 4
    # {'ffi_type' => 'pointer','ref' => 1,'size' => 8,'type' => 'record','type_code' => 2307}
    # {'ffi_type' => 'pointer','ref' => 0,'size' => 8,'type' => 'record','type_code' => 2307}
    1..8
ok 1 - integer accessor
# Subtest: values match in C
    ok 1 - An object of class 'Color' isa 'Color'
    ok 2 - color.get_red   =  50
    ok 3 - color.get_green = 100
    ok 4 - color.get_blue  = 150
    1..4
ok 2 - values match in C
# Subtest: complex alignment
    ok 1 - An object of class 'Foo2' isa 'Foo2'
    ok 2 - uint64 = 512
    ok 3 - sint64 = -512
    ok 4 - uint32 = 1024
    ok 5 - sint32 = -1024
    ok 6 - uint16 = 2048
    ok 7 - sint16 = -2048
    ok 8 - uint8 = 48
    ok 9 - sint8 = -48
    ok 10 - float = 1.5
    ok 11 - double = -1.5
    ok 12 - get_opaque = 24233648
    ok 13 - opaque = 24233648
    ok 14 - get_opaque = undef
    ok 15 - opaque = undef
    1..15
ok 3 - complex alignment
# Subtest: same name
    ok 1 - two members of the same name not allowed
    # accessor/method foo already exists at t/ffi_platypus_record.t line 187.
    1..1
ok 4 - same name
# Subtest: array alignment
    ok 1 - An object of class 'Foo4' isa 'Foo4'
    # Subtest: unsigned 8 integer
        ok 1 - uint8 = 1,2,3
        ok 2 - get_uint8 = 1,2,3
        ok 3 - uint8(1) = 2
        ok 4 - uint8 = 1,20,3
        1..4
    ok 2 - unsigned 8 integer
    # Subtest: signed 8 integer
        ok 1 - sint8 = -1,2,-3
        ok 2 - get_sint8 = -1,2,-3
        ok 3 - sint8(2) = -3
        ok 4 - sint8 = -1,-20,-3
        1..4
    ok 3 - signed 8 integer
    # Subtest: unsigned 16 integer
        ok 1 - uint16 = 1,2,3
        ok 2 - get_uint16 = 1,2,3
        ok 3 - uint16(1) = 2
        ok 4 - uint16 = 1,20,3
        1..4
    ok 4 - unsigned 16 integer
    # Subtest: signed 16 integer
        ok 1 - sint16 = -1,2,-3
        ok 2 - get_sint16 = -1,2,-3
        ok 3 - sint16(2) = -3
        ok 4 - sint16 = -1,-20,-3
        1..4
    ok 5 - signed 16 integer
    # Subtest: unsigned 32 integer
        ok 1 - uint32 = 1,2,3
        ok 2 - get_uint32 = 1,2,3
        ok 3 - uint32(1) = 2
        ok 4 - uint32 = 1,20,3
        1..4
    ok 6 - unsigned 32 integer
    # Subtest: signed 32 integer
        ok 1 - sint32 = -1,2,-3
        ok 2 - get_sint32 = -1,2,-3
        ok 3 - sint32(2) = -3
        ok 4 - sint32 = -1,-20,-3
        1..4
    ok 7 - signed 32 integer
    # Subtest: unsigned 64 integer
        ok 1 - uint64 = 1,2,3
        ok 2 - get_uint64 = 1,2,3
        ok 3 - uint64(1) = 2
        ok 4 - uint64 = 1,20,3
        1..4
    ok 8 - unsigned 64 integer
    # Subtest: signed 64 integer
        ok 1 - sint64 = -1,2,-3
        ok 2 - get_sint64 = -1,2,-3
        ok 3 - sint64(2) = -3
        ok 4 - sint64 = -1,-20,-3
        1..4
    ok 9 - signed 64 integer
    # Subtest: float
        ok 1 - float = 1.5,0,-1.5
        ok 2
        ok 3
        ok 4
        ok 5 - float = 1.5,20,-1.5
        1..5
    ok 10 - float
    # Subtest: double
        ok 1 - double = 1.5,0,-1.5
        ok 2
        ok 3
        ok 4
        ok 5 - double = 1.5,20,-1.5
        1..5
    ok 11 - double
    # Subtest: opaque
        ok 1 - opaque     = 24547056,undef,24314992
        ok 2 - opaque     = 24547056,24547056,24314992
        ok 3 - opaque     = undef,24547056,24314992
        ok 4
        ok 5
        ok 6
        1..6
    ok 12 - opaque
    ok 13 - align = 8
    ok 14 - align is positive
    1..14
ok 5 - array alignment
# Subtest: string ro
    ok 1 - An object of class 'Foo5' isa 'Foo5'
    ok 2 - foo.value = undef
    ok 3 - foo.get_value = undef
    ok 4 - foo.value = my value
    ok 5 - foo.get_value = my value
    ok 6 - value is ro
    # member is read only at t/ffi_platypus_record.t line 341.
    ok 7 - foo.value = undef
    ok 8 - foo.get_value = undef
    1..8
ok 6 - string ro
# Subtest: fixed string
    ok 1 - An object of class 'Foo6' isa 'Foo6'
    ok 2 - foo.value = "\0\0\0\0\0\0\0\0\0\0"
    ok 3 - foo.get_value = ""
    ok 4 - foo.value = "one two th"
    ok 5 - foo.value = 123456789\0
    ok 6 - foo.get_value = 123456789
    1..6
ok 7 - fixed string
# Subtest: string rw
    ok 1 - An object of class 'Foo7' isa 'Foo7'
    ok 2 - foo.value = hi there
    ok 3 - foo.get_value = hi there
    ok 4 - foo.value = undef
    ok 5 - foo.get_value = undef
    ok 6 - foo.value = starscream!!!
    ok 7 - foo.get_value = starscream!!!
    1..7
ok 8 - string rw
1..8
ok
t/ffi_platypus_record_tiearray.t ......... 
ok 1 - An object of class 'Foo' isa 'Foo'
ok 2
ok 3
ok 4
ok 5
ok 6
ok 7
ok 8
ok 9
ok 10
ok 11
ok 12
ok 13
ok 14
ok 15
ok 16
ok 17
ok 18
ok 19
ok 20
ok 21
ok 22
ok 23
ok 24
ok 25
ok 26
ok 27
ok 28
ok 29
ok 30
ok 31
ok 32
ok 33
ok 34
ok 35
ok 36
ok 37
ok 38
ok 39
ok 40
ok 41
ok 42
ok 43
ok 44
ok 45
1..45
ok
t/ffi_platypus_shareconfig.t ............. 
# {
#   'abi' => {
#              'default_abi' => 2,
#              'sysv' => 1,
#              'vfp' => 2
#            },
#   'align' => {
#                'double' => 8,
#                'double complex' => 8,
#                'float' => 4,
#                'float complex' => 4,
#                'long double' => 8,
#                'pointer' => 4,
#                'sint16' => 2,
#                'sint32' => 4,
#                'sint64' => 8,
#                'sint8' => 1,
#                'uint16' => 2,
#                'uint32' => 4,
#                'uint64' => 8,
#                'uint8' => 1
#              },
#   'config_dlext' => [
#                       'so'
#                     ],
#   'diag' => {
#               'args' => {
#                           'extra_compiler_flags' => '',
#                           'extra_linker_flags' => '-lffi'
#                         }
#             },
#   'probe' => {
#                'abi' => 1
#              },
#   'test-key' => 'test-value',
#   'type_map' => {
#                   'blkcnt_t' => 'uint64',
#                   'blksize_t' => 'uint32',
#                   'bool' => 'uint8',
#                   'char' => 'uint8',
#                   'complex' => 'complex_double',
#                   'dev_t' => 'uint64',
#                   'double complex' => 'complex_double',
#                   'float complex' => 'complex_float',
#                   'gid_t' => 'uint32',
#                   'ino_t' => 'uint64',
#                   'int' => 'sint32',
#                   'int16_t' => 'sint16',
#                   'int32_t' => 'sint32',
#                   'int64_t' => 'sint64',
#                   'int8_t' => 'sint8',
#                   'int_least16_t' => 'sint16',
#                   'int_least32_t' => 'sint32',
#                   'int_least64_t' => 'sint64',
#                   'int_least8_t' => 'sint8',
#                   'long' => 'sint32',
#                   'long double' => 'longdouble',
#                   'long long' => 'sint64',
#                   'mode_t' => 'uint32',
#                   'nlink_t' => 'uint32',
#                   'off_t' => 'uint64',
#                   'ptrdiff_t' => 'uint32',
#                   'short' => 'sint16',
#                   'signed char' => 'sint8',
#                   'signed int' => 'sint32',
#                   'signed long' => 'sint32',
#                   'signed long long' => 'sint64',
#                   'signed short' => 'sint16',
#                   'size_t' => 'uint32',
#                   'time_t' => 'uint32',
#                   'uchar' => 'uint8',
#                   'uid_t' => 'uint32',
#                   'uint' => 'uint32',
#                   'uint16_t' => 'uint16',
#                   'uint32_t' => 'uint32',
#                   'uint64_t' => 'uint64',
#                   'uint8_t' => 'uint8',
#                   'uint_least16_t' => 'uint16',
#                   'uint_least32_t' => 'uint32',
#                   'uint_least64_t' => 'uint64',
#                   'uint_least8_t' => 'uint8',
#                   'ulong' => 'uint32',
#                   'unsigned char' => 'uint8',
#                   'unsigned int' => 'uint32',
#                   'unsigned long' => 'uint32',
#                   'unsigned long long' => 'uint64',
#                   'unsigned short' => 'uint16',
#                   'ushort' => 'uint16',
#                   'void*' => 'uint32',
#                   'wchar_t' => 'uint32'
#                 }
# }
# 0
ok 1
ok 2
1..2
ok
t/ffi_platypus_type_pointersizebuffer.t .. 
ok 1
ok 2
ok 3
ok 4
ok 5
1..5
ok
t/ffi_platypus_type_stringarray.t ........ 
# Subtest: fixed length input
    # Subtest: with default
        ok 1 - a1(0) = foo
        ok 2 - a1(0) = bar
        ok 3 - a1(0) = baz
        ok 4 - a1(0) = hey
        ok 5 - a1(0) = five
        ok 6 - a1(0) = undef
        1..6
    ok 1 - with default
    # Subtest: with default
        ok 1 - a2(0) = foo
        ok 2 - a2(0) = bar
        ok 3 - a2(0) = baz
        ok 4 - a2(0) = undef
        ok 5 - a2(0) = five
        ok 6 - a2(0) = undef
        1..6
    ok 2 - with default
    1..2
ok 1 - fixed length input
# Subtest: variable length input
    ok 1 - get_string_from_array(@list, 0) = foo
    ok 2 - get_string_from_array(@list, 1) = bar
    ok 3 - get_string_from_array(@list, 2) = baz
    ok 4 - get_string_from_array(@list, 3) = undef
    1..4
ok 2 - variable length input
# Subtest: fixed length return
    ok 1 - returns null
    ok 2 - returns with just strings
    ok 3 - returns with NULL/undef in the middle
    ok 4 - returns with NULL/undef in the middle with default
    1..4
ok 3 - fixed length return
# Subtest: null terminated return
    ok 1 - returns null
    ok 2
    ok 3
    ok 4
    1..4
ok 4 - null terminated return
1..4
ok
t/ffi_platypus_type_stringpointer.t ...... 
# Subtest: arg pass in
    ok 1 - not null
    ok 2 - \undef is null
    ok 3 - undef is null
    1..3
ok 1 - arg pass in
# Subtest: arg pass out
    ok 1 - not null string = hi there
    ok 2 - not null string = and another
    1..2
ok 2 - arg pass out
# Subtest: return value
    ok 1 - not null string = once more onto
    ok 2 - \null
    ok 3 - null
    1..3
ok 3 - return value
1..3
ok
t/forks.t ................................ skipped: Test requires forks
t/threads.t .............................. 
ok 1 - works in a thread
ok 2 - works in main thread
1..2
ok
t/type_complex_double.t .................. skipped: Test requires support for double complex
t/type_complex_float.t ................... skipped: Test requires support for float complex
t/type_double.t .......................... 
ok 1 - add(1.5,2.5) = 4
ok 2 - add() = 0.0
ok 3 - inc(\$i,4.25) = \7.75
ok 4 - i=3.5+4.25
ok 5 - inc(\3,4) = \7
ok 6 - sum([1..10]) = 55
ok 7 - sum2([1..10],10) = 55
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [-5.5, 5.5, -10, 10, -15.5, 15.5, 20, -20, 25.5, -25.5]
ok 14 - null2() == undef
ok 15 - call_closure(2.5) = 4.75
ok 16 - call_closure(2.5) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(1.25,2.5) = 4
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(1,1) = 2.25
    1..2
ok 18 - custom type output
ok 19 - closure_pointer_is_null() = 1
1..19
ok
t/type_float.t ........................... 
ok 1 - add(1.5,2.5) = 4
ok 2 - add() = 0.0
ok 3 - inc(\$i,4.25) = \7.75
ok 4 - i=3.5+4.25
ok 5 - inc(\3,4) = \7
ok 6 - sum([1..10]) = 55
ok 7 - sum2([1..10],10) = 55
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [-5.5, 5.5, -10, 10, -15.5, 15.5, 20, -20, 25.5, -25.5]
ok 14 - null2() == undef
ok 15 - call_closure(2.5) = 4.75
ok 16 - call_closure(2.5) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(1.25,2.5) = 4
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(1,1) = 2.25
    1..2
ok 18 - custom type output
ok 19 - closure_pointer_is_null() = 1
1..19
ok
t/type_longdouble.t ...................... skipped: test requires support for long double
t/type_opaque.t .......................... 
ok 1 - null = undef
ok 2 - is_null(undef) == 1
ok 3 - is_null() == 1
ok 4 - is_null($ptr) = 0
ok 5 - setp(11294976); getp() = 11294976
ok 6 - get($tmp); tmp = 11294976
ok 7 - get(\$tmp); \$tmp = undef
ok 8 - aa_in([one two three])
ok 9 - aa_null_in([undef,undef,undef])
ok 10 - aa_out()
ok 11 - aa_null_out()
ok 12 - ra_out()
ok 13 - ra_null_out
ok 14 - pp2p(\undef) = undef
ok 15 - pp2p(\11295136) = 11295136
ok 16 - p2pp(undef) = \undef
ok 17 - pp2p(11630016) = \11630016
ok 18 - call_closure(undef) = undef
ok 19 - save = undef
ok 20 - call_closure(\11663600) = 11663600
ok 21 - save = 11663600
# Subtest: custom type input
    ok 1
    ok 2
    1..2
ok 22 - custom type input
# Subtest: custom type output
    ok 1
    ok 2
    1..2
ok 23 - custom type output
1..23
ok
t/type_record.t .......................... 
# record size = 20
# Subtest: not a reference
    # Subtest: in
        # packed size = 20
        ok 1 - get_value($packed) = 42
        ok 2 - get_name($packed) = hi there
        ok 3 - is_null(undef)
        1..3
    ok 1 - in
    # Subtest: out
        # packed size = 20
        ok 1 - get_value($packed) = 47
        ok 2 - get_value($packed) = platypus
        ok 3 - null() = undef
        1..3
    ok 2 - out
    1..2
ok 1 - not a reference
# Subtest: is a reference
    # Subtest: in
        # packed size = 20
        ok 1 - get_value(\$packed) = 42
        ok 2 - get_name(\$packed) = hi there
        ok 3 - is_null(\undef)
        1..3
    ok 1 - in
    # Subtest: out
        # packed size = 31
        ok 1 - An object of class 'My::FooRecord' isa 'My::FooRecord'
        ok 2 - packed.my_method = starscream
        ok 3 - get_value($packed) = 47
        ok 4 - get_value($packed) = platypus
        ok 5 - null() = \undef
        1..5
    ok 2 - out
    1..2
ok 2 - is a reference
# Subtest: closure
    ok 1 - allow record type as arg
    ok 2
    ok 3
    ok 4
    ok 5
    ok 6
    ok 7
    # error = record is read-only at t/type_record.t line 126.
    ok 8
    ok 9
    ok 10
    ok 11
    # error = record is read-only at t/type_record.t line 135.
    ok 12
    ok 13
    # error = record is read-only at t/type_record.t line 142.
    ok 14
    ok 15
    ok 16
    # error = record is read-only at t/type_record.t line 151.
    ok 17
    ok 18
    ok 19
    # error = record is read-only at t/type_record.t line 160.
    ok 20
    ok 21
    # error = record is read-only at t/type_record.t line 167.
    ok 22
    ok 23
    # error = record is read-only at t/type_record.t line 175.
    ok 24
    ok 25
    ok 26
    # error = record is read-only at t/type_record.t line 184.
    ok 27
    ok 28
    ok 29
    ok 30
    ok 31
    ok 32
    1..32
ok 3 - closure
1..3
ok
t/type_sint16.t .......................... 
ok 1 - add(-1,2) = 1
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \1
ok 4 - i=1
ok 5 - inc(\-3,4) = \1
ok 6 - sum([-5..4]) = -5
ok 7 - sum([-5..4],10) = -5
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [-1,2,-3,4,-5,6,-7,8,-9,10]
ok 14 - null2() == undef
ok 15 - call_closure(-2) = -4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(-2,-1) = -5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(-2,-1) = -6
    1..2
ok 18 - custom type output
ok 19 - closure_pointer_is_null() = 1
1..19
ok
t/type_sint32.t .......................... 
ok 1 - add(-1,2) = 1
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \1
ok 4 - i=1
ok 5 - inc(\-3,4) = \1
ok 6 - sum([-5..4]) = -5
ok 7 - sum([-5..4],10) = -5
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [-1,2,-3,4,-5,6,-7,8,-9,10]
ok 14 - null2() == undef
ok 15 - call_closure(-2) = -4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(-2,-1) = -5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(-2,-1) = -6
    1..2
ok 18 - custom type output
ok 19 - closure_pointer_is_null() = 1
1..19
ok
t/type_sint64.t .......................... 
ok 1 - add(-1,2) = 1
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \1
ok 4 - i=1
ok 5 - inc(\-3,4) = \1
ok 6 - sum([-5..4]) = -5
ok 7 - sum([-5..4],10) = -5
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [-1,2,-3,4,-5,6,-7,8,-9,10]
ok 14 - null2() == undef
ok 15 - call_closure(-2) = -4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(-2,-1) = -5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(-2,-1) = -6
    1..2
ok 18 - custom type output
ok 19 - closure_pointer_is_null() = 1
1..19
ok
t/type_sint8.t ........................... 
ok 1 - add(-1,2) = 1
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \1
ok 4 - i=1
ok 5 - inc(\-3,4) = \1
ok 6 - sum([-5..4]) = -5
ok 7 - sum([-5..4],10) = -5
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [-1,2,-3,4,-5,6,-7,8,-9,10]
ok 14 - null2() == undef
ok 15 - call_closure(-2) = -4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(-2,-1) = -5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(-2,-1) = -6
    1..2
ok 18 - custom type output
ok 19 - closure_pointer_is_null() = 1
1..19
ok
t/type_string.t .......................... 
ok 1 - string_matches_foobarbaz(foobarbaz) = true
ok 2 - string_matches_foobarbaz(foobarbaz) = false
ok 3 - string_return_foobarbaz() = foobarbaz
ok 4 - null() = undef
ok 5 - is_null(undef) = 1
ok 6 - is_null() = 1
ok 7 - is_null("foo") = 0
ok 8 - $save = hey there
ok 9 - $save = undef
ok 10 - fixed_input_test(foobarbaz\0)
ok 11 - fixed_input_is_null(undef)
ok 12 - string_fixed_text(0) = zero
ok 13 - string_fixed_text(1) = one
ok 14 - string_fixed_text(2) = two
ok 15 - string_fixed_text(3) = three
ok 16 - fixed_output_null()
ok 17 - save=zero 
1..17
ok
t/type_uint16.t .......................... 
ok 1 - add(1,2) = 3
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \7
ok 4 - i=3+4
ok 5 - inc(\3,4) = \7
ok 6 - sum([1..10]) = 55
ok 7 - sum2([1..10],10) = 55
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [1,4,6,8,10,12,14,16,18,20]
ok 14 - null2() == undef
ok 15 - call_closure(2) = 4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(2,1) = 5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(1,1) = 4
    1..2
ok 18 - custom type output
# Subtest: custom type post
    ok 1
    ok 2 - custom_add3(1,2) = 3
    1..2
ok 19 - custom type post
ok 20 - closure_pointer_is_null() = 1
1..20
ok
t/type_uint32.t .......................... 
ok 1 - add(1,2) = 3
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \7
ok 4 - i=3+4
ok 5 - inc(\3,4) = \7
ok 6 - sum([1..10]) = 55
ok 7 - sum2([1..10],10) = 55
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [1,4,6,8,10,12,14,16,18,20]
ok 14 - null2() == undef
ok 15 - call_closure(2) = 4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(2,1) = 5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(1,1) = 4
    1..2
ok 18 - custom type output
# Subtest: custom type post
    ok 1
    ok 2 - custom_add3(1,2) = 3
    1..2
ok 19 - custom type post
ok 20 - closure_pointer_is_null() = 1
1..20
ok
t/type_uint64.t .......................... 
ok 1 - add(1,2) = 3
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \7
ok 4 - i=3+4
ok 5 - inc(\3,4) = \7
ok 6 - sum([1..10]) = 55
ok 7 - sum2([1..10],10) = 55
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [1,4,6,8,10,12,14,16,18,20]
ok 14 - null2() == undef
ok 15 - call_closure(2) = 4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(2,1) = 5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(1,1) = 4
    1..2
ok 18 - custom type output
# Subtest: custom type post
    ok 1
    ok 2 - custom_add3(1,2) = 3
    1..2
ok 19 - custom type post
ok 20 - closure_pointer_is_null() = 1
1..20
ok
t/type_uint8.t ........................... 
ok 1 - add(1,2) = 3
ok 2 - add() = 0
ok 3 - inc(\$i,4) = \7
ok 4 - i=3+4
ok 5 - inc(\3,4) = \7
ok 6 - sum([1..10]) = 55
ok 7 - sum2([1..10],10) = 55
ok 8 - array increment
ok 9 - null() == undef
ok 10 - is_null(undef) == 1
ok 11 - is_null() == 1
ok 12 - is_null(22) == 0
ok 13 - static_array = [1,4,6,8,10,12,14,16,18,20]
ok 14 - null2() == undef
ok 15 - call_closure(2) = 4
ok 16 - call_closure(2) = 0
# Subtest: custom type input
    ok 1
    ok 2 - custom_add(2,1) = 5
    1..2
ok 17 - custom type input
# Subtest: custom type output
    ok 1
    ok 2 - custom_add2(1,1) = 4
    1..2
ok 18 - custom type output
# Subtest: custom type post
    ok 1
    ok 2 - custom_add3(1,2) = 3
    1..2
ok 19 - custom type post
ok 20 - closure_pointer_is_null() = 1
1..20
ok
All tests successful.
Files=39, Tests=384, 54 wallclock secs ( 1.89 usr  0.34 sys + 45.64 cusr  5.41 csys = 53.28 CPU)
Result: PASS
   create-stamp debian/debhelper-build-stamp
 fakeroot debian/rules binary-arch
dh binary-arch
   dh_testroot -a
   dh_prep -a
   debian/rules override_dh_auto_install
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_auto_install
	perl Build install --destdir /<<PKGBUILDDIR>>/debian/libffi-platypus-perl --create_packlist 0
Building FFI-Platypus
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/FFI/Platypus/Platypus.bs
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/FFI/Platypus/Platypus.so
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/API.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Buffer.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/DL.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Declare.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Internal.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Memory.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Record.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/ShareConfig.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type.pod
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang/ASM.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang/C.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang/Win32.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Record/TieArray.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type/PointerSizeBuffer.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type/StringArray.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type/StringPointer.pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/dist/FFI-Platypus/README.txt
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/dist/FFI-Platypus/config.pl
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::API.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Buffer.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::DL.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Declare.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Internal.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Lang.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Lang::ASM.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Lang::C.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Lang::Win32.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Memory.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Record.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Record::TieArray.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::ShareConfig.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Type.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Type::PointerSizeBuffer.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Type::StringArray.3pm
Installing /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::Type::StringPointer.3pm
rm -f -v /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::ShareConfig.3pm
removed '/<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/man/man3/FFI::Platypus::ShareConfig.3pm'
rm -f -v /<<PKGBUILDDIR>>/debian/libffi-platypus-perl//usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/dist/FFI-Platypus/README.txt
removed '/<<PKGBUILDDIR>>/debian/libffi-platypus-perl//usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/dist/FFI-Platypus/README.txt'
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_installdocs -a
   dh_installchangelogs -a
   debian/rules override_dh_installexamples
make[1]: Entering directory '/<<PKGBUILDDIR>>'
dh_installexamples
sed -i '1s|^#!perl|#!/usr/bin/perl|' /<<PKGBUILDDIR>>/debian/libffi-platypus-perl/usr/share/doc/libffi-platypus-perl/examples/*.pl
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_installman -a
   dh_perl -a
   dh_link -a
   dh_strip_nondeterminism -a
   dh_compress -a
   dh_fixperms -a
   dh_missing -a
   dh_strip -a
   dh_makeshlibs -a
   dh_shlibdeps -a
   dh_installdeb -a
   dh_gencontrol -a
   dh_md5sums -a
   dh_builddeb -a
dpkg-deb: building package 'libffi-platypus-perl-dbgsym' in '../libffi-platypus-perl-dbgsym_0.59-1_armhf.deb'.
dpkg-deb: building package 'libffi-platypus-perl' in '../libffi-platypus-perl_0.59-1_armhf.deb'.
 dpkg-genbuildinfo --build=any
 dpkg-genchanges --build=any -mRaspbian wandboard test autobuilder <root@raspbian.org> >../libffi-platypus-perl_0.59-1_armhf.changes
dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included)
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2018-12-24T04:59:42Z

Finished
--------

I: Built successfully

+------------------------------------------------------------------------------+
| Post Build Chroot                                                            |
+------------------------------------------------------------------------------+


+------------------------------------------------------------------------------+
| Changes                                                                      |
+------------------------------------------------------------------------------+


libffi-platypus-perl_0.59-1_armhf.changes:
------------------------------------------

Format: 1.8
Date: Fri, 21 Dec 2018 20:31:14 +0100
Source: libffi-platypus-perl
Binary: libffi-platypus-perl
Architecture: armhf
Version: 0.59-1
Distribution: buster-staging
Urgency: medium
Maintainer: Raspbian wandboard test autobuilder <root@raspbian.org>
Changed-By: gregor herrmann <gregoa@debian.org>
Description:
 libffi-platypus-perl - module to create Perl bindings to non-Perl libraries with FFI
Changes:
 libffi-platypus-perl (0.59-1) unstable; urgency=medium
 .
   * Import upstream version 0.59.
Checksums-Sha1:
 3f8fd988aaa6964af7ba325c9aa6b0b5382faa1b 206660 libffi-platypus-perl-dbgsym_0.59-1_armhf.deb
 4c4997157ad2dfa9c072f04a9b74057f805e2f9f 4896 libffi-platypus-perl_0.59-1_armhf.buildinfo
 ae047762e02c7bd0a5aa8a116f7e845dd90ae65f 171436 libffi-platypus-perl_0.59-1_armhf.deb
Checksums-Sha256:
 99c36f783cbdf3bca18ac5ecc5d55e8029809c8ff7ac6d72dd120f0b3a149348 206660 libffi-platypus-perl-dbgsym_0.59-1_armhf.deb
 0c468c7598892d135dc00fd680dd2bf948d33ba4fe5476a6eb1854a7718520a1 4896 libffi-platypus-perl_0.59-1_armhf.buildinfo
 56ba477debf99bbefccbac1585ea9b80121ebb1e661ef423c430c772b5dd9255 171436 libffi-platypus-perl_0.59-1_armhf.deb
Files:
 98b6d2e57e793a274276ac2462ceeea9 206660 debug optional libffi-platypus-perl-dbgsym_0.59-1_armhf.deb
 d1f1232690eb9b225df56d7beb8ae6c4 4896 perl optional libffi-platypus-perl_0.59-1_armhf.buildinfo
 e49eb164e3926c49ecf8b9ce9fc49c51 171436 perl optional libffi-platypus-perl_0.59-1_armhf.deb

+------------------------------------------------------------------------------+
| Package contents                                                             |
+------------------------------------------------------------------------------+


libffi-platypus-perl-dbgsym_0.59-1_armhf.deb
--------------------------------------------

 new Debian package, version 2.0.
 size 206660 bytes: control archive=544 bytes.
     412 bytes,    12 lines      control              
     106 bytes,     1 lines      md5sums              
 Package: libffi-platypus-perl-dbgsym
 Source: libffi-platypus-perl
 Version: 0.59-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
 Installed-Size: 230
 Depends: libffi-platypus-perl (= 0.59-1)
 Section: debug
 Priority: optional
 Description: debug symbols for libffi-platypus-perl
 Build-Ids: b68d5436038691f0d25144a128effed170fbd453

drwxr-xr-x root/root         0 2018-12-21 19:31 ./
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/debug/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/debug/.build-id/b6/
-rw-r--r-- root/root    225124 2018-12-21 19:31 ./usr/lib/debug/.build-id/b6/8d5436038691f0d25144a128effed170fbd453.debug
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/doc/
lrwxrwxrwx root/root         0 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl-dbgsym -> libffi-platypus-perl


libffi-platypus-perl_0.59-1_armhf.deb
-------------------------------------

 new Debian package, version 2.0.
 size 171436 bytes: control archive=2740 bytes.
     839 bytes,    16 lines      control              
    6602 bytes,    72 lines      md5sums              
 Package: libffi-platypus-perl
 Version: 0.59-1
 Architecture: armhf
 Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
 Installed-Size: 463
 Depends: perl (>= 5.28.1-3), perlapi-5.28.1, libc6 (>= 2.4), libffi6 (>= 3.0.4), libffi-checklib-perl, libfile-sharedir-perl
 Section: perl
 Priority: optional
 Homepage: https://metacpan.org/release/FFI-Platypus
 Description: module to create Perl bindings to non-Perl libraries with FFI
  FFI::Platypus is a library for creating interfaces to machine code libraries
  written in languages like C, C++, Fortran, Rust, Pascal. Essentially anything
  that gets compiled into machine code. This implementation uses libffi to
  accomplish this task. libffi is battle tested by a number of other scripting
  and virtual machine languages, such as Python and Ruby to serve a similar
  role.

drwxr-xr-x root/root         0 2018-12-21 19:31 ./
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/
-rw-r--r-- root/root     68281 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus.pm
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/
-rw-r--r-- root/root      5329 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/API.pm
-rw-r--r-- root/root      4174 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Buffer.pm
-rw-r--r-- root/root      5432 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/DL.pm
-rw-r--r-- root/root     11076 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Declare.pm
-rw-r--r-- root/root      1162 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Internal.pm
-rw-r--r-- root/root      1314 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang.pm
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang/
-rw-r--r-- root/root      1825 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang/ASM.pm
-rw-r--r-- root/root      1719 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang/C.pm
-rw-r--r-- root/root      6736 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Lang/Win32.pm
-rw-r--r-- root/root      5007 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Memory.pm
-rw-r--r-- root/root      8322 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Record.pm
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Record/
-rw-r--r-- root/root      2526 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Record/TieArray.pm
-rw-r--r-- root/root      1288 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/ShareConfig.pm
-rw-r--r-- root/root     31262 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type.pod
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type/
-rw-r--r-- root/root      2667 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type/PointerSizeBuffer.pm
-rw-r--r-- root/root      5698 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type/StringArray.pm
-rw-r--r-- root/root      2933 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/FFI/Platypus/Type/StringPointer.pm
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/FFI/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/FFI/Platypus/
-rw-r--r-- root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/FFI/Platypus/Platypus.bs
-rw-r--r-- root/root    120072 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/FFI/Platypus/Platypus.so
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/dist/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/dist/FFI-Platypus/
-rw-r--r-- root/root      2210 2018-12-21 19:31 ./usr/lib/arm-linux-gnueabihf/perl5/5.28/auto/share/dist/FFI-Platypus/config.pl
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/
-rw-r--r-- root/root      1902 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/CONTRIBUTING.gz
-rw-r--r-- root/root       250 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/Changes.FFI-Platypus-Type-StringArray
-rw-r--r-- root/root      1319 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/changelog.Debian.gz
-rw-r--r-- root/root      6160 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/changelog.gz
-rw-r--r-- root/root      1344 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/copyright
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/
-rw-r--r-- root/root      3254 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/archive.pl
-rw-r--r-- root/root       331 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/attach_from_pointer.pl
-rw-r--r-- root/root      2052 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/bzip2.pl
-rw-r--r-- root/root       407 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/char.pl
-rw-r--r-- root/root       419 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/closure-opaque.pl
-rw-r--r-- root/root       366 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/examples/closure.c
-rw-r--r-- root/root       480 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/closure.pl
-rw-r--r-- root/root      1971 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/get_uptime.pl
-rw-r--r-- root/root       192 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/getpid.pl
-rw-r--r-- root/root       200 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/integer.pl
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/java/
-rw-r--r-- root/root       253 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/examples/java/Example.java
-rw-r--r-- root/root       312 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/examples/java/Makefile
-rw-r--r-- root/root       295 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/examples/java/between.cpp
-rw-r--r-- root/root       538 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/examples/java/example.pl
-rw-r--r-- root/root       272 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/list_integer_types.pl
-rw-r--r-- root/root       313 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/malloc.pl
-rw-r--r-- root/root       376 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/math.pl
-rw-r--r-- root/root      1058 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/notify.pl
-rw-r--r-- root/root       223 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/pipe.pl
-rw-r--r-- root/root       430 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/string.pl
-rw-r--r-- root/root      1795 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/time.pl
-rw-r--r-- root/root      2253 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/time_oo.pl
-rw-r--r-- root/root       864 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/time_record.pl
-rw-r--r-- root/root       594 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/uuid.pl
-rw-r--r-- root/root       137 2018-12-16 23:33 ./usr/share/doc/libffi-platypus-perl/examples/var_array.c
-rw-r--r-- root/root       220 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/var_array.pl
-rw-r--r-- root/root       242 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/win32_beep.pl
-rw-r--r-- root/root      1568 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/win32_getSystemTime.pl
-rw-r--r-- root/root      2307 2018-12-21 19:31 ./usr/share/doc/libffi-platypus-perl/examples/zmq3.pl
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/man/
drwxr-xr-x root/root         0 2018-12-21 19:31 ./usr/share/man/man3/
-rw-r--r-- root/root     20404 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus.3pm.gz
-rw-r--r-- root/root      3377 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::API.3pm.gz
-rw-r--r-- root/root      3410 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Buffer.3pm.gz
-rw-r--r-- root/root      4103 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::DL.3pm.gz
-rw-r--r-- root/root      5254 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Declare.3pm.gz
-rw-r--r-- root/root      2287 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Internal.3pm.gz
-rw-r--r-- root/root      2393 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Lang.3pm.gz
-rw-r--r-- root/root      2659 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Lang::ASM.3pm.gz
-rw-r--r-- root/root      2516 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Lang::C.3pm.gz
-rw-r--r-- root/root      2527 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Lang::Win32.3pm.gz
-rw-r--r-- root/root      3480 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Memory.3pm.gz
-rw-r--r-- root/root      4331 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Record.3pm.gz
-rw-r--r-- root/root      2714 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Record::TieArray.3pm.gz
-rw-r--r-- root/root     12804 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Type.3pm.gz
-rw-r--r-- root/root      2616 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Type::PointerSizeBuffer.3pm.gz
-rw-r--r-- root/root      3285 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Type::StringArray.3pm.gz
-rw-r--r-- root/root      2543 2018-12-21 19:31 ./usr/share/man/man3/FFI::Platypus::Type::StringPointer.3pm.gz


+------------------------------------------------------------------------------+
| Post Build                                                                   |
+------------------------------------------------------------------------------+


+------------------------------------------------------------------------------+
| Cleanup                                                                      |
+------------------------------------------------------------------------------+

Purging /<<BUILDDIR>>
Not cleaning session: cloned chroot in use

+------------------------------------------------------------------------------+
| Summary                                                                      |
+------------------------------------------------------------------------------+

Build Architecture: armhf
Build-Space: 7160
Build-Time: 359
Distribution: buster-staging
Host Architecture: armhf
Install-Time: 298
Job: libffi-platypus-perl_0.59-1
Machine Architecture: armhf
Package: libffi-platypus-perl
Package-Time: 713
Source-Version: 0.59-1
Space: 7160
Status: successful
Version: 0.59-1
--------------------------------------------------------------------------------
Finished at 2018-12-24T04:59:42Z
Build needed 00:11:53, 7160k disc space