0s autopkgtest [16:47:12]: starting date and time: 2026-01-22 16:47:12+0000 0s autopkgtest [16:47:12]: git checkout: 508d4a25 a-v-ssh wait_for_ssh: demote "ssh connection failed" to a debug message 0s autopkgtest [16:47:12]: host juju-7f2275-prod-proposed-migration-environment-9; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.c91vhh9a/out --timeout-copy=6000 --setup-commands 'ln -s /dev/null /etc/systemd/system/bluetooth.service; printf "http_proxy=http://squid.internal:3128\nhttps_proxy=http://squid.internal:3128\nno_proxy=127.0.0.1,127.0.1.1,localhost,localdomain,internal,login.ubuntu.com,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com,radosgw.ps5.canonical.com\n" >> /etc/environment' --apt-pocket=proposed=src:python3-defaults --apt-upgrade compyle --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python3-defaults/3.14.2-1 -- lxd -r lxd-armhf-10.145.243.52 lxd-armhf-10.145.243.52:autopkgtest/ubuntu/resolute/armhf 23s autopkgtest [16:47:35]: testbed dpkg architecture: armhf 25s autopkgtest [16:47:37]: testbed apt version: 3.1.12 29s autopkgtest [16:47:41]: @@@@@@@@@@@@@@@@@@@@ test bed setup 31s autopkgtest [16:47:43]: testbed release detected to be: None 39s autopkgtest [16:47:51]: updating testbed package index (apt update) 41s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [124 kB] 42s Get:2 http://ftpmaster.internal/ubuntu resolute InRelease [124 kB] 42s Get:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease [124 kB] 42s Get:4 http://ftpmaster.internal/ubuntu resolute-security InRelease [124 kB] 42s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [2820 B] 42s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [815 kB] 42s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [19.2 kB] 42s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [80.9 kB] 42s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf Packages [97.4 kB] 42s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/universe armhf Packages [571 kB] 42s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse armhf Packages [3644 B] 42s Get:12 http://ftpmaster.internal/ubuntu resolute/multiverse Sources [310 kB] 42s Get:13 http://ftpmaster.internal/ubuntu resolute/main Sources [1402 kB] 43s Get:14 http://ftpmaster.internal/ubuntu resolute/universe Sources [21.4 MB] 45s Get:15 http://ftpmaster.internal/ubuntu resolute/main armhf Packages [1371 kB] 45s Get:16 http://ftpmaster.internal/ubuntu resolute/universe armhf Packages [14.9 MB] 45s Get:17 http://ftpmaster.internal/ubuntu resolute/multiverse armhf Packages [175 kB] 48s Fetched 41.6 MB in 7s (6060 kB/s) 49s Reading package lists... 56s autopkgtest [16:48:08]: upgrading testbed (apt dist-upgrade and autopurge) 57s Reading package lists... 58s Building dependency tree... 58s Reading state information... 58s Calculating upgrade... 59s The following packages were automatically installed and are no longer required: 59s libpython3.13-minimal libpython3.13-stdlib python3.13 python3.13-minimal 59s Use 'apt autoremove' to remove them. 59s The following NEW packages will be installed: 59s libpython3.14-minimal libpython3.14-stdlib python3.14 python3.14-minimal 59s The following packages will be upgraded: 59s libpython3-stdlib python3 python3-gdbm python3-minimal 59s 4 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. 59s Need to get 6219 kB of archives. 59s After this operation, 22.5 MB of additional disk space will be used. 59s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.14-minimal armhf 3.14.2-1 [905 kB] 60s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf python3.14-minimal armhf 3.14.2-1 [2155 kB] 60s Get:3 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf python3-gdbm armhf 3.14.2-1 [11.1 kB] 60s Get:4 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf python3-minimal armhf 3.14.2-1 [28.2 kB] 60s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf python3 armhf 3.14.2-1 [22.9 kB] 60s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.14-stdlib armhf 3.14.2-1 [2270 kB] 60s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf python3.14 armhf 3.14.2-1 [816 kB] 60s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf libpython3-stdlib armhf 3.14.2-1 [10.9 kB] 61s Fetched 6219 kB in 1s (6973 kB/s) 61s Selecting previously unselected package libpython3.14-minimal:armhf. 61s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 66485 files and directories currently installed.) 61s Preparing to unpack .../libpython3.14-minimal_3.14.2-1_armhf.deb ... 61s Unpacking libpython3.14-minimal:armhf (3.14.2-1) ... 61s Selecting previously unselected package python3.14-minimal. 61s Preparing to unpack .../python3.14-minimal_3.14.2-1_armhf.deb ... 61s Unpacking python3.14-minimal (3.14.2-1) ... 61s Preparing to unpack .../python3-gdbm_3.14.2-1_armhf.deb ... 61s Unpacking python3-gdbm (3.14.2-1) over (3.13.9-1) ... 61s Setting up libpython3.14-minimal:armhf (3.14.2-1) ... 61s Setting up python3.14-minimal (3.14.2-1) ... 62s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 66827 files and directories currently installed.) 62s Preparing to unpack .../python3-minimal_3.14.2-1_armhf.deb ... 62s Unpacking python3-minimal (3.14.2-1) over (3.13.7-1) ... 62s Setting up python3-minimal (3.14.2-1) ... 63s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 66827 files and directories currently installed.) 63s Preparing to unpack .../python3_3.14.2-1_armhf.deb ... 63s Unpacking python3 (3.14.2-1) over (3.13.7-1) ... 63s Selecting previously unselected package libpython3.14-stdlib:armhf. 63s Preparing to unpack .../libpython3.14-stdlib_3.14.2-1_armhf.deb ... 63s Unpacking libpython3.14-stdlib:armhf (3.14.2-1) ... 63s Selecting previously unselected package python3.14. 63s Preparing to unpack .../python3.14_3.14.2-1_armhf.deb ... 63s Unpacking python3.14 (3.14.2-1) ... 63s Preparing to unpack .../libpython3-stdlib_3.14.2-1_armhf.deb ... 63s Unpacking libpython3-stdlib:armhf (3.14.2-1) over (3.13.7-1) ... 63s Setting up libpython3.14-stdlib:armhf (3.14.2-1) ... 63s Setting up python3.14 (3.14.2-1) ... 64s Setting up libpython3-stdlib:armhf (3.14.2-1) ... 64s Setting up python3-gdbm (3.14.2-1) ... 64s Setting up python3 (3.14.2-1) ... 64s Processing triggers for man-db (2.13.1-1) ... 65s Processing triggers for systemd (259-1ubuntu2) ... 67s Reading package lists... 67s Building dependency tree... 67s Reading state information... 68s Solving dependencies... 68s The following packages will be REMOVED: 68s libpython3.13-minimal* libpython3.13-stdlib* python3.13* python3.13-minimal* 69s 0 upgraded, 0 newly installed, 4 to remove and 0 not upgraded. 69s After this operation, 21.3 MB disk space will be freed. 69s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 67257 files and directories currently installed.) 69s Removing python3.13 (3.13.11-1) ... 69s Removing libpython3.13-stdlib:armhf (3.13.11-1) ... 69s Removing python3.13-minimal (3.13.11-1) ... 70s Removing libpython3.13-minimal:armhf (3.13.11-1) ... 70s Processing triggers for man-db (2.13.1-1) ... 70s Processing triggers for systemd (259-1ubuntu2) ... 71s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 66518 files and directories currently installed.) 71s Purging configuration files for libpython3.13-minimal:armhf (3.13.11-1) ... 71s Purging configuration files for python3.13-minimal (3.13.11-1) ... 73s autopkgtest [16:48:25]: rebooting testbed after setup commands that affected boot 116s autopkgtest [16:49:08]: testbed running kernel: Linux 6.8.0-87-generic #88~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Oct 14 14:00:09 UTC 2 142s autopkgtest [16:49:34]: @@@@@@@@@@@@@@@@@@@@ apt-source compyle 153s Get:1 http://ftpmaster.internal/ubuntu resolute/universe compyle 0.8.1-11 (dsc) [1843 B] 153s Get:2 http://ftpmaster.internal/ubuntu resolute/universe compyle 0.8.1-11 (tar) [123 kB] 153s Get:3 http://ftpmaster.internal/ubuntu resolute/universe compyle 0.8.1-11 (diff) [7400 B] 153s gpgv: Signature made Thu Jun 19 07:40:21 2025 UTC 153s gpgv: using RSA key D54C3BFAFFB042DE382DA5D741CE7F0B9F1B8B32 153s gpgv: Can't check signature: No public key 153s dpkg-source: warning: cannot verify inline signature for ./compyle_0.8.1-11.dsc: no acceptable signature found 153s autopkgtest [16:49:45]: testing package compyle version 0.8.1-11 156s autopkgtest [16:49:48]: build not needed 160s autopkgtest [16:49:52]: test pybuild-autopkgtest: preparing testbed 161s Reading package lists... 162s Building dependency tree... 162s Reading state information... 162s Solving dependencies... 163s The following NEW packages will be installed: 163s autoconf automake autopoint autotools-dev build-essential clang-18 cpp 163s cpp-15 cpp-15-arm-linux-gnueabihf cpp-arm-linux-gnueabihf cython3 debhelper 163s debugedit dh-autoreconf dh-python dh-strip-nondeterminism dwz g++ g++-15 163s g++-15-arm-linux-gnueabihf g++-arm-linux-gnueabihf gcc gcc-15 163s gcc-15-arm-linux-gnueabihf gcc-arm-linux-gnueabihf gettext intltool-debian 163s libarchive-zip-perl libasan8 libblas3 libc-dev-bin libc6-dev libcc1-0 163s libclang-common-18-dev libclang-cpp18 libclang1-18 libcrypt-dev 163s libdebhelper-perl libdw1t64 libexpat1-dev libfile-stripnondeterminism-perl 163s libgc1 libgcc-15-dev libgfortran5 libgomp1 libhwloc15 libisl23 liblapack3 163s libllvm18 libllvmspirvlib18.1 libmpc3 libobjc-15-dev libobjc4 163s libpocl2-common libpocl2t64 libpython3-all-dev libpython3-dev libpython3.13 163s libpython3.13-dev libpython3.13-minimal libpython3.13-stdlib libpython3.14 163s libpython3.14-dev libstdc++-15-dev libtool libubsan1 linux-libc-dev 163s llvm-18-linker-tools llvm-spirv-18 m4 ocl-icd-libopencl1 po-debconf 163s pocl-opencl-icd pybuild-plugin-autopkgtest python3-all python3-all-dev 163s python3-compyle python3-decorator python3-dev python3-iniconfig python3-mako 163s python3-numpy python3-numpy-dev python3-platformdirs python3-pluggy 163s python3-pyopencl python3-pytest python3-pytools python3.13 python3.13-dev 163s python3.13-minimal python3.14-dev rpcsvc-proto zlib1g-dev 163s 0 upgraded, 94 newly installed, 0 to remove and 0 not upgraded. 163s Need to get 143 MB of archives. 163s After this operation, 512 MB of additional disk space will be used. 163s Get:1 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.13-minimal armhf 3.13.11-1 [875 kB] 164s Get:2 http://ftpmaster.internal/ubuntu resolute/main armhf python3.13-minimal armhf 3.13.11-1 [2055 kB] 164s Get:3 http://ftpmaster.internal/ubuntu resolute/main armhf python3-numpy-dev armhf 1:2.3.5+ds-3 [141 kB] 164s Get:4 http://ftpmaster.internal/ubuntu resolute/main armhf libblas3 armhf 3.12.1-7ubuntu1 [133 kB] 164s Get:5 http://ftpmaster.internal/ubuntu resolute/main armhf libgfortran5 armhf 15.2.0-11ubuntu1 [334 kB] 164s Get:6 http://ftpmaster.internal/ubuntu resolute/main armhf liblapack3 armhf 3.12.1-7ubuntu1 [2090 kB] 164s Get:7 http://ftpmaster.internal/ubuntu resolute/main armhf python3-numpy armhf 1:2.3.5+ds-3 [4729 kB] 164s Get:8 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.13-stdlib armhf 3.13.11-1 [1960 kB] 164s Get:9 http://ftpmaster.internal/ubuntu resolute/main armhf python3.13 armhf 3.13.11-1 [758 kB] 164s Get:10 http://ftpmaster.internal/ubuntu resolute/main armhf m4 armhf 1.4.20-2 [212 kB] 164s Get:11 http://ftpmaster.internal/ubuntu resolute/main armhf autoconf all 2.72-3.1ubuntu1 [384 kB] 164s Get:12 http://ftpmaster.internal/ubuntu resolute/main armhf autotools-dev all 20240727.1 [43.4 kB] 164s Get:13 http://ftpmaster.internal/ubuntu resolute/main armhf automake all 1:1.18.1-3build1 [582 kB] 164s Get:14 http://ftpmaster.internal/ubuntu resolute/main armhf autopoint all 0.23.2-1 [620 kB] 164s Get:15 http://ftpmaster.internal/ubuntu resolute/main armhf libc-dev-bin armhf 2.42-2ubuntu4 [21.8 kB] 164s Get:16 http://ftpmaster.internal/ubuntu resolute/main armhf linux-libc-dev armhf 6.18.0-9.9 [1819 kB] 164s Get:17 http://ftpmaster.internal/ubuntu resolute/main armhf libcrypt-dev armhf 1:4.5.1-1 [128 kB] 164s Get:18 http://ftpmaster.internal/ubuntu resolute/main armhf rpcsvc-proto armhf 1.4.3-1 [62.3 kB] 164s Get:19 http://ftpmaster.internal/ubuntu resolute/main armhf libc6-dev armhf 2.42-2ubuntu4 [1416 kB] 164s Get:20 http://ftpmaster.internal/ubuntu resolute/main armhf libisl23 armhf 0.27-1build1 [553 kB] 164s Get:21 http://ftpmaster.internal/ubuntu resolute/main armhf libmpc3 armhf 1.3.1-2 [47.0 kB] 164s Get:22 http://ftpmaster.internal/ubuntu resolute/main armhf cpp-15-arm-linux-gnueabihf armhf 15.2.0-11ubuntu1 [10.1 MB] 164s Get:23 http://ftpmaster.internal/ubuntu resolute/main armhf cpp-15 armhf 15.2.0-11ubuntu1 [1032 B] 164s Get:24 http://ftpmaster.internal/ubuntu resolute/main armhf cpp-arm-linux-gnueabihf armhf 4:15.2.0-4ubuntu1 [5756 B] 164s Get:25 http://ftpmaster.internal/ubuntu resolute/main armhf cpp armhf 4:15.2.0-4ubuntu1 [22.4 kB] 164s Get:26 http://ftpmaster.internal/ubuntu resolute/main armhf libcc1-0 armhf 15.2.0-11ubuntu1 [43.5 kB] 164s Get:27 http://ftpmaster.internal/ubuntu resolute/main armhf libgomp1 armhf 15.2.0-11ubuntu1 [129 kB] 164s Get:28 http://ftpmaster.internal/ubuntu resolute/main armhf libasan8 armhf 15.2.0-11ubuntu1 [2947 kB] 164s Get:29 http://ftpmaster.internal/ubuntu resolute/main armhf libubsan1 armhf 15.2.0-11ubuntu1 [1187 kB] 164s Get:30 http://ftpmaster.internal/ubuntu resolute/main armhf libgcc-15-dev armhf 15.2.0-11ubuntu1 [898 kB] 164s Get:31 http://ftpmaster.internal/ubuntu resolute/main armhf gcc-15-arm-linux-gnueabihf armhf 15.2.0-11ubuntu1 [19.5 MB] 165s Get:32 http://ftpmaster.internal/ubuntu resolute/main armhf gcc-15 armhf 15.2.0-11ubuntu1 [497 kB] 165s Get:33 http://ftpmaster.internal/ubuntu resolute/main armhf gcc-arm-linux-gnueabihf armhf 4:15.2.0-4ubuntu1 [1220 B] 165s Get:34 http://ftpmaster.internal/ubuntu resolute/main armhf gcc armhf 4:15.2.0-4ubuntu1 [5022 B] 165s Get:35 http://ftpmaster.internal/ubuntu resolute/main armhf libstdc++-15-dev armhf 15.2.0-11ubuntu1 [2638 kB] 165s Get:36 http://ftpmaster.internal/ubuntu resolute/main armhf g++-15-arm-linux-gnueabihf armhf 15.2.0-11ubuntu1 [11.4 MB] 165s Get:37 http://ftpmaster.internal/ubuntu resolute/main armhf g++-15 armhf 15.2.0-11ubuntu1 [24.6 kB] 165s Get:38 http://ftpmaster.internal/ubuntu resolute/main armhf g++-arm-linux-gnueabihf armhf 4:15.2.0-4ubuntu1 [968 B] 165s Get:39 http://ftpmaster.internal/ubuntu resolute/main armhf g++ armhf 4:15.2.0-4ubuntu1 [1086 B] 165s Get:40 http://ftpmaster.internal/ubuntu resolute/main armhf build-essential armhf 12.12ubuntu2 [5256 B] 165s Get:41 http://ftpmaster.internal/ubuntu resolute/universe armhf libllvm18 armhf 1:18.1.8-20ubuntu5 [26.4 MB] 166s Get:42 http://ftpmaster.internal/ubuntu resolute/universe armhf libclang-cpp18 armhf 1:18.1.8-20ubuntu5 [12.6 MB] 166s Get:43 http://ftpmaster.internal/ubuntu resolute/main armhf libgc1 armhf 1:8.2.10-1 [82.7 kB] 166s Get:44 http://ftpmaster.internal/ubuntu resolute/universe armhf libobjc4 armhf 15.2.0-11ubuntu1 [38.7 kB] 166s Get:45 http://ftpmaster.internal/ubuntu resolute/universe armhf libobjc-15-dev armhf 15.2.0-11ubuntu1 [186 kB] 166s Get:46 http://ftpmaster.internal/ubuntu resolute/universe armhf libclang-common-18-dev armhf 1:18.1.8-20ubuntu5 [737 kB] 166s Get:47 http://ftpmaster.internal/ubuntu resolute/universe armhf llvm-18-linker-tools armhf 1:18.1.8-20ubuntu5 [1147 kB] 166s Get:48 http://ftpmaster.internal/ubuntu resolute/universe armhf libclang1-18 armhf 1:18.1.8-20ubuntu5 [7252 kB] 167s Get:49 http://ftpmaster.internal/ubuntu resolute/universe armhf clang-18 armhf 1:18.1.8-20ubuntu5 [75.5 kB] 167s Get:50 http://ftpmaster.internal/ubuntu resolute/universe armhf cython3 armhf 3.1.6+dfsg-1ubuntu1 [3308 kB] 167s Get:51 http://ftpmaster.internal/ubuntu resolute/main armhf libdebhelper-perl all 13.28ubuntu1 [97.4 kB] 167s Get:52 http://ftpmaster.internal/ubuntu resolute/main armhf libtool all 2.5.4-9 [169 kB] 167s Get:53 http://ftpmaster.internal/ubuntu resolute/main armhf dh-autoreconf all 21 [12.5 kB] 167s Get:54 http://ftpmaster.internal/ubuntu resolute/main armhf libarchive-zip-perl all 1.68-1 [90.2 kB] 167s Get:55 http://ftpmaster.internal/ubuntu resolute/main armhf libfile-stripnondeterminism-perl all 1.15.0-1build1 [20.6 kB] 167s Get:56 http://ftpmaster.internal/ubuntu resolute/main armhf dh-strip-nondeterminism all 1.15.0-1build1 [5110 B] 167s Get:57 http://ftpmaster.internal/ubuntu resolute/main armhf libdw1t64 armhf 0.194-1 [254 kB] 167s Get:58 http://ftpmaster.internal/ubuntu resolute/main armhf debugedit armhf 1:5.2-3 [48.9 kB] 167s Get:59 http://ftpmaster.internal/ubuntu resolute/main armhf dwz armhf 0.16-2 [114 kB] 167s Get:60 http://ftpmaster.internal/ubuntu resolute/main armhf gettext armhf 0.23.2-1 [1059 kB] 167s Get:61 http://ftpmaster.internal/ubuntu resolute/main armhf intltool-debian all 0.35.0+20060710.6build1 [24.1 kB] 167s Get:62 http://ftpmaster.internal/ubuntu resolute/main armhf po-debconf all 1.0.22 [215 kB] 167s Get:63 http://ftpmaster.internal/ubuntu resolute/main armhf debhelper all 13.28ubuntu1 [916 kB] 167s Get:64 http://ftpmaster.internal/ubuntu resolute/universe armhf dh-python all 7.20251231 [122 kB] 167s Get:65 http://ftpmaster.internal/ubuntu resolute/main armhf libexpat1-dev armhf 2.7.3-1 [126 kB] 167s Get:66 http://ftpmaster.internal/ubuntu resolute/universe armhf libhwloc15 armhf 2.12.2-1 [149 kB] 167s Get:67 http://ftpmaster.internal/ubuntu resolute/universe armhf libllvmspirvlib18.1 armhf 18.1.19-1 [871 kB] 167s Get:68 http://ftpmaster.internal/ubuntu resolute/universe armhf libpocl2-common all 6.0-7 [83.0 kB] 167s Get:69 http://ftpmaster.internal/ubuntu resolute/universe armhf llvm-spirv-18 armhf 18.1.19-1 [506 kB] 167s Get:70 http://ftpmaster.internal/ubuntu resolute/universe armhf libpocl2t64 armhf 6.0-7 [1947 kB] 167s Get:71 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.14 armhf 3.14.2-1 [2213 kB] 167s Get:72 http://ftpmaster.internal/ubuntu resolute/main armhf zlib1g-dev armhf 1:1.3.dfsg+really1.3.1-1ubuntu2 [881 kB] 167s Get:73 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.14-dev armhf 3.14.2-1 [4504 kB] 167s Get:74 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf libpython3-dev armhf 3.14.2-1 [11.2 kB] 167s Get:75 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.13 armhf 3.13.11-1 [2124 kB] 167s Get:76 http://ftpmaster.internal/ubuntu resolute/main armhf libpython3.13-dev armhf 3.13.11-1 [4564 kB] 167s Get:77 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf libpython3-all-dev armhf 3.14.2-1 [916 B] 167s Get:78 http://ftpmaster.internal/ubuntu resolute/universe armhf pybuild-plugin-autopkgtest all 7.20251231 [1748 B] 167s Get:79 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf python3-all armhf 3.14.2-1 [888 B] 167s Get:80 http://ftpmaster.internal/ubuntu resolute/main armhf python3.14-dev armhf 3.14.2-1 [512 kB] 167s Get:81 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf python3-dev armhf 3.14.2-1 [26.6 kB] 167s Get:82 http://ftpmaster.internal/ubuntu resolute/main armhf python3.13-dev armhf 3.13.11-1 [508 kB] 168s Get:83 http://ftpmaster.internal/ubuntu resolute-proposed/main armhf python3-all-dev armhf 3.14.2-1 [912 B] 168s Get:84 http://ftpmaster.internal/ubuntu resolute/main armhf python3-mako all 1.3.10-3build1 [63.9 kB] 168s Get:85 http://ftpmaster.internal/ubuntu resolute/main armhf python3-platformdirs all 4.5.1-1 [17.1 kB] 168s Get:86 http://ftpmaster.internal/ubuntu resolute/main armhf python3-decorator all 5.2.1-2 [28.1 kB] 168s Get:87 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-pytools all 2025.1.2-1 [69.9 kB] 168s Get:88 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-compyle all 0.8.1-11 [91.6 kB] 168s Get:89 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-iniconfig all 2.1.0-2 [6962 B] 168s Get:90 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-pluggy all 1.6.0-2 [21.1 kB] 168s Get:91 http://ftpmaster.internal/ubuntu resolute/main armhf ocl-icd-libopencl1 armhf 2.3.4-1 [37.6 kB] 168s Get:92 http://ftpmaster.internal/ubuntu resolute/universe armhf pocl-opencl-icd armhf 6.0-7 [7172 B] 168s Get:93 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-pyopencl armhf 2025.1-2 [500 kB] 168s Get:94 http://ftpmaster.internal/ubuntu resolute/universe armhf python3-pytest all 9.0.2-2 [277 kB] 169s Fetched 143 MB in 5s (30.3 MB/s) 169s Selecting previously unselected package libpython3.13-minimal:armhf. 169s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 66518 files and directories currently installed.) 169s Preparing to unpack .../00-libpython3.13-minimal_3.13.11-1_armhf.deb ... 169s Unpacking libpython3.13-minimal:armhf (3.13.11-1) ... 169s Selecting previously unselected package python3.13-minimal. 169s Preparing to unpack .../01-python3.13-minimal_3.13.11-1_armhf.deb ... 169s Unpacking python3.13-minimal (3.13.11-1) ... 169s Selecting previously unselected package python3-numpy-dev:armhf. 169s Preparing to unpack .../02-python3-numpy-dev_1%3a2.3.5+ds-3_armhf.deb ... 169s Unpacking python3-numpy-dev:armhf (1:2.3.5+ds-3) ... 169s Selecting previously unselected package libblas3:armhf. 169s Preparing to unpack .../03-libblas3_3.12.1-7ubuntu1_armhf.deb ... 169s Unpacking libblas3:armhf (3.12.1-7ubuntu1) ... 169s Selecting previously unselected package libgfortran5:armhf. 169s Preparing to unpack .../04-libgfortran5_15.2.0-11ubuntu1_armhf.deb ... 169s Unpacking libgfortran5:armhf (15.2.0-11ubuntu1) ... 169s Selecting previously unselected package liblapack3:armhf. 169s Preparing to unpack .../05-liblapack3_3.12.1-7ubuntu1_armhf.deb ... 169s Unpacking liblapack3:armhf (3.12.1-7ubuntu1) ... 169s Selecting previously unselected package python3-numpy. 169s Preparing to unpack .../06-python3-numpy_1%3a2.3.5+ds-3_armhf.deb ... 169s Unpacking python3-numpy (1:2.3.5+ds-3) ... 169s Selecting previously unselected package libpython3.13-stdlib:armhf. 169s Preparing to unpack .../07-libpython3.13-stdlib_3.13.11-1_armhf.deb ... 169s Unpacking libpython3.13-stdlib:armhf (3.13.11-1) ... 169s Selecting previously unselected package python3.13. 169s Preparing to unpack .../08-python3.13_3.13.11-1_armhf.deb ... 169s Unpacking python3.13 (3.13.11-1) ... 169s Selecting previously unselected package m4. 169s Preparing to unpack .../09-m4_1.4.20-2_armhf.deb ... 169s Unpacking m4 (1.4.20-2) ... 169s Selecting previously unselected package autoconf. 169s Preparing to unpack .../10-autoconf_2.72-3.1ubuntu1_all.deb ... 169s Unpacking autoconf (2.72-3.1ubuntu1) ... 169s Selecting previously unselected package autotools-dev. 169s Preparing to unpack .../11-autotools-dev_20240727.1_all.deb ... 169s Unpacking autotools-dev (20240727.1) ... 169s Selecting previously unselected package automake. 169s Preparing to unpack .../12-automake_1%3a1.18.1-3build1_all.deb ... 169s Unpacking automake (1:1.18.1-3build1) ... 169s Selecting previously unselected package autopoint. 169s Preparing to unpack .../13-autopoint_0.23.2-1_all.deb ... 169s Unpacking autopoint (0.23.2-1) ... 169s Selecting previously unselected package libc-dev-bin. 169s Preparing to unpack .../14-libc-dev-bin_2.42-2ubuntu4_armhf.deb ... 169s Unpacking libc-dev-bin (2.42-2ubuntu4) ... 170s Selecting previously unselected package linux-libc-dev:armhf. 170s Preparing to unpack .../15-linux-libc-dev_6.18.0-9.9_armhf.deb ... 170s Unpacking linux-libc-dev:armhf (6.18.0-9.9) ... 170s Selecting previously unselected package libcrypt-dev:armhf. 170s Preparing to unpack .../16-libcrypt-dev_1%3a4.5.1-1_armhf.deb ... 170s Unpacking libcrypt-dev:armhf (1:4.5.1-1) ... 170s Selecting previously unselected package rpcsvc-proto. 170s Preparing to unpack .../17-rpcsvc-proto_1.4.3-1_armhf.deb ... 170s Unpacking rpcsvc-proto (1.4.3-1) ... 170s Selecting previously unselected package libc6-dev:armhf. 170s Preparing to unpack .../18-libc6-dev_2.42-2ubuntu4_armhf.deb ... 170s Unpacking libc6-dev:armhf (2.42-2ubuntu4) ... 170s Selecting previously unselected package libisl23:armhf. 170s Preparing to unpack .../19-libisl23_0.27-1build1_armhf.deb ... 170s Unpacking libisl23:armhf (0.27-1build1) ... 170s Selecting previously unselected package libmpc3:armhf. 170s Preparing to unpack .../20-libmpc3_1.3.1-2_armhf.deb ... 170s Unpacking libmpc3:armhf (1.3.1-2) ... 170s Selecting previously unselected package cpp-15-arm-linux-gnueabihf. 170s Preparing to unpack .../21-cpp-15-arm-linux-gnueabihf_15.2.0-11ubuntu1_armhf.deb ... 170s Unpacking cpp-15-arm-linux-gnueabihf (15.2.0-11ubuntu1) ... 170s Selecting previously unselected package cpp-15. 170s Preparing to unpack .../22-cpp-15_15.2.0-11ubuntu1_armhf.deb ... 170s Unpacking cpp-15 (15.2.0-11ubuntu1) ... 170s Selecting previously unselected package cpp-arm-linux-gnueabihf. 170s Preparing to unpack .../23-cpp-arm-linux-gnueabihf_4%3a15.2.0-4ubuntu1_armhf.deb ... 170s Unpacking cpp-arm-linux-gnueabihf (4:15.2.0-4ubuntu1) ... 170s Selecting previously unselected package cpp. 170s Preparing to unpack .../24-cpp_4%3a15.2.0-4ubuntu1_armhf.deb ... 170s Unpacking cpp (4:15.2.0-4ubuntu1) ... 170s Selecting previously unselected package libcc1-0:armhf. 170s Preparing to unpack .../25-libcc1-0_15.2.0-11ubuntu1_armhf.deb ... 170s Unpacking libcc1-0:armhf (15.2.0-11ubuntu1) ... 170s Selecting previously unselected package libgomp1:armhf. 170s Preparing to unpack .../26-libgomp1_15.2.0-11ubuntu1_armhf.deb ... 170s Unpacking libgomp1:armhf (15.2.0-11ubuntu1) ... 170s Selecting previously unselected package libasan8:armhf. 170s Preparing to unpack .../27-libasan8_15.2.0-11ubuntu1_armhf.deb ... 170s Unpacking libasan8:armhf (15.2.0-11ubuntu1) ... 171s Selecting previously unselected package libubsan1:armhf. 171s Preparing to unpack .../28-libubsan1_15.2.0-11ubuntu1_armhf.deb ... 171s Unpacking libubsan1:armhf (15.2.0-11ubuntu1) ... 171s Selecting previously unselected package libgcc-15-dev:armhf. 171s Preparing to unpack .../29-libgcc-15-dev_15.2.0-11ubuntu1_armhf.deb ... 171s Unpacking libgcc-15-dev:armhf (15.2.0-11ubuntu1) ... 171s Selecting previously unselected package gcc-15-arm-linux-gnueabihf. 171s Preparing to unpack .../30-gcc-15-arm-linux-gnueabihf_15.2.0-11ubuntu1_armhf.deb ... 171s Unpacking gcc-15-arm-linux-gnueabihf (15.2.0-11ubuntu1) ... 171s Selecting previously unselected package gcc-15. 171s Preparing to unpack .../31-gcc-15_15.2.0-11ubuntu1_armhf.deb ... 171s Unpacking gcc-15 (15.2.0-11ubuntu1) ... 171s Selecting previously unselected package gcc-arm-linux-gnueabihf. 171s Preparing to unpack .../32-gcc-arm-linux-gnueabihf_4%3a15.2.0-4ubuntu1_armhf.deb ... 171s Unpacking gcc-arm-linux-gnueabihf (4:15.2.0-4ubuntu1) ... 171s Selecting previously unselected package gcc. 171s Preparing to unpack .../33-gcc_4%3a15.2.0-4ubuntu1_armhf.deb ... 171s Unpacking gcc (4:15.2.0-4ubuntu1) ... 171s Selecting previously unselected package libstdc++-15-dev:armhf. 171s Preparing to unpack .../34-libstdc++-15-dev_15.2.0-11ubuntu1_armhf.deb ... 171s Unpacking libstdc++-15-dev:armhf (15.2.0-11ubuntu1) ... 171s Selecting previously unselected package g++-15-arm-linux-gnueabihf. 171s Preparing to unpack .../35-g++-15-arm-linux-gnueabihf_15.2.0-11ubuntu1_armhf.deb ... 171s Unpacking g++-15-arm-linux-gnueabihf (15.2.0-11ubuntu1) ... 172s Selecting previously unselected package g++-15. 172s Preparing to unpack .../36-g++-15_15.2.0-11ubuntu1_armhf.deb ... 172s Unpacking g++-15 (15.2.0-11ubuntu1) ... 172s Selecting previously unselected package g++-arm-linux-gnueabihf. 172s Preparing to unpack .../37-g++-arm-linux-gnueabihf_4%3a15.2.0-4ubuntu1_armhf.deb ... 172s Unpacking g++-arm-linux-gnueabihf (4:15.2.0-4ubuntu1) ... 172s Selecting previously unselected package g++. 172s Preparing to unpack .../38-g++_4%3a15.2.0-4ubuntu1_armhf.deb ... 172s Unpacking g++ (4:15.2.0-4ubuntu1) ... 172s Selecting previously unselected package build-essential. 172s Preparing to unpack .../39-build-essential_12.12ubuntu2_armhf.deb ... 172s Unpacking build-essential (12.12ubuntu2) ... 172s Selecting previously unselected package libllvm18:armhf. 172s Preparing to unpack .../40-libllvm18_1%3a18.1.8-20ubuntu5_armhf.deb ... 172s Unpacking libllvm18:armhf (1:18.1.8-20ubuntu5) ... 173s Selecting previously unselected package libclang-cpp18. 173s Preparing to unpack .../41-libclang-cpp18_1%3a18.1.8-20ubuntu5_armhf.deb ... 173s Unpacking libclang-cpp18 (1:18.1.8-20ubuntu5) ... 173s Selecting previously unselected package libgc1:armhf. 173s Preparing to unpack .../42-libgc1_1%3a8.2.10-1_armhf.deb ... 173s Unpacking libgc1:armhf (1:8.2.10-1) ... 173s Selecting previously unselected package libobjc4:armhf. 173s Preparing to unpack .../43-libobjc4_15.2.0-11ubuntu1_armhf.deb ... 173s Unpacking libobjc4:armhf (15.2.0-11ubuntu1) ... 173s Selecting previously unselected package libobjc-15-dev:armhf. 173s Preparing to unpack .../44-libobjc-15-dev_15.2.0-11ubuntu1_armhf.deb ... 173s Unpacking libobjc-15-dev:armhf (15.2.0-11ubuntu1) ... 173s Selecting previously unselected package libclang-common-18-dev:armhf. 173s Preparing to unpack .../45-libclang-common-18-dev_1%3a18.1.8-20ubuntu5_armhf.deb ... 173s Unpacking libclang-common-18-dev:armhf (1:18.1.8-20ubuntu5) ... 173s Selecting previously unselected package llvm-18-linker-tools. 173s Preparing to unpack .../46-llvm-18-linker-tools_1%3a18.1.8-20ubuntu5_armhf.deb ... 173s Unpacking llvm-18-linker-tools (1:18.1.8-20ubuntu5) ... 173s Selecting previously unselected package libclang1-18. 173s Preparing to unpack .../47-libclang1-18_1%3a18.1.8-20ubuntu5_armhf.deb ... 173s Unpacking libclang1-18 (1:18.1.8-20ubuntu5) ... 174s Selecting previously unselected package clang-18. 174s Preparing to unpack .../48-clang-18_1%3a18.1.8-20ubuntu5_armhf.deb ... 174s Unpacking clang-18 (1:18.1.8-20ubuntu5) ... 174s Selecting previously unselected package cython3. 174s Preparing to unpack .../49-cython3_3.1.6+dfsg-1ubuntu1_armhf.deb ... 174s Unpacking cython3 (3.1.6+dfsg-1ubuntu1) ... 174s Selecting previously unselected package libdebhelper-perl. 174s Preparing to unpack .../50-libdebhelper-perl_13.28ubuntu1_all.deb ... 174s Unpacking libdebhelper-perl (13.28ubuntu1) ... 174s Selecting previously unselected package libtool. 174s Preparing to unpack .../51-libtool_2.5.4-9_all.deb ... 174s Unpacking libtool (2.5.4-9) ... 174s Selecting previously unselected package dh-autoreconf. 174s Preparing to unpack .../52-dh-autoreconf_21_all.deb ... 174s Unpacking dh-autoreconf (21) ... 174s Selecting previously unselected package libarchive-zip-perl. 174s Preparing to unpack .../53-libarchive-zip-perl_1.68-1_all.deb ... 174s Unpacking libarchive-zip-perl (1.68-1) ... 174s Selecting previously unselected package libfile-stripnondeterminism-perl. 174s Preparing to unpack .../54-libfile-stripnondeterminism-perl_1.15.0-1build1_all.deb ... 174s Unpacking libfile-stripnondeterminism-perl (1.15.0-1build1) ... 174s Selecting previously unselected package dh-strip-nondeterminism. 174s Preparing to unpack .../55-dh-strip-nondeterminism_1.15.0-1build1_all.deb ... 174s Unpacking dh-strip-nondeterminism (1.15.0-1build1) ... 174s Selecting previously unselected package libdw1t64:armhf. 174s Preparing to unpack .../56-libdw1t64_0.194-1_armhf.deb ... 174s Unpacking libdw1t64:armhf (0.194-1) ... 174s Selecting previously unselected package debugedit. 174s Preparing to unpack .../57-debugedit_1%3a5.2-3_armhf.deb ... 174s Unpacking debugedit (1:5.2-3) ... 174s Selecting previously unselected package dwz. 174s Preparing to unpack .../58-dwz_0.16-2_armhf.deb ... 174s Unpacking dwz (0.16-2) ... 174s Selecting previously unselected package gettext. 174s Preparing to unpack .../59-gettext_0.23.2-1_armhf.deb ... 174s Unpacking gettext (0.23.2-1) ... 174s Selecting previously unselected package intltool-debian. 174s Preparing to unpack .../60-intltool-debian_0.35.0+20060710.6build1_all.deb ... 174s Unpacking intltool-debian (0.35.0+20060710.6build1) ... 174s Selecting previously unselected package po-debconf. 174s Preparing to unpack .../61-po-debconf_1.0.22_all.deb ... 174s Unpacking po-debconf (1.0.22) ... 174s Selecting previously unselected package debhelper. 174s Preparing to unpack .../62-debhelper_13.28ubuntu1_all.deb ... 174s Unpacking debhelper (13.28ubuntu1) ... 175s Selecting previously unselected package dh-python. 175s Preparing to unpack .../63-dh-python_7.20251231_all.deb ... 175s Unpacking dh-python (7.20251231) ... 175s Selecting previously unselected package libexpat1-dev:armhf. 175s Preparing to unpack .../64-libexpat1-dev_2.7.3-1_armhf.deb ... 175s Unpacking libexpat1-dev:armhf (2.7.3-1) ... 175s Selecting previously unselected package libhwloc15:armhf. 175s Preparing to unpack .../65-libhwloc15_2.12.2-1_armhf.deb ... 175s Unpacking libhwloc15:armhf (2.12.2-1) ... 175s Selecting previously unselected package libllvmspirvlib18.1:armhf. 175s Preparing to unpack .../66-libllvmspirvlib18.1_18.1.19-1_armhf.deb ... 175s Unpacking libllvmspirvlib18.1:armhf (18.1.19-1) ... 175s Selecting previously unselected package libpocl2-common. 175s Preparing to unpack .../67-libpocl2-common_6.0-7_all.deb ... 175s Unpacking libpocl2-common (6.0-7) ... 175s Selecting previously unselected package llvm-spirv-18. 175s Preparing to unpack .../68-llvm-spirv-18_18.1.19-1_armhf.deb ... 175s Unpacking llvm-spirv-18 (18.1.19-1) ... 175s Selecting previously unselected package libpocl2t64:armhf. 175s Preparing to unpack .../69-libpocl2t64_6.0-7_armhf.deb ... 175s Unpacking libpocl2t64:armhf (6.0-7) ... 175s Selecting previously unselected package libpython3.14:armhf. 175s Preparing to unpack .../70-libpython3.14_3.14.2-1_armhf.deb ... 175s Unpacking libpython3.14:armhf (3.14.2-1) ... 175s Selecting previously unselected package zlib1g-dev:armhf. 175s Preparing to unpack .../71-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1ubuntu2_armhf.deb ... 175s Unpacking zlib1g-dev:armhf (1:1.3.dfsg+really1.3.1-1ubuntu2) ... 175s Selecting previously unselected package libpython3.14-dev:armhf. 175s Preparing to unpack .../72-libpython3.14-dev_3.14.2-1_armhf.deb ... 175s Unpacking libpython3.14-dev:armhf (3.14.2-1) ... 175s Selecting previously unselected package libpython3-dev:armhf. 175s Preparing to unpack .../73-libpython3-dev_3.14.2-1_armhf.deb ... 175s Unpacking libpython3-dev:armhf (3.14.2-1) ... 175s Selecting previously unselected package libpython3.13:armhf. 175s Preparing to unpack .../74-libpython3.13_3.13.11-1_armhf.deb ... 175s Unpacking libpython3.13:armhf (3.13.11-1) ... 175s Selecting previously unselected package libpython3.13-dev:armhf. 175s Preparing to unpack .../75-libpython3.13-dev_3.13.11-1_armhf.deb ... 175s Unpacking libpython3.13-dev:armhf (3.13.11-1) ... 176s Selecting previously unselected package libpython3-all-dev:armhf. 176s Preparing to unpack .../76-libpython3-all-dev_3.14.2-1_armhf.deb ... 176s Unpacking libpython3-all-dev:armhf (3.14.2-1) ... 176s Selecting previously unselected package pybuild-plugin-autopkgtest. 176s Preparing to unpack .../77-pybuild-plugin-autopkgtest_7.20251231_all.deb ... 176s Unpacking pybuild-plugin-autopkgtest (7.20251231) ... 176s Selecting previously unselected package python3-all. 176s Preparing to unpack .../78-python3-all_3.14.2-1_armhf.deb ... 176s Unpacking python3-all (3.14.2-1) ... 176s Selecting previously unselected package python3.14-dev. 176s Preparing to unpack .../79-python3.14-dev_3.14.2-1_armhf.deb ... 176s Unpacking python3.14-dev (3.14.2-1) ... 176s Selecting previously unselected package python3-dev. 176s Preparing to unpack .../80-python3-dev_3.14.2-1_armhf.deb ... 176s Unpacking python3-dev (3.14.2-1) ... 176s Selecting previously unselected package python3.13-dev. 176s Preparing to unpack .../81-python3.13-dev_3.13.11-1_armhf.deb ... 176s Unpacking python3.13-dev (3.13.11-1) ... 176s Selecting previously unselected package python3-all-dev. 176s Preparing to unpack .../82-python3-all-dev_3.14.2-1_armhf.deb ... 176s Unpacking python3-all-dev (3.14.2-1) ... 176s Selecting previously unselected package python3-mako. 176s Preparing to unpack .../83-python3-mako_1.3.10-3build1_all.deb ... 176s Unpacking python3-mako (1.3.10-3build1) ... 176s Selecting previously unselected package python3-platformdirs. 176s Preparing to unpack .../84-python3-platformdirs_4.5.1-1_all.deb ... 176s Unpacking python3-platformdirs (4.5.1-1) ... 176s Selecting previously unselected package python3-decorator. 176s Preparing to unpack .../85-python3-decorator_5.2.1-2_all.deb ... 176s Unpacking python3-decorator (5.2.1-2) ... 176s Selecting previously unselected package python3-pytools. 176s Preparing to unpack .../86-python3-pytools_2025.1.2-1_all.deb ... 176s Unpacking python3-pytools (2025.1.2-1) ... 176s Selecting previously unselected package python3-compyle. 176s Preparing to unpack .../87-python3-compyle_0.8.1-11_all.deb ... 176s Unpacking python3-compyle (0.8.1-11) ... 176s Selecting previously unselected package python3-iniconfig. 176s Preparing to unpack .../88-python3-iniconfig_2.1.0-2_all.deb ... 176s Unpacking python3-iniconfig (2.1.0-2) ... 176s Selecting previously unselected package python3-pluggy. 176s Preparing to unpack .../89-python3-pluggy_1.6.0-2_all.deb ... 176s Unpacking python3-pluggy (1.6.0-2) ... 176s Selecting previously unselected package ocl-icd-libopencl1:armhf. 176s Preparing to unpack .../90-ocl-icd-libopencl1_2.3.4-1_armhf.deb ... 176s Unpacking ocl-icd-libopencl1:armhf (2.3.4-1) ... 176s Selecting previously unselected package pocl-opencl-icd:armhf. 176s Preparing to unpack .../91-pocl-opencl-icd_6.0-7_armhf.deb ... 176s Unpacking pocl-opencl-icd:armhf (6.0-7) ... 176s Selecting previously unselected package python3-pyopencl. 176s Preparing to unpack .../92-python3-pyopencl_2025.1-2_armhf.deb ... 176s Unpacking python3-pyopencl (2025.1-2) ... 176s Selecting previously unselected package python3-pytest. 176s Preparing to unpack .../93-python3-pytest_9.0.2-2_all.deb ... 176s Unpacking python3-pytest (9.0.2-2) ... 176s Setting up dh-python (7.20251231) ... 177s Setting up python3-iniconfig (2.1.0-2) ... 177s Setting up libarchive-zip-perl (1.68-1) ... 177s Setting up libdebhelper-perl (13.28ubuntu1) ... 177s Setting up linux-libc-dev:armhf (6.18.0-9.9) ... 177s Setting up m4 (1.4.20-2) ... 177s Setting up libgomp1:armhf (15.2.0-11ubuntu1) ... 177s Setting up python3-platformdirs (4.5.1-1) ... 177s Setting up libdw1t64:armhf (0.194-1) ... 177s Setting up libpython3.13-minimal:armhf (3.13.11-1) ... 177s Setting up python3-decorator (5.2.1-2) ... 177s Setting up autotools-dev (20240727.1) ... 177s Setting up libblas3:armhf (3.12.1-7ubuntu1) ... 177s update-alternatives: using /usr/lib/arm-linux-gnueabihf/blas/libblas.so.3 to provide /usr/lib/arm-linux-gnueabihf/libblas.so.3 (libblas.so.3-arm-linux-gnueabihf) in auto mode 177s Setting up rpcsvc-proto (1.4.3-1) ... 177s Setting up libpocl2-common (6.0-7) ... 177s Setting up libhwloc15:armhf (2.12.2-1) ... 177s Setting up libmpc3:armhf (1.3.1-2) ... 177s Setting up python3-numpy-dev:armhf (1:2.3.5+ds-3) ... 177s Setting up cython3 (3.1.6+dfsg-1ubuntu1) ... 179s Setting up autopoint (0.23.2-1) ... 179s Setting up libclang-common-18-dev:armhf (1:18.1.8-20ubuntu5) ... 179s Setting up libgc1:armhf (1:8.2.10-1) ... 179s Setting up libgfortran5:armhf (15.2.0-11ubuntu1) ... 179s Setting up autoconf (2.72-3.1ubuntu1) ... 179s Setting up python3-pluggy (1.6.0-2) ... 180s Setting up libubsan1:armhf (15.2.0-11ubuntu1) ... 180s Setting up dwz (0.16-2) ... 180s Setting up ocl-icd-libopencl1:armhf (2.3.4-1) ... 180s Setting up libcrypt-dev:armhf (1:4.5.1-1) ... 180s Setting up libasan8:armhf (15.2.0-11ubuntu1) ... 180s Setting up libpython3.14:armhf (3.14.2-1) ... 180s Setting up debugedit (1:5.2-3) ... 180s Setting up python3.13-minimal (3.13.11-1) ... 181s Setting up libisl23:armhf (0.27-1build1) ... 181s Setting up libc-dev-bin (2.42-2ubuntu4) ... 181s Setting up cpp-15-arm-linux-gnueabihf (15.2.0-11ubuntu1) ... 181s Setting up libpython3.13-stdlib:armhf (3.13.11-1) ... 181s Setting up libcc1-0:armhf (15.2.0-11ubuntu1) ... 181s Setting up cpp-arm-linux-gnueabihf (4:15.2.0-4ubuntu1) ... 181s Setting up python3-mako (1.3.10-3build1) ... 181s Setting up libllvm18:armhf (1:18.1.8-20ubuntu5) ... 181s Setting up libpython3.13:armhf (3.13.11-1) ... 181s Setting up automake (1:1.18.1-3build1) ... 181s update-alternatives: using /usr/bin/automake-1.18 to provide /usr/bin/automake (automake) in auto mode 181s Setting up libfile-stripnondeterminism-perl (1.15.0-1build1) ... 181s Setting up libclang1-18 (1:18.1.8-20ubuntu5) ... 181s Setting up liblapack3:armhf (3.12.1-7ubuntu1) ... 181s update-alternatives: using /usr/lib/arm-linux-gnueabihf/lapack/liblapack.so.3 to provide /usr/lib/arm-linux-gnueabihf/liblapack.so.3 (liblapack.so.3-arm-linux-gnueabihf) in auto mode 181s Setting up gettext (0.23.2-1) ... 181s Setting up libgcc-15-dev:armhf (15.2.0-11ubuntu1) ... 181s Setting up gcc-15-arm-linux-gnueabihf (15.2.0-11ubuntu1) ... 181s Setting up python3.13 (3.13.11-1) ... 182s Setting up python3-pytest (9.0.2-2) ... 183s Setting up python3-all (3.14.2-1) ... 183s Setting up libobjc4:armhf (15.2.0-11ubuntu1) ... 183s Setting up intltool-debian (0.35.0+20060710.6build1) ... 183s Setting up python3-numpy (1:2.3.5+ds-3) ... 188s Setting up llvm-18-linker-tools (1:18.1.8-20ubuntu5) ... 188s Setting up dh-strip-nondeterminism (1.15.0-1build1) ... 188s Setting up cpp-15 (15.2.0-11ubuntu1) ... 188s Setting up cpp (4:15.2.0-4ubuntu1) ... 188s Setting up libc6-dev:armhf (2.42-2ubuntu4) ... 188s Setting up libllvmspirvlib18.1:armhf (18.1.19-1) ... 188s Setting up libobjc-15-dev:armhf (15.2.0-11ubuntu1) ... 188s Setting up libclang-cpp18 (1:18.1.8-20ubuntu5) ... 188s Setting up gcc-arm-linux-gnueabihf (4:15.2.0-4ubuntu1) ... 188s Setting up po-debconf (1.0.22) ... 188s Setting up gcc-15 (15.2.0-11ubuntu1) ... 188s Setting up libstdc++-15-dev:armhf (15.2.0-11ubuntu1) ... 188s Setting up libexpat1-dev:armhf (2.7.3-1) ... 188s Setting up python3-pytools (2025.1.2-1) ... 188s Setting up llvm-spirv-18 (18.1.19-1) ... 188s Setting up zlib1g-dev:armhf (1:1.3.dfsg+really1.3.1-1ubuntu2) ... 188s Setting up libpython3.14-dev:armhf (3.14.2-1) ... 188s Setting up libpython3-dev:armhf (3.14.2-1) ... 188s Setting up python3.14-dev (3.14.2-1) ... 188s Setting up libtool (2.5.4-9) ... 188s Setting up python3-compyle (0.8.1-11) ... 189s Setting up g++-15-arm-linux-gnueabihf (15.2.0-11ubuntu1) ... 189s Setting up clang-18 (1:18.1.8-20ubuntu5) ... 189s Setting up gcc (4:15.2.0-4ubuntu1) ... 189s Setting up dh-autoreconf (21) ... 189s Setting up libpython3.13-dev:armhf (3.13.11-1) ... 189s Setting up python3-dev (3.14.2-1) ... 189s Setting up g++-15 (15.2.0-11ubuntu1) ... 189s Setting up g++-arm-linux-gnueabihf (4:15.2.0-4ubuntu1) ... 189s Setting up libpocl2t64:armhf (6.0-7) ... 189s Setting up python3.13-dev (3.13.11-1) ... 189s Setting up debhelper (13.28ubuntu1) ... 189s Setting up pocl-opencl-icd:armhf (6.0-7) ... 189s Setting up libpython3-all-dev:armhf (3.14.2-1) ... 189s Setting up g++ (4:15.2.0-4ubuntu1) ... 189s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 189s Setting up build-essential (12.12ubuntu2) ... 189s Setting up python3-pyopencl (2025.1-2) ... 189s Setting up python3-all-dev (3.14.2-1) ... 189s Setting up pybuild-plugin-autopkgtest (7.20251231) ... 189s Processing triggers for man-db (2.13.1-1) ... 190s Processing triggers for install-info (7.2-5) ... 191s Processing triggers for libc-bin (2.42-2ubuntu4) ... 191s Processing triggers for systemd (259-1ubuntu2) ... 199s autopkgtest [16:50:31]: test pybuild-autopkgtest: pybuild-autopkgtest 199s autopkgtest [16:50:31]: test pybuild-autopkgtest: [----------------------- 202s pybuild-autopkgtest 202s I: pybuild base:384: cd /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/build; python3.13 -m pytest -k "not test_that_multiple_compiles_do_not_occur_for_same_source and not test_const_as_call_arg and not test_const_in_return" --ignore=/tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_cuda.py --ignore=/tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_parallel.py /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests 204s ============================= test session starts ============================== 204s platform linux -- Python 3.13.11, pytest-9.0.2, pluggy-1.6.0 204s rootdir: /tmp/autopkgtest.78Q9Ou/build.AEB/src 204s configfile: pyproject.toml 204s plugins: typeguard-4.4.4 204s collected 327 items / 3 deselected / 324 selected 204s 226s ../../build.AEB/src/compyle/tests/test_array.py ..s..s..s..s..s..s..s..s [ 7%] 359s ..s..s..s..s..s..s...s.sx..s..s..s..s..s..s..s..s..s..s..s..s..s..s..s.. [ 29%] 485s s..s..s..s..s..s..s..s..s..s..ss..s......sss......sss......sss..s [ 49%] 485s ../../build.AEB/src/compyle/tests/test_ast_utils.py ....... [ 51%] 485s ../../build.AEB/src/compyle/tests/test_capture_stream.py ..... [ 53%] 485s ../../build.AEB/src/compyle/tests/test_config.py ............ [ 57%] 485s ../../build.AEB/src/compyle/tests/test_cython_generator.py ............. [ 61%] 485s .... [ 62%] 488s ../../build.AEB/src/compyle/tests/test_ext_module.py ........ [ 64%] 488s ../../build.AEB/src/compyle/tests/test_gpu_struct.py s [ 65%] 488s ../../build.AEB/src/compyle/tests/test_jit.py .......................... [ 73%] 488s [ 73%] 508s ../../build.AEB/src/compyle/tests/test_low_level.py s.s..... [ 75%] 510s ../../build.AEB/src/compyle/tests/test_profile.py ..... [ 77%] 519s ../../build.AEB/src/compyle/tests/test_template.py ..... [ 78%] 519s ../../build.AEB/src/compyle/tests/test_translator.py ................... [ 84%] 519s .................................... [ 95%] 519s ../../build.AEB/src/compyle/tests/test_transpiler.py ... [ 96%] 519s ../../build.AEB/src/compyle/tests/test_types.py ....... [ 98%] 519s ../../build.AEB/src/compyle/tests/test_utils.py .... [100%] 519s 519s =============================== warnings summary =============================== 519s compyle/tests/test_array.py: 8 warnings 519s compyle/tests/test_jit.py: 5 warnings 519s compyle/tests/test_translator.py: 93 warnings 519s /usr/lib/python3.13/ast.py:422: DeprecationWarning: visit_Num is deprecated; add visit_Constant 519s return visitor(node) 519s 519s compyle/tests/test_array.py: 4 warnings 519s compyle/tests/test_translator.py: 93 warnings 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/translator.py:682: DeprecationWarning: Attribute n is deprecated and will be removed in Python 3.14; use value instead 519s return str(node.n) 519s 519s compyle/tests/test_array.py: 31 warnings 519s /usr/lib/python3/dist-packages/pyopencl/__init__.py:519: CompilerWarning: Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more. 519s lambda: self._prg.build(options_bytes, devices), 519s 519s compyle/tests/test_array.py: 5 warnings 519s compyle/tests/test_template.py: 5 warnings 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/template.py:52: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 519s template = body[-1].value.s 519s 519s compyle/tests/test_array.py::test_align_multiple[opencl] 519s compyle/tests/test_array.py::test_align_multiple[opencl] 519s compyle/tests/test_translator.py::test_simple_function_with_return 519s compyle/tests/test_translator.py::test_calling_method_of_known_type_in_method 519s compyle/tests/test_translator.py::test_wrapping_class 519s compyle/tests/test_translator.py::test_wrapping_class 519s compyle/tests/test_translator.py::test_wrapping_class_with_ignore_methods 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/translator.py:228: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead 519s isinstance(body[0].value, ast.Str): 519s 519s compyle/tests/test_array.py::test_radix_sort_by_keys 519s compyle/tests/test_array.py::test_radix_sort_by_keys 519s compyle/tests/test_array.py::test_radix_sort_by_keys 519s compyle/tests/test_array.py::test_radix_sort_by_keys 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_declare_multiple_variables 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_declare_multiple_variables 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_no_return_value 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_no_return_value 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_undeclared_variable_declaration_in_for 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:299: DeprecationWarning: Attribute n is deprecated and will be removed in Python 3.14; use value instead 519s return get_ctype_from_arg(node.n) 519s 519s compyle/tests/test_array.py::test_diff[int32-opencl] 519s compyle/tests/test_array.py::test_diff[float32-opencl] 519s compyle/tests/test_array.py::test_diff[float64-opencl] 519s compyle/tests/test_array.py::test_trapz[opencl] 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_declare_multiple_variables 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_variable_as_call_arg 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_variable_as_call_arg_nonjit 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:205: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead 519s if not isinstance(node.args[0], ast.Str): 519s 519s compyle/tests/test_array.py::test_diff[int32-opencl] 519s compyle/tests/test_array.py::test_diff[float32-opencl] 519s compyle/tests/test_array.py::test_diff[float64-opencl] 519s compyle/tests/test_array.py::test_trapz[opencl] 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_declare_multiple_variables 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_variable_as_call_arg 519s compyle/tests/test_jit.py::TestAnnotationHelper::test_variable_as_call_arg_nonjit 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:207: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 519s type_str = node.args[0].s 519s 519s compyle/tests/test_array.py: 3 warnings 519s compyle/tests/test_low_level.py: 2 warnings 519s compyle/tests/test_translator.py: 14 warnings 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/translator.py:344: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead 519s if not isinstance(right.args[0], ast.Str): 519s 519s compyle/tests/test_array.py: 3 warnings 519s compyle/tests/test_low_level.py: 2 warnings 519s compyle/tests/test_translator.py: 14 warnings 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/translator.py:346: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 519s type = right.args[0].s 519s 519s compyle/tests/test_array.py::test_trapz[cython] 519s compyle/tests/test_array.py::test_trapz[opencl] 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_array.py:452: DeprecationWarning: `trapz` is deprecated. Use `trapezoid` instead, or one of the numerical integration functions in `scipy.integrate`. 519s assert(array.trapz(y) == np.trapz(yn)) 519s 519s compyle/tests/test_array.py::test_trapz[cython] 519s compyle/tests/test_array.py::test_trapz[opencl] 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_array.py:453: DeprecationWarning: `trapz` is deprecated. Use `trapezoid` instead, or one of the numerical integration functions in `scipy.integrate`. 519s assert(array.trapz(y, x,) == np.trapz(yn, xn)) 519s 519s compyle/tests/test_array.py::test_trapz[cython] 519s compyle/tests/test_array.py::test_trapz[opencl] 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_array.py:454: DeprecationWarning: `trapz` is deprecated. Use `trapezoid` instead, or one of the numerical integration functions in `scipy.integrate`. 519s assert(array.trapz(y, dx=3) == np.trapz(yn, dx=3)) 519s 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_function_with_annotation 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_declare 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_declare 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_matrix 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_matrix 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_python3_annotation 519s compyle/tests/test_low_level.py::TestCython::test_cython_code_with_return_and_nested_call 519s compyle/tests/test_low_level.py::TestCython::test_cython_code_with_return_and_nested_call 519s compyle/tests/test_low_level.py::TestCython::test_cython_with_externs 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/cython_generator.py:129: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead 519s if not isinstance(arg0, ast.Str): 519s 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_function_with_annotation 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_declare 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_declare 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_matrix 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_matrix 519s compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_python3_annotation 519s compyle/tests/test_low_level.py::TestCython::test_cython_code_with_return_and_nested_call 519s compyle/tests/test_low_level.py::TestCython::test_cython_code_with_return_and_nested_call 519s compyle/tests/test_low_level.py::TestCython::test_cython_with_externs 519s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/cython_generator.py:133: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 519s return get_declare_info(arg0.s) 519s 519s compyle/tests/test_ext_module.py::TestExtModule::test_that_multiple_writes_do_not_occur_for_same_source 519s compyle/tests/test_ext_module.py::TestExtModule::test_that_multiple_writes_do_not_occur_for_same_source 519s compyle/tests/test_ext_module.py::TestExtModule::test_that_multiple_writes_do_not_occur_for_same_source 519s compyle/tests/test_ext_module.py::TestExtModule::test_that_multiple_writes_do_not_occur_for_same_source 520s compyle/tests/test_ext_module.py::TestExtModule::test_that_multiple_writes_do_not_occur_for_same_source 520s /usr/lib/python3.13/multiprocessing/popen_fork.py:67: DeprecationWarning: This process (pid=2093) is multi-threaded, use of fork() may lead to deadlocks in the child. 520s self.pid = os.fork() 520s 520s compyle/tests/test_jit.py::TestAnnotationHelper::test_cast_return_type 520s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:211: DeprecationWarning: ast.Str is deprecated and will be removed in Python 3.14; use ast.Constant instead 520s if not isinstance(node.args[1], ast.Str): 520s 520s compyle/tests/test_jit.py::TestAnnotationHelper::test_cast_return_type 520s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:213: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 520s return node.args[1].s 520s 520s compyle/tests/test_jit.py::TestAnnotationHelper::test_non_jit_call_as_call_arg 520s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:202: UserWarning: 520s In code in line 5: 520s 520s return g(sin(a)) 520s ^ 520s 520s 520s Function called is not marked by the annotate decorator. Argument 520s type defaulting to 'double'. If the type is not 'double', store 520s the value in a variable of appropriate type and use the variable 520s 520s warnings.warn(msg) 520s 520s compyle/tests/test_jit.py::TestAnnotationHelper::test_non_jit_call_in_return 520s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:202: UserWarning: 520s In code in line 5: 520s 520s return sin(a) 520s ^ 520s 520s 520s Function called is not marked by the annotate decorator. Argument 520s type defaulting to 'double'. If the type is not 'double', store 520s the value in a variable of appropriate type and use the variable 520s 520s warnings.warn(msg) 520s 520s compyle/tests/test_template.py::test_simple_template 520s compyle/tests/test_template.py::test_simple_template 520s compyle/tests/test_template.py::test_that_source_code_is_available 520s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/template.py:53: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 520s docstring = body[0].value.s if len(body) == 2 else '' 520s 520s compyle/tests/test_translator.py::test_calling_printf_with_string 520s compyle/tests/test_translator.py::test_calling_printf_with_string 520s /usr/lib/python3.13/ast.py:422: DeprecationWarning: visit_Str is deprecated; add visit_Constant 520s return visitor(node) 520s 520s compyle/tests/test_translator.py::test_calling_printf_with_string 520s compyle/tests/test_translator.py::test_calling_printf_with_string 520s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/translator.py:700: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 520s return r'"%s"' % node.s 520s 520s compyle/tests/test_translator.py::test_bool_true_false_and_none 520s compyle/tests/test_translator.py::test_bool_true_false_and_none 520s compyle/tests/test_translator.py::test_bool_true_false_and_none 520s compyle/tests/test_translator.py::test_bool_true_false_and_none 520s /usr/lib/python3.13/ast.py:422: DeprecationWarning: visit_NameConstant is deprecated; add visit_Constant 520s return visitor(node) 520s 520s compyle/tests/test_translator.py::test_cast_works 520s compyle/tests/test_translator.py::test_cast_works 520s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/translator.py:388: DeprecationWarning: Attribute s is deprecated and will be removed in Python 3.14; use value instead 520s return '(%s) (%s)' % (node.args[1].s, self.visit(node.args[0])) 520s 520s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 520s = 266 passed, 57 skipped, 3 deselected, 1 xfailed, 358 warnings in 316.19s (0:05:16) = 520s I: pybuild base:384: cd /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/build; python3.14 -m pytest -k "not test_that_multiple_compiles_do_not_occur_for_same_source and not test_const_as_call_arg and not test_const_in_return" --ignore=/tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_cuda.py --ignore=/tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_parallel.py /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests 521s ============================= test session starts ============================== 521s platform linux -- Python 3.14.2, pytest-9.0.2, pluggy-1.6.0 521s rootdir: /tmp/autopkgtest.78Q9Ou/build.AEB/src 521s configfile: pyproject.toml 521s plugins: typeguard-4.4.4 521s collected 327 items / 3 deselected / 324 selected 521s 540s ../../build.AEB/src/compyle/tests/test_array.py ..s..s..s..s..s..s..s.Fs [ 7%] 625s ..sFFs..s..s..sF.sFF.s.sx..s..s..s.Fs.Fs.Fs.Fs..s..s..s..s..s..s..s..s.. [ 29%] 749s s..s..s..s..s..s..s..s..s..s..ss..s......sss......sss...FFFsss..s [ 49%] 749s ../../build.AEB/src/compyle/tests/test_ast_utils.py ....... [ 51%] 749s ../../build.AEB/src/compyle/tests/test_capture_stream.py ..... [ 53%] 749s ../../build.AEB/src/compyle/tests/test_config.py ............ [ 57%] 750s ../../build.AEB/src/compyle/tests/test_cython_generator.py ......F.F.F.F [ 61%] 750s .... [ 62%] 753s ../../build.AEB/src/compyle/tests/test_ext_module.py ........ [ 64%] 753s ../../build.AEB/src/compyle/tests/test_gpu_struct.py s [ 65%] 754s ../../build.AEB/src/compyle/tests/test_jit.py ........F.F............FF. [ 73%] 754s [ 73%] 756s ../../build.AEB/src/compyle/tests/test_low_level.py sFsFFF.. [ 75%] 756s ../../build.AEB/src/compyle/tests/test_profile.py ..... [ 77%] 757s ../../build.AEB/src/compyle/tests/test_template.py FFFF. [ 78%] 757s ../../build.AEB/src/compyle/tests/test_translator.py FFFFFFFF.FFF.F...FF [ 84%] 759s FF..FFFFFFFFFF...FFFFF...FF...FF...F [ 95%] 759s ../../build.AEB/src/compyle/tests/test_transpiler.py ... [ 96%] 759s ../../build.AEB/src/compyle/tests/test_types.py ....... [ 98%] 759s ../../build.AEB/src/compyle/tests/test_utils.py .... [100%] 759s 759s =================================== FAILURES =================================== 759s _____________________________ test_remove[opencl] ______________________________ 759s 759s backend = 'opencl' 759s 759s @check_all_backends 759s def test_remove(backend): 759s check_import(backend) 759s 759s # Given 759s dev_array = Array(np.int32, backend=backend) 759s orig_array = array.arange(0, 16, 1, dtype=np.int32, 759s backend=backend) 759s dev_array.set_data(orig_array) 759s indices = array.arange(0, 8, 1, dtype=np.int32, backend=backend) 759s 759s # When 759s > dev_array.remove(indices) 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:157: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:1154: in remove 759s fill_if_remove_knl(indices, if_remove) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:29: in wrapper 759s setattr(f, 'cached_kernel', {key_val: method(*args)}) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:347: in _generate_kernel 759s return self._generate(declarations=declarations) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/parallel.py:474: in _generate 759s all_source = knl.get_kernel(False)[0].program.source 759s ^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:758: in wrapper 759s result = function(obj, *args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:244: in get_kernel 759s knl, arg_descrs = get_elwise_kernel_and_types( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:169: in get_elwise_kernel_and_types 759s prg = get_elwise_program( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:116: in get_elwise_program 759s return cl.Program(context, source).build(options) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:518: in build 759s self._build_and_catch_errors( 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s build_func = . at 0xd14f12e8> 759s options_bytes = b'-I /usr/lib/python3/dist-packages/pyopencl/cl', source = None 759s 759s def _build_and_catch_errors(self, build_func, options_bytes, source=None): 759s try: 759s return build_func() 759s except RuntimeError as e: 759s msg = str(e) 759s if options_bytes: 759s msg = msg + "\n(options: %s)" % options_bytes.decode("utf-8") 759s 759s if source is not None: 759s from tempfile import NamedTemporaryFile 759s srcfile = NamedTemporaryFile(mode="wt", delete=False, suffix=".cl") 759s try: 759s srcfile.write(source) 759s finally: 759s srcfile.close() 759s 759s msg = msg + "\n(source saved as %s)" % srcfile.name 759s 759s code = e.code 759s routine = e.routine 759s 759s err = RuntimeError( 759s _cl._ErrorRecord( 759s msg=msg, 759s code=code, 759s routine=routine)) 759s 759s # Python 3.2 outputs the whole list of currently active exceptions 759s # This serves to remove one (redundant) level from that nesting. 759s > raise err 759s E pyopencl._cl.RuntimeError: clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE 759s E 759s E Build on : 759s E 759s E error: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_omPTXS.cl:74:29: use of undeclared identifier 'None' 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_omPTXS.cl:62:9: 'max' macro redefined 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_omPTXS.cl:62:9: 'max' macro redefined 759s E Device cpu-arm1156t2f-s-0xd0c failed to build the program 759s E 759s E (options: -I /usr/lib/python3/dist-packages/pyopencl/cl) 759s 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:574: RuntimeError 759s ----------------------------- Captured stderr call ----------------------------- 759s 1 warning generated. 759s 2 warnings and 1 error generated. 759s _________________________ test_align_multiple[cython] __________________________ 759s 759s args = ([, ], ) 759s kwargs = {'backend': 'cython'}, key = ('guintp', 'gfloatp', 'cython', False) 759s 759s def wrapper(*args, **kwargs): 759s key = key_func(*args, **kwargs) 759s try: 759s > return func._memoize_dic[key] 759s ^^^^^^^^^^^^^^^^^ 759s E AttributeError: 'function' object has no attribute '_memoize_dic' 759s 759s /usr/lib/python3/dist-packages/pytools/__init__.py:684: AttributeError 759s 759s During handling of the above exception, another exception occurred: 759s 759s backend = 'cython' 759s 759s @check_all_backends 759s def test_align_multiple(backend): 759s check_import(backend) 759s 759s # Given 759s dev_array_a = Array(np.uint32, backend=backend) 759s dev_array_b = Array(np.float32, backend=backend) 759s orig_array_a = array.arange(0, 1024, 1, dtype=np.uint32, backend=backend) 759s orig_array_b = array.arange( 759s 1024, 2048, 1, dtype=np.float32, backend=backend) 759s dev_array_a.set_data(orig_array_a) 759s dev_array_b.set_data(orig_array_b) 759s 759s indices = array.arange(1023, -1, -1, dtype=np.int64, backend=backend) 759s 759s # When 759s > dev_array_a, dev_array_b = array.align([dev_array_a, dev_array_b], 759s indices) 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:196: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:825: in align 759s align_multiple_elwise = get_align_kernel(ary_list, order, backend=backend) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:687: in wrapper 759s result = func(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:806: in get_align_kernel 759s align_multiple_elwise = parallel.Elementwise(align_multiple_knl.function, 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s _________________________ test_align_multiple[opencl] __________________________ 759s 759s args = ([, ], ) 759s kwargs = {'backend': 'opencl'}, key = ('guintp', 'gfloatp', 'opencl', False) 759s 759s def wrapper(*args, **kwargs): 759s key = key_func(*args, **kwargs) 759s try: 759s > return func._memoize_dic[key] 759s ^^^^^^^^^^^^^^^^^ 759s E AttributeError: 'function' object has no attribute '_memoize_dic' 759s 759s /usr/lib/python3/dist-packages/pytools/__init__.py:684: AttributeError 759s 759s During handling of the above exception, another exception occurred: 759s 759s backend = 'opencl' 759s 759s @check_all_backends 759s def test_align_multiple(backend): 759s check_import(backend) 759s 759s # Given 759s dev_array_a = Array(np.uint32, backend=backend) 759s dev_array_b = Array(np.float32, backend=backend) 759s orig_array_a = array.arange(0, 1024, 1, dtype=np.uint32, backend=backend) 759s orig_array_b = array.arange( 759s 1024, 2048, 1, dtype=np.float32, backend=backend) 759s dev_array_a.set_data(orig_array_a) 759s dev_array_b.set_data(orig_array_b) 759s 759s indices = array.arange(1023, -1, -1, dtype=np.int64, backend=backend) 759s 759s # When 759s > dev_array_a, dev_array_b = array.align([dev_array_a, dev_array_b], 759s indices) 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:196: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:825: in align 759s align_multiple_elwise = get_align_kernel(ary_list, order, backend=backend) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:687: in wrapper 759s result = func(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:806: in get_align_kernel 759s align_multiple_elwise = parallel.Elementwise(align_multiple_knl.function, 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s __________________________ test_sort_by_keys[cython] ___________________________ 759s 759s args = ([, ], ) 759s kwargs = {'backend': 'cython'}, key = ('gintp', 'gintp', 'cython', False) 759s 759s def wrapper(*args, **kwargs): 759s key = key_func(*args, **kwargs) 759s try: 759s > return func._memoize_dic[key] 759s ^^^^^^^^^^^^^^^^^ 759s E AttributeError: 'function' object has no attribute '_memoize_dic' 759s 759s /usr/lib/python3/dist-packages/pytools/__init__.py:684: AttributeError 759s 759s During handling of the above exception, another exception occurred: 759s 759s backend = 'cython' 759s 759s @check_all_backends 759s def test_sort_by_keys(backend): 759s check_import(backend) 759s 759s # Given 759s pre_nparr1 = np.random.randint(0, 100, 16, dtype=np.int32) 759s pre_nparr2 = np.random.randint(0, 100, 16, dtype=np.int32) 759s 759s ## drop non unique values 759s nparr1, indices = np.unique(pre_nparr1, return_index=True) 759s nparr2 = pre_nparr2[indices] 759s 759s dev_array1, dev_array2 = array.wrap(nparr1, nparr2, backend=backend) 759s 759s # When 759s > out_array1, out_array2 = array.sort_by_keys([dev_array1, dev_array2]) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:271: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:626: in sort_by_keys 759s out_list = align(ary_list, order, out_list=out_list, 759s ../../build.AEB/src/compyle/array.py:825: in align 759s align_multiple_elwise = get_align_kernel(ary_list, order, backend=backend) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:687: in wrapper 759s result = func(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:806: in get_align_kernel 759s align_multiple_elwise = parallel.Elementwise(align_multiple_knl.function, 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s ___________________________ test_radix_sort_by_keys ____________________________ 759s 759s def test_radix_sort_by_keys(): 759s backend = 'cython' 759s for use_openmp in [True, False]: 759s get_config().use_openmp = use_openmp 759s # Given 759s pre_nparr1 = np.random.randint(0, 100, 16, dtype=np.int32) 759s pre_nparr2 = np.random.randint(0, 100, 16, dtype=np.int32) 759s 759s ## drop non unique values 759s nparr1, indices = np.unique(pre_nparr1, return_index=True) 759s nparr2 = pre_nparr2[indices] 759s 759s dev_array1, dev_array2 = array.wrap(nparr1, nparr2, backend=backend) 759s 759s # When 759s > out_array1, out_array2 = array.sort_by_keys([dev_array1, dev_array2], 759s use_radix_sort=True) 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:296: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:621: in sort_by_keys 759s out_list, order = radix_sort(ary_list, out_list=out_list, 759s ../../build.AEB/src/compyle/sort.py:66: in radix_sort 759s sort_bit_knl = Scan(input_sort_bit, output_sort_bit.function, 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s ____________________ test_sort_by_keys_with_output[cython] _____________________ 759s 759s args = ([, ], ) 759s kwargs = {'backend': 'cython'}, key = ('gintp', 'gintp', 'cython', True) 759s 759s def wrapper(*args, **kwargs): 759s key = key_func(*args, **kwargs) 759s try: 759s > return func._memoize_dic[key] 759s ^^^^^^^^^^^^^^^^^ 759s E AttributeError: 'function' object has no attribute '_memoize_dic' 759s 759s /usr/lib/python3/dist-packages/pytools/__init__.py:684: AttributeError 759s 759s During handling of the above exception, another exception occurred: 759s 759s backend = 'cython' 759s 759s @pytest.mark.parametrize( 759s 'backend', ['cython', 'opencl', 759s pytest.param('cuda', marks=pytest.mark.xfail)]) 759s def test_sort_by_keys_with_output(backend): 759s check_import(backend) 759s 759s # Given 759s pre_nparr1 = np.random.randint(0, 100, 16, dtype=np.int32) 759s pre_nparr2 = np.random.randint(0, 100, 16, dtype=np.int32) 759s 759s ## drop non unique values 759s nparr1, indices = np.unique(pre_nparr1, return_index=True) 759s nparr2 = pre_nparr2[indices] 759s 759s dev_array1, dev_array2 = array.wrap(nparr1, nparr2, backend=backend) 759s out_arrays = [ 759s array.zeros_like(dev_array1), 759s array.zeros_like(dev_array2)] 759s 759s # When 759s > array.sort_by_keys([dev_array1, dev_array2], 759s out_list=out_arrays, use_radix_sort=False) 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:330: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:626: in sort_by_keys 759s out_list = align(ary_list, order, out_list=out_list, 759s ../../build.AEB/src/compyle/array.py:825: in align 759s align_multiple_elwise = get_align_kernel(ary_list, order, backend=backend) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:687: in wrapper 759s result = func(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:806: in get_align_kernel 759s align_multiple_elwise = parallel.Elementwise(align_multiple_knl.function, 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s ___________________________ test_diff[int32-opencl] ____________________________ 759s 759s backend = 'opencl', dtype = 759s 759s @check_all_backends 759s @check_all_dtypes 759s def test_diff(backend, dtype): 759s check_import(backend) 759s if dtype == np.float64: 759s get_config().use_double = True 759s dev_array = array.ones(1, dtype=dtype, backend=backend) 759s with pytest.raises(ValueError): 759s y = array.diff(dev_array, 1) 759s y = array.diff(dev_array, 0) 759s assert(y[0] == dev_array[0]) 759s 759s dev_array = array.ones(2, dtype=dtype, backend=backend) 759s with pytest.raises(ValueError): 759s y = array.diff(dev_array, -1) 759s > y = array.diff(dev_array, 1) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:434: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:449: in diff 759s e(y, a, binom_coeff, len(binom_coeff)) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:29: in wrapper 759s setattr(f, 'cached_kernel', {key_val: method(*args)}) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:345: in _generate_kernel 759s declarations = helper.annotate() 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:277: in visit_Assign 759s right_type = self.visit(right) 759s ^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:242: in visit_Call 759s return self.visit_declare(node) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='declare', ctx=Load()), args=[Constant(value='int', kind=None), Constant(value=1, kind=None)], keywords=[]) 759s 759s def visit_declare(self, node): 759s > if not isinstance(node.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:205: AttributeError 759s __________________________ test_diff[float32-opencl] ___________________________ 759s 759s backend = 'opencl', dtype = 759s 759s @check_all_backends 759s @check_all_dtypes 759s def test_diff(backend, dtype): 759s check_import(backend) 759s if dtype == np.float64: 759s get_config().use_double = True 759s dev_array = array.ones(1, dtype=dtype, backend=backend) 759s with pytest.raises(ValueError): 759s y = array.diff(dev_array, 1) 759s y = array.diff(dev_array, 0) 759s assert(y[0] == dev_array[0]) 759s 759s dev_array = array.ones(2, dtype=dtype, backend=backend) 759s with pytest.raises(ValueError): 759s y = array.diff(dev_array, -1) 759s > y = array.diff(dev_array, 1) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:434: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:449: in diff 759s e(y, a, binom_coeff, len(binom_coeff)) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:29: in wrapper 759s setattr(f, 'cached_kernel', {key_val: method(*args)}) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:345: in _generate_kernel 759s declarations = helper.annotate() 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:277: in visit_Assign 759s right_type = self.visit(right) 759s ^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:242: in visit_Call 759s return self.visit_declare(node) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='declare', ctx=Load()), args=[Constant(value='int', kind=None), Constant(value=1, kind=None)], keywords=[]) 759s 759s def visit_declare(self, node): 759s > if not isinstance(node.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:205: AttributeError 759s __________________________ test_diff[float64-opencl] ___________________________ 759s 759s backend = 'opencl', dtype = 759s 759s @check_all_backends 759s @check_all_dtypes 759s def test_diff(backend, dtype): 759s check_import(backend) 759s if dtype == np.float64: 759s get_config().use_double = True 759s dev_array = array.ones(1, dtype=dtype, backend=backend) 759s with pytest.raises(ValueError): 759s y = array.diff(dev_array, 1) 759s y = array.diff(dev_array, 0) 759s assert(y[0] == dev_array[0]) 759s 759s dev_array = array.ones(2, dtype=dtype, backend=backend) 759s with pytest.raises(ValueError): 759s y = array.diff(dev_array, -1) 759s > y = array.diff(dev_array, 1) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:434: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:449: in diff 759s e(y, a, binom_coeff, len(binom_coeff)) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:29: in wrapper 759s setattr(f, 'cached_kernel', {key_val: method(*args)}) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:345: in _generate_kernel 759s declarations = helper.annotate() 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:277: in visit_Assign 759s right_type = self.visit(right) 759s ^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:242: in visit_Call 759s return self.visit_declare(node) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='declare', ctx=Load()), args=[Constant(value='int', kind=None), Constant(value=1, kind=None)], keywords=[]) 759s 759s def visit_declare(self, node): 759s > if not isinstance(node.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:205: AttributeError 759s ______________________________ test_trapz[opencl] ______________________________ 759s 759s backend = 'opencl' 759s 759s @check_all_backends 759s def test_trapz(backend): 759s check_import(backend) 759s x = array.linspace(0, 5, 6, dtype=np.float32, backend=backend) 759s y = array.linspace(0, 5, 6, dtype=np.float32, backend=backend) 759s xn = np.linspace(0, 5, 6, dtype=np.float32) 759s yn = np.linspace(0, 5, 6, dtype=np.float32) 759s assert(array.trapz(y) == np.trapz(yn)) 759s > assert(array.trapz(y, x,) == np.trapz(yn, xn)) 759s ^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:453: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:516: in trapz 759s d = diff(x, 1, backend=backend) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/array.py:449: in diff 759s e(y, a, binom_coeff, len(binom_coeff)) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:29: in wrapper 759s setattr(f, 'cached_kernel', {key_val: method(*args)}) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:345: in _generate_kernel 759s declarations = helper.annotate() 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:277: in visit_Assign 759s right_type = self.visit(right) 759s ^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:242: in visit_Call 759s return self.visit_declare(node) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='declare', ctx=Load()), args=[Constant(value='int', kind=None), Constant(value=1, kind=None)], keywords=[]) 759s 759s def visit_declare(self, node): 759s > if not isinstance(node.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:205: AttributeError 759s _________________________ test_take_bool[opencl-int32] _________________________ 759s 759s dtype = , backend = 'opencl' 759s 759s @check_all_dtypes 759s @check_all_backends 759s def test_take_bool(dtype, backend): 759s check_import(backend) 759s if dtype == np.float64: 759s get_config().use_double = True 759s 759s # Given 759s x = array.arange(0, 10, 1, backend=backend, dtype=dtype) 759s cond = x > 5 759s 759s # When 759s > out = array.take_bool(x, cond) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:569: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:771: in take_bool 759s e(condition, ary, cumsum_ar, out_ar) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:31: in wrapper 759s f.cached_kernel[key_val] = method(*args) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:347: in _generate_kernel 759s return self._generate(declarations=declarations) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/parallel.py:474: in _generate 759s all_source = knl.get_kernel(False)[0].program.source 759s ^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:758: in wrapper 759s result = function(obj, *args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:244: in get_kernel 759s knl, arg_descrs = get_elwise_kernel_and_types( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:169: in get_elwise_kernel_and_types 759s prg = get_elwise_program( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:116: in get_elwise_program 759s return cl.Program(context, source).build(options) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:518: in build 759s self._build_and_catch_errors( 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s build_func = . at 0xc0d80550> 759s options_bytes = b'-I /usr/lib/python3/dist-packages/pyopencl/cl', source = None 759s 759s def _build_and_catch_errors(self, build_func, options_bytes, source=None): 759s try: 759s return build_func() 759s except RuntimeError as e: 759s msg = str(e) 759s if options_bytes: 759s msg = msg + "\n(options: %s)" % options_bytes.decode("utf-8") 759s 759s if source is not None: 759s from tempfile import NamedTemporaryFile 759s srcfile = NamedTemporaryFile(mode="wt", delete=False, suffix=".cl") 759s try: 759s srcfile.write(source) 759s finally: 759s srcfile.close() 759s 759s msg = msg + "\n(source saved as %s)" % srcfile.name 759s 759s code = e.code 759s routine = e.routine 759s 759s err = RuntimeError( 759s _cl._ErrorRecord( 759s msg=msg, 759s code=code, 759s routine=routine)) 759s 759s # Python 3.2 outputs the whole list of currently active exceptions 759s # This serves to remove one (redundant) level from that nesting. 759s > raise err 759s E pyopencl._cl.RuntimeError: clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE 759s E 759s E Build on : 759s E 759s E error: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_27Q59L.cl:75:33: use of undeclared identifier 'None' 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_27Q59L.cl:62:9: 'max' macro redefined 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_27Q59L.cl:62:9: 'max' macro redefined 759s E Device cpu-arm1156t2f-s-0xd0c failed to build the program 759s E 759s E (options: -I /usr/lib/python3/dist-packages/pyopencl/cl) 759s 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:574: RuntimeError 759s ----------------------------- Captured stderr call ----------------------------- 759s 1 warning generated. 759s 1 warning generated. 759s 1 warning generated. 759s 1 warning generated. 759s 1 warning generated. 759s 2 warnings and 1 error generated. 759s ------------------------------ Captured log call ------------------------------- 759s DEBUG pyopencl.scan:scan.py:1198 cache miss for generated scan kernel 'scan' 759s ________________________ test_take_bool[opencl-float32] ________________________ 759s 759s dtype = , backend = 'opencl' 759s 759s @check_all_dtypes 759s @check_all_backends 759s def test_take_bool(dtype, backend): 759s check_import(backend) 759s if dtype == np.float64: 759s get_config().use_double = True 759s 759s # Given 759s x = array.arange(0, 10, 1, backend=backend, dtype=dtype) 759s cond = x > 5 759s 759s # When 759s > out = array.take_bool(x, cond) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:569: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:771: in take_bool 759s e(condition, ary, cumsum_ar, out_ar) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:31: in wrapper 759s f.cached_kernel[key_val] = method(*args) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:347: in _generate_kernel 759s return self._generate(declarations=declarations) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/parallel.py:474: in _generate 759s all_source = knl.get_kernel(False)[0].program.source 759s ^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:758: in wrapper 759s result = function(obj, *args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:244: in get_kernel 759s knl, arg_descrs = get_elwise_kernel_and_types( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:169: in get_elwise_kernel_and_types 759s prg = get_elwise_program( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:116: in get_elwise_program 759s return cl.Program(context, source).build(options) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:518: in build 759s self._build_and_catch_errors( 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s build_func = . at 0xd1fa9c30> 759s options_bytes = b'-I /usr/lib/python3/dist-packages/pyopencl/cl', source = None 759s 759s def _build_and_catch_errors(self, build_func, options_bytes, source=None): 759s try: 759s return build_func() 759s except RuntimeError as e: 759s msg = str(e) 759s if options_bytes: 759s msg = msg + "\n(options: %s)" % options_bytes.decode("utf-8") 759s 759s if source is not None: 759s from tempfile import NamedTemporaryFile 759s srcfile = NamedTemporaryFile(mode="wt", delete=False, suffix=".cl") 759s try: 759s srcfile.write(source) 759s finally: 759s srcfile.close() 759s 759s msg = msg + "\n(source saved as %s)" % srcfile.name 759s 759s code = e.code 759s routine = e.routine 759s 759s err = RuntimeError( 759s _cl._ErrorRecord( 759s msg=msg, 759s code=code, 759s routine=routine)) 759s 759s # Python 3.2 outputs the whole list of currently active exceptions 759s # This serves to remove one (redundant) level from that nesting. 759s > raise err 759s E pyopencl._cl.RuntimeError: clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE 759s E 759s E Build on : 759s E 759s E error: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_RLtvx9.cl:76:33: use of undeclared identifier 'None' 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_RLtvx9.cl:62:9: 'max' macro redefined 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_RLtvx9.cl:62:9: 'max' macro redefined 759s E Device cpu-arm1156t2f-s-0xd0c failed to build the program 759s E 759s E (options: -I /usr/lib/python3/dist-packages/pyopencl/cl) 759s 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:574: RuntimeError 759s ----------------------------- Captured stderr call ----------------------------- 759s 1 warning generated. 759s 2 warnings and 1 error generated. 759s ________________________ test_take_bool[opencl-float64] ________________________ 759s 759s dtype = , backend = 'opencl' 759s 759s @check_all_dtypes 759s @check_all_backends 759s def test_take_bool(dtype, backend): 759s check_import(backend) 759s if dtype == np.float64: 759s get_config().use_double = True 759s 759s # Given 759s x = array.arange(0, 10, 1, backend=backend, dtype=dtype) 759s cond = x > 5 759s 759s # When 759s > out = array.take_bool(x, cond) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_array.py:569: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/array.py:771: in take_bool 759s e(condition, ary, cumsum_ar, out_ar) 759s ../../build.AEB/src/compyle/parallel.py:573: in __call__ 759s self.elementwise(*args, **kwargs) 759s ../../build.AEB/src/compyle/profile.py:72: in wrapper 759s return method(*args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:359: in __call__ 759s c_func = self._generate_kernel(*args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:31: in wrapper 759s f.cached_kernel[key_val] = method(*args) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:347: in _generate_kernel 759s return self._generate(declarations=declarations) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/parallel.py:474: in _generate 759s all_source = knl.get_kernel(False)[0].program.source 759s ^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pytools/__init__.py:758: in wrapper 759s result = function(obj, *args, **kwargs) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:244: in get_kernel 759s knl, arg_descrs = get_elwise_kernel_and_types( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:169: in get_elwise_kernel_and_types 759s prg = get_elwise_program( 759s /usr/lib/python3/dist-packages/pyopencl/elementwise.py:116: in get_elwise_program 759s return cl.Program(context, source).build(options) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:518: in build 759s self._build_and_catch_errors( 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s build_func = . at 0xd2036918> 759s options_bytes = b'-I /usr/lib/python3/dist-packages/pyopencl/cl', source = None 759s 759s def _build_and_catch_errors(self, build_func, options_bytes, source=None): 759s try: 759s return build_func() 759s except RuntimeError as e: 759s msg = str(e) 759s if options_bytes: 759s msg = msg + "\n(options: %s)" % options_bytes.decode("utf-8") 759s 759s if source is not None: 759s from tempfile import NamedTemporaryFile 759s srcfile = NamedTemporaryFile(mode="wt", delete=False, suffix=".cl") 759s try: 759s srcfile.write(source) 759s finally: 759s srcfile.close() 759s 759s msg = msg + "\n(source saved as %s)" % srcfile.name 759s 759s code = e.code 759s routine = e.routine 759s 759s err = RuntimeError( 759s _cl._ErrorRecord( 759s msg=msg, 759s code=code, 759s routine=routine)) 759s 759s # Python 3.2 outputs the whole list of currently active exceptions 759s # This serves to remove one (redundant) level from that nesting. 759s > raise err 759s E pyopencl._cl.RuntimeError: clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE 759s E 759s E Build on : 759s E 759s E error: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_hShp8O.cl:82:33: use of undeclared identifier 'None' 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_hShp8O.cl:68:9: 'max' macro redefined 759s E warning: /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/.cache/pocl/kcache/tempfile_hShp8O.cl:68:9: 'max' macro redefined 759s E Device cpu-arm1156t2f-s-0xd0c failed to build the program 759s E 759s E (options: -I /usr/lib/python3/dist-packages/pyopencl/cl) 759s 759s /usr/lib/python3/dist-packages/pyopencl/__init__.py:574: RuntimeError 759s ----------------------------- Captured stderr call ----------------------------- 759s 1 warning generated. 759s 2 warnings and 1 error generated. 759s ____________ TestCythonCodeGenerator.test_function_with_annotation _____________ 759s 759s self = 759s 759s def test_function_with_annotation(self): 759s # Given 759s cg = CythonGenerator() 759s # When 759s > cg.parse(annotated_f) 759s 759s ../../build.AEB/src/compyle/tests/test_cython_generator.py:242: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/cython_generator.py:208: in parse 759s self._parse_function(obj, declarations=declarations, 759s ../../build.AEB/src/compyle/cython_generator.py:505: in _parse_function 759s c_code, py_code = self._get_method_wrapper(obj, indent=' ' * 4, 759s ../../build.AEB/src/compyle/cython_generator.py:398: in _get_method_wrapper 759s c_body = self._get_method_body(meth, lines, indent=indent, 759s ../../build.AEB/src/compyle/cython_generator.py:368: in _get_method_body 759s src = [self._process_body_line(line, is_serial=is_serial) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:535: in _process_body_line 759s defn = self._handle_declare_statement(name, declare) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:462: in _handle_declare_statement 759s kind, _address_space, ctype, shape = parse_declare(declare) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s code = 'declare(\'LOCAL_MEM matrix(64, "unsigned int")\')' 759s 759s def parse_declare(code): 759s """Given a string with the source for the declare method, 759s return the type information. 759s """ 759s m = ast.parse(code) 759s call = m.body[0].value 759s if call.func.id != 'declare': 759s raise CodeGenerationError('Unknown declare statement: %s' % code) 759s arg0 = call.args[0] 759s > if not isinstance(arg0, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/cython_generator.py:129: AttributeError 759s _______________ TestCythonCodeGenerator.test_method_with_declare _______________ 759s 759s self = 759s 759s def test_method_with_declare(self): 759s cg = CythonGenerator() 759s > cg.parse(EqWithDeclare()) 759s 759s ../../build.AEB/src/compyle/tests/test_cython_generator.py:396: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/cython_generator.py:211: in parse 759s self._parse_instance(obj) 759s ../../build.AEB/src/compyle/cython_generator.py:518: in _parse_instance 759s methods = self._get_methods(cls) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:352: in _get_methods 759s c_code, py_code = self._get_method_wrapper( 759s ../../build.AEB/src/compyle/cython_generator.py:398: in _get_method_wrapper 759s c_body = self._get_method_body(meth, lines, indent=indent, 759s ../../build.AEB/src/compyle/cython_generator.py:368: in _get_method_body 759s src = [self._process_body_line(line, is_serial=is_serial) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:535: in _process_body_line 759s defn = self._handle_declare_statement(name, declare) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:462: in _handle_declare_statement 759s kind, _address_space, ctype, shape = parse_declare(declare) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s code = "declare('float', 2)" 759s 759s def parse_declare(code): 759s """Given a string with the source for the declare method, 759s return the type information. 759s """ 759s m = ast.parse(code) 759s call = m.body[0].value 759s if call.func.id != 'declare': 759s raise CodeGenerationError('Unknown declare statement: %s' % code) 759s arg0 = call.args[0] 759s > if not isinstance(arg0, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/cython_generator.py:129: AttributeError 759s _______________ TestCythonCodeGenerator.test_method_with_matrix ________________ 759s 759s self = 759s 759s def test_method_with_matrix(self): 759s cg = CythonGenerator() 759s > cg.parse(EqWithMatrix()) 759s 759s ../../build.AEB/src/compyle/tests/test_cython_generator.py:379: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/cython_generator.py:211: in parse 759s self._parse_instance(obj) 759s ../../build.AEB/src/compyle/cython_generator.py:518: in _parse_instance 759s methods = self._get_methods(cls) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:352: in _get_methods 759s c_code, py_code = self._get_method_wrapper( 759s ../../build.AEB/src/compyle/cython_generator.py:398: in _get_method_wrapper 759s c_body = self._get_method_body(meth, lines, indent=indent, 759s ../../build.AEB/src/compyle/cython_generator.py:368: in _get_method_body 759s src = [self._process_body_line(line, is_serial=is_serial) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:535: in _process_body_line 759s defn = self._handle_declare_statement(name, declare) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:462: in _handle_declare_statement 759s kind, _address_space, ctype, shape = parse_declare(declare) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s code = "declare('matrix((2,2))')" 759s 759s def parse_declare(code): 759s """Given a string with the source for the declare method, 759s return the type information. 759s """ 759s m = ast.parse(code) 759s call = m.body[0].value 759s if call.func.id != 'declare': 759s raise CodeGenerationError('Unknown declare statement: %s' % code) 759s arg0 = call.args[0] 759s > if not isinstance(arg0, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/cython_generator.py:129: AttributeError 759s _______________ TestCythonCodeGenerator.test_python3_annotation ________________ 759s 759s self = 759s 759s @unittest.skipIf(sys.version_info < (3, 4), reason='Requires Python3.') 759s def test_python3_annotation(self): 759s # Given 759s from .py3_code import py3_f 759s cg = CythonGenerator() 759s 759s # When 759s > cg.parse(py3_f) 759s 759s ../../build.AEB/src/compyle/tests/test_cython_generator.py:259: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/cython_generator.py:208: in parse 759s self._parse_function(obj, declarations=declarations, 759s ../../build.AEB/src/compyle/cython_generator.py:505: in _parse_function 759s c_code, py_code = self._get_method_wrapper(obj, indent=' ' * 4, 759s ../../build.AEB/src/compyle/cython_generator.py:398: in _get_method_wrapper 759s c_body = self._get_method_body(meth, lines, indent=indent, 759s ../../build.AEB/src/compyle/cython_generator.py:368: in _get_method_body 759s src = [self._process_body_line(line, is_serial=is_serial) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:535: in _process_body_line 759s defn = self._handle_declare_statement(name, declare) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:462: in _handle_declare_statement 759s kind, _address_space, ctype, shape = parse_declare(declare) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s code = "declare('int')" 759s 759s def parse_declare(code): 759s """Given a string with the source for the declare method, 759s return the type information. 759s """ 759s m = ast.parse(code) 759s call = m.body[0].value 759s if call.func.id != 'declare': 759s raise CodeGenerationError('Unknown declare statement: %s' % code) 759s arg0 = call.args[0] 759s > if not isinstance(arg0, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/cython_generator.py:129: AttributeError 759s __________________ TestAnnotationHelper.test_cast_return_type __________________ 759s 759s self = 759s 759s def test_cast_return_type(self): 759s # Given 759s @annotate 759s def f(a): 759s return cast(a, "int") 759s 759s # When 759s types = {'a': 'double'} 759s helper = AnnotationHelper(f, types) 759s > helper.annotate() 759s 759s ../../build.AEB/src/compyle/tests/test_jit.py:469: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:306: in visit_Return 759s result_type = self.visit(node.value) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:244: in visit_Call 759s return self.visit_cast(node) 759s ^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='cast', ctx=Load()), args=[Name(id='a', ctx=Load()), Constant(value='int', kind=None)], keywords=[]) 759s 759s def visit_cast(self, node): 759s > if not isinstance(node.args[1], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:211: AttributeError 759s _____________ TestAnnotationHelper.test_declare_multiple_variables _____________ 759s 759s self = 759s 759s def test_declare_multiple_variables(self): 759s # Given 759s @annotate 759s def f(x): 759s a, b = declare('int', 2) 759s a = 0 759s b = 1 759s return x + a + b 759s 759s # When 759s types = {'x': 'int'} 759s helper = AnnotationHelper(f, types) 759s > helper.annotate() 759s 759s ../../build.AEB/src/compyle/tests/test_jit.py:88: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:277: in visit_Assign 759s right_type = self.visit(right) 759s ^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:242: in visit_Call 759s return self.visit_declare(node) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='declare', ctx=Load()), args=[Constant(value='int', kind=None), Constant(value=2, kind=None)], keywords=[]) 759s 759s def visit_declare(self, node): 759s > if not isinstance(node.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:205: AttributeError 759s ________________ TestAnnotationHelper.test_variable_as_call_arg ________________ 759s 759s self = 759s 759s def test_variable_as_call_arg(self): 759s # Given 759s @annotate 759s def f(a, b): 759s x = declare('int') 759s x = a + b 759s return g(x) 759s 759s # When 759s types = {'a': 'int', 'b': 'int'} 759s helper = AnnotationHelper(f, types) 759s > helper.annotate() 759s 759s ../../build.AEB/src/compyle/tests/test_jit.py:105: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:277: in visit_Assign 759s right_type = self.visit(right) 759s ^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:242: in visit_Call 759s return self.visit_declare(node) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='declare', ctx=Load()), args=[Constant(value='int', kind=None)], keywords=[]) 759s 759s def visit_declare(self, node): 759s > if not isinstance(node.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:205: AttributeError 759s ____________ TestAnnotationHelper.test_variable_as_call_arg_nonjit _____________ 759s 759s self = 759s 759s def test_variable_as_call_arg_nonjit(self): 759s # Given 759s @annotate 759s def f(a, b): 759s x = declare('int') 759s x = a + b 759s return g_nonjit(x) 759s 759s # When 759s types = {'a': 'int', 'b': 'int'} 759s helper = AnnotationHelper(f, types) 759s > helper.annotate() 759s 759s ../../build.AEB/src/compyle/tests/test_jit.py:121: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/jit.py:167: in annotate 759s self.visit(code) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:514: in generic_visit 759s self.visit(item) 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:277: in visit_Assign 759s right_type = self.visit(right) 759s ^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/jit.py:242: in visit_Call 759s return self.visit_declare(node) 759s ^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='declare', ctx=Load()), args=[Constant(value='int', kind=None)], keywords=[]) 759s 759s def visit_declare(self, node): 759s > if not isinstance(node.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/jit.py:205: AttributeError 759s _______________ TestKernel.test_kernel_with_local_memory_opencl ________________ 759s 759s self = 759s 759s def test_kernel_with_local_memory_opencl(self): 759s importorskip('pyopencl') 759s 759s # Given 759s @annotate(gdoublep='x, y', xc='ldoublep', a='float') 759s def knl(x, y, xc, a): 759s i, lid = declare('int', 2) 759s lid = LID_0 759s i = GID_0 * LDIM_0 + lid 759s 759s xc[lid] = x[i] 759s 759s local_barrier() 759s 759s y[i] = xc[lid] * a 759s 759s x = np.linspace(0, 1, 1024) 759s y = np.zeros_like(x) 759s xc = LocalMem(1, backend='opencl') 759s 759s x, y = wrap(x, y, backend='opencl') 759s 759s # When 759s > k = Kernel(knl, backend='opencl') 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_low_level.py:87: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/low_level.py:150: in __init__ 759s self._generate() 759s ../../build.AEB/src/compyle/low_level.py:195: in _generate 759s self.tp.add(self.func) 759s ../../build.AEB/src/compyle/transpiler.py:278: in add 759s code = self._cgen.parse( 759s ../../build.AEB/src/compyle/translator.py:281: in parse 759s code = self.parse_function(obj, declarations=declarations) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:307: in parse_function 759s code = self.convert(src) 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:584: in visit_FunctionDef 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ../../build.AEB/src/compyle/translator.py:584: in 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Tuple(elts=[Name(id='i', ctx=Store(...)), Name(id='lid', ctx=Store(...))], ctx=Store())], value=Call(f...ctx=Load(...)), args=[Constant(value='int', kind=None), Constant(value=2, kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s _____________________ TestKernel.test_simple_kernel_opencl _____________________ 759s 759s self = 759s 759s def test_simple_kernel_opencl(self): 759s importorskip('pyopencl') 759s 759s # Given 759s @annotate(gdoublep='x, y', a='float', size='int') 759s def knl(x, y, a, size): 759s i = declare('int') 759s i = GID_0*LDIM_0 + LID_0 759s if i < size: 759s y[i] = x[i]*a 759s 759s x = np.linspace(0, 1, 1000) 759s y = np.zeros_like(x) 759s x, y = wrap(x, y, backend='opencl') 759s 759s # When 759s > k = Kernel(knl, backend='opencl') 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_low_level.py:32: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/low_level.py:150: in __init__ 759s self._generate() 759s ../../build.AEB/src/compyle/low_level.py:195: in _generate 759s self.tp.add(self.func) 759s ../../build.AEB/src/compyle/transpiler.py:278: in add 759s code = self._cgen.parse( 759s ../../build.AEB/src/compyle/translator.py:281: in parse 759s code = self.parse_function(obj, declarations=declarations) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:307: in parse_function 759s code = self.convert(src) 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:584: in visit_FunctionDef 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ../../build.AEB/src/compyle/translator.py:584: in 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='i', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='int', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s ___________ TestCython.test_cython_code_with_return_and_nested_call ____________ 759s 759s self = 759s 759s def test_cython_code_with_return_and_nested_call(self): 759s # Given 759s n = 1000 759s x = np.linspace(0, 1, n) 759s y = x.copy() 759s a = 2.0 759s 759s # When 759s > cy = Cython(knl) 759s ^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_low_level.py:167: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/low_level.py:360: in __init__ 759s self._generate() 759s ../../build.AEB/src/compyle/low_level.py:363: in _generate 759s self.tp.add(self.func) 759s ../../build.AEB/src/compyle/transpiler.py:273: in add 759s self._cgen.parse( 759s ../../build.AEB/src/compyle/cython_generator.py:208: in parse 759s self._parse_function(obj, declarations=declarations, 759s ../../build.AEB/src/compyle/cython_generator.py:505: in _parse_function 759s c_code, py_code = self._get_method_wrapper(obj, indent=' ' * 4, 759s ../../build.AEB/src/compyle/cython_generator.py:398: in _get_method_wrapper 759s c_body = self._get_method_body(meth, lines, indent=indent, 759s ../../build.AEB/src/compyle/cython_generator.py:368: in _get_method_body 759s src = [self._process_body_line(line, is_serial=is_serial) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:535: in _process_body_line 759s defn = self._handle_declare_statement(name, declare) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:462: in _handle_declare_statement 759s kind, _address_space, ctype, shape = parse_declare(declare) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s code = "declare('int')" 759s 759s def parse_declare(code): 759s """Given a string with the source for the declare method, 759s return the type information. 759s """ 759s m = ast.parse(code) 759s call = m.body[0].value 759s if call.func.id != 'declare': 759s raise CodeGenerationError('Unknown declare statement: %s' % code) 759s arg0 = call.args[0] 759s > if not isinstance(arg0, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/cython_generator.py:129: AttributeError 759s _____________________ TestCython.test_cython_with_externs ______________________ 759s 759s self = 759s 759s def test_cython_with_externs(self): 759s # Given 759s n = 1000 759s x = np.linspace(0, 1, n) 759s y = np.zeros_like(x) 759s a = 2.0 759s 759s # When 759s with use_config(use_openmp=True): 759s > cy = Cython(cy_extern) 759s ^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_low_level.py:182: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/low_level.py:360: in __init__ 759s self._generate() 759s ../../build.AEB/src/compyle/low_level.py:363: in _generate 759s self.tp.add(self.func) 759s ../../build.AEB/src/compyle/transpiler.py:273: in add 759s self._cgen.parse( 759s ../../build.AEB/src/compyle/cython_generator.py:208: in parse 759s self._parse_function(obj, declarations=declarations, 759s ../../build.AEB/src/compyle/cython_generator.py:505: in _parse_function 759s c_code, py_code = self._get_method_wrapper(obj, indent=' ' * 4, 759s ../../build.AEB/src/compyle/cython_generator.py:398: in _get_method_wrapper 759s c_body = self._get_method_body(meth, lines, indent=indent, 759s ../../build.AEB/src/compyle/cython_generator.py:368: in _get_method_body 759s src = [self._process_body_line(line, is_serial=is_serial) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:535: in _process_body_line 759s defn = self._handle_declare_statement(name, declare) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/cython_generator.py:462: in _handle_declare_statement 759s kind, _address_space, ctype, shape = parse_declare(declare) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s code = "declare('int')" 759s 759s def parse_declare(code): 759s """Given a string with the source for the declare method, 759s return the type information. 759s """ 759s m = ast.parse(code) 759s call = m.body[0].value 759s if call.func.id != 'declare': 759s raise CodeGenerationError('Unknown declare statement: %s' % code) 759s arg0 = call.args[0] 759s > if not isinstance(arg0, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/cython_generator.py:129: AttributeError 759s _____________________________ test_simple_template _____________________________ 759s 759s def test_simple_template(): 759s # Given 759s t = SimpleTemplate(name='simple') 759s 759s # When 759s > simple = t.function 759s ^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_template.py:61: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s ______________________ test_that_source_code_is_available ______________________ 759s 759s def test_that_source_code_is_available(): 759s # Given/When 759s > dummy = Dummy('dummy').function 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_template.py:80: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s ___________________ test_template_usable_in_code_generation ____________________ 759s 759s def test_template_usable_in_code_generation(): 759s # Given 759s > twice = ParallelExample('twice').function 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_template.py:95: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s ________________________ test_template_with_extra_args _________________________ 759s 759s def test_template_with_extra_args(): 759s # Given 759s > extra = ExtraArgs('extra').function 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_template.py:113: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/template.py:24: in function 759s self._function = self._make_function() 759s ^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/template.py:28: in _make_function 759s src, annotations = self._get_code() 759s ^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s 759s def _get_code(self): 759s m = ast.parse(dedent(inspect.getsource(self.template))) 759s argspec = getfullargspec(self.template) 759s args = argspec.args 759s if args[0] == 'self': 759s args = args[1:] 759s extra_args, extra_annotations = self.extra_args() 759s args += extra_args 759s arg_string = ', '.join(args) 759s body = m.body[0].body 759s > template = body[-1].value.s 759s ^^^^^^^^^^^^^^^^ 759s E AttributeError: 'Constant' object has no attribute 's' 759s 759s ../../build.AEB/src/compyle/template.py:52: AttributeError 759s ______________________ test_simple_assignment_expression _______________________ 759s 759s def test_simple_assignment_expression(): 759s # Given 759s src = dedent(''' 759s b = (2*a + 1)*(-a/1.5)%2 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double a; 759s double b; 759s b = ((((2 * a) + 1) * (-a / 1.5)) % 2); 759s ''') 759s > assert code == expect.strip() 759s E AssertionError: assert 'double a;\nd...ne)) % None);' == 'double a;\nd.../ 1.5)) % 2);' 759s E 759s E double a; 759s E double b; 759s E - b = ((((2 * a) + 1) * (-a / 1.5)) % 2); 759s E ? ^ ^ ^^^ ^ 759s E + b = ((((None * a) + None) * (-a / None)) % None); 759s E ? ^^^^ ^^^^ ^^^^ ^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:35: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double a; 759s double b; 759s b = ((((None * a) + None) * (-a / None)) % None); 759s _____________________ test_multiple_assignment_expressions _____________________ 759s 759s def test_multiple_assignment_expressions(): 759s # Given 759s src = dedent(''' 759s a = 21.5 759s b = (2*a + 1)*(a/1.5)%2 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double a; 759s double b; 759s a = 21.5; 759s b = ((((2 * a) + 1) * (a / 1.5)) % 2); 759s ''') 759s > assert code == expect.strip() 759s E AssertionError: assert 'double a;\nd...ne)) % None);' == 'double a;\nd.../ 1.5)) % 2);' 759s E 759s E double a; 759s E double b; 759s E - a = 21.5; 759s E - b = ((((2 * a) + 1) * (a / 1.5)) % 2); 759s E + a = None; 759s E + b = ((((None * a) + None) * (a / None)) % None); 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:55: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double a; 759s double b; 759s a = None; 759s b = ((((None * a) + None) * (a / None)) % None); 759s ________________________________ test_if_block _________________________________ 759s 759s def test_if_block(): 759s # Given 759s src = dedent(''' 759s a = 21.5 759s if a > 20: 759s b = a - 1 759s elif a < 20: 759s b = a + 1 759s else: 759s b = a 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double a; 759s double b; 759s a = 21.5; 759s if ((a > 20)) { 759s b = (a - 1); 759s } 759s else { 759s if ((a < 20)) { 759s b = (a + 1); 759s } 759s else { 759s b = a; 759s } 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double a;\nd... a;\n }\n}' == 'double a;\nd... a;\n }\n}' 759s E 759s E double a; 759s E double b; 759s E - a = 21.5; 759s E + a = None; 759s E - if ((a > 20)) { 759s E ? ^^... 759s E 759s E ...Full output truncated (21 lines hidden), use '-vv' to show 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:90: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double a; 759s double b; 759s a = None; 759s if ((a > None)) { 759s b = (a - None); 759s } 759s else { 759s if ((a < None)) { 759s b = (a + None); 759s } 759s else { 759s b = a; 759s } 759s } 759s 759s ______________________________ test_conditionals _______________________________ 759s 759s def test_conditionals(): 759s # Given 759s src = dedent(''' 759s if (x > 10 and x < 20) or not (x >= 10 and x <= 20): 759s y 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s double y; 759s if ((((x > 10) && (x < 20)) || !((x >= 10) && (x <= 20)))) { 759s y; 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double x;\nd... {\n y;\n}' == 'double x;\nd... {\n y;\n}' 759s E 759s E double x; 759s E double y; 759s E - if ((((x > 10) && (x < 20)) || !((x >= 10) && (x <= 20)))) { 759s E ? ^^ ^^ ^^ ^^ 759s E + if ((((x > None) && (x < None)) || !((x >= None) && (x <= None)))) { 759s E ? ^^^^ ^^^^ ^^^^ ^^^^ 759s E y; 759s E } 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:111: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s double y; 759s if ((((x > None) && (x < None)) || !((x >= None) && (x <= None)))) { 759s y; 759s } 759s 759s ____________________________ test_ternary_operator _____________________________ 759s 759s def test_ternary_operator(): 759s # Given 759s src = dedent(''' 759s y = 2.0 759s x = 1.0 if y >= 2.0 else 0.0 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s double y; 759s y = 2.0; 759s x = (y >= 2.0) ? 1.0 : 0.0; 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double x;\nd... None : None;' == 'double x;\nd... ? 1.0 : 0.0;' 759s E 759s E double x; 759s E double y; 759s E - y = 2.0; 759s E - x = (y >= 2.0) ? 1.0 : 0.0; 759s E + y = None; 759s E + x = (y >= None) ? None : None; 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:167: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s double y; 759s y = None; 759s x = (y >= None) ? None : None; 759s ____________________________ test_multiple_boolops _____________________________ 759s 759s def test_multiple_boolops(): 759s # Given 759s src = dedent(''' 759s if x % 2 == 0 or x % 2 == 1 or x > 0: 759s pass 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s if ((((x % 2) == 0) || ((x % 2) == 1) || (x > 0))) { 759s ; 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double x;\ni...) {\n ;\n}' == 'double x;\ni...) {\n ;\n}' 759s E 759s E double x; 759s E - if ((((x % 2) == 0) || ((x % 2) == 1) || (x > 0))) { 759s E ? ^ ^ ^ ^ ^ 759s E + if ((((x % None) == None) || ((x % None) == None) || (x > None))) { 759s E ? ^^^^ ^^^^ ^^^^ ^^^^ ^^^^ 759s E ; 759s E } 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:187: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s if ((((x % None) == None) || ((x % None) == None) || (x > None))) { 759s ; 759s } 759s 759s __________________________ test_multiple_bitwise_ops ___________________________ 759s 759s def test_multiple_bitwise_ops(): 759s # Given 759s src = dedent(''' 759s x = 1 << 5 759s y = x >> 2 759s z = (x | y) ^ (x & y) 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s double y; 759s double z; 759s x = (1 << 5); 759s y = (x >> 2); 759s z = ((x | y) ^ (x & y)); 759s ''') 759s 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double x;\nd...) ^ (x & y));' == 'double x;\nd...) ^ (x & y));' 759s E 759s E double x; 759s E double y; 759s E double z; 759s E - x = (1 << 5); 759s E + x = (None << None); 759s E - y = (x >> 2);... 759s E 759s E ...Full output truncated (4 lines hidden), use '-vv' to show 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:211: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s double y; 759s double z; 759s x = (None << None); 759s y = (x >> None); 759s z = ((x | y) ^ (x & y)); 759s __________________________________ test_power __________________________________ 759s 759s def test_power(): 759s # Given 759s src = dedent(''' 759s 1.5*x**2 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s (1.5 * pow(x, 2)); 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double x;\n(...ow(x, None));' == 'double x;\n(...* pow(x, 2));' 759s E 759s E double x; 759s E - (1.5 * pow(x, 2)); 759s E + (None * pow(x, None)); 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:228: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s (None * pow(x, None)); 759s ____________________________ test_calling_function _____________________________ 759s 759s def test_calling_function(): 759s # Given 759s src = dedent(''' 759s sin(23.2 + 1) 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s sin((23.2 + 1)); 759s ''') 759s > assert code == expect.strip() 759s E AssertionError: assert 'sin((None + None));' == 'sin((23.2 + 1));' 759s E 759s E - sin((23.2 + 1)); 759s E + sin((None + None)); 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:256: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s sin((None + None)); 759s _______________________ test_calling_printf_with_string ________________________ 759s 759s def test_calling_printf_with_string(): 759s # Given 759s src = dedent(r''' 759s printf('%s %d %f\n', 'hello', 1, 2.0) 759s ''') 759s 759s # When 759s > code = py2c(src) 759s ^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:266: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:438: in visit_Expr 759s return self.visit(node.value) + ';' 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Name(id='printf', ctx=Load()), args=[Constant(value='%s %d %f\n', kind=None), ..., Constant(value=2.0, kind=None)], keywords=[]) 759s 759s def visit_Call(self, node): 759s if isinstance(node.func, ast.Name): 759s if node.func.id == 'address': 759s return '(&%s)' % self.visit(node.args[0]) 759s elif 'atomic' in node.func.id: 759s return self.render_atomic(node.func.id, node.args[0]) 759s elif node.func.id == 'cast': 759s return '(%s) (%s)' % (node.args[1].s, self.visit(node.args[0])) 759s else: 759s return '{func}({args})'.format( 759s func=node.func.id, 759s > args=', '.join(self.visit(x) for x in node.args) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s E TypeError: sequence item 0: expected str instance, NoneType found 759s 759s ../../build.AEB/src/compyle/translator.py:392: TypeError 759s ________________________________ test_subscript ________________________________ 759s 759s def test_subscript(): 759s # Given 759s src = dedent(''' 759s x[1] 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s x[1]; 759s ''') 759s > assert code == expect.strip() 759s E AssertionError: assert 'double x;\nx[None];' == 'double x;\nx[1];' 759s E 759s E double x; 759s E - x[1]; 759s E + x[None]; 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:289: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s x[None]; 759s _______________________ test_simple_function_with_return _______________________ 759s 759s def test_simple_function_with_return(): 759s # Given 759s src = dedent(''' 759s def f(x=0.0): 759s 'docstring' 759s y = x + 1 759s return y 759s ''') 759s 759s # When 759s > code = py2c(src) 759s ^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:329: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:585: in visit_FunctionDef 759s for item in self._remove_docstring(node.body)) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s body = [Expr(value=Constant(value='docstring', kind=None)), Assign(targets=[Name(id='y', ctx=Store())], value=BinOp(left=Name...=Load(...)), op=Add(), right=Constant(value=1, kind=None)), type_comment=None), Return(value=Name(id='y', ctx=Load()))] 759s 759s def _remove_docstring(self, body): 759s if body and isinstance(body[0], ast.Expr) and \ 759s > isinstance(body[0].value, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:228: AttributeError 759s ___________________________ test_annotated_function ____________________________ 759s 759s def test_annotated_function(): 759s # Given/When 759s t = CConverter() 759s > code = t.parse_function(annotated_f) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:411: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:307: in parse_function 759s code = self.convert(src) 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:584: in visit_FunctionDef 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ../../build.AEB/src/compyle/translator.py:584: in 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='x', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='LOCAL_MEM matrix(64)', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s _____________________________ test_py3_annotations _____________________________ 759s 759s @pytest.mark.skipif(sys.version_info < (3, 4), reason='Requires Python3') 759s def test_py3_annotations(): 759s # Given/When 759s from .py3_code import py3_f 759s t = CConverter() 759s > code = t.parse_function(py3_f) 759s ^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:429: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:307: in parse_function 759s code = self.convert(src) 759s ^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:584: in visit_FunctionDef 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ../../build.AEB/src/compyle/translator.py:584: in 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='y', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='int', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s ______________________ test_calling_method_of_known_type _______________________ 759s 759s def test_calling_method_of_known_type(): 759s # Given 759s src = dedent(''' 759s obj.method(1, 2) 759s obj.meth() 759s ''') 759s known = {'obj': KnownType('SomeClass*', base_type='SomeClass')} 759s 759s # When 759s > code = py2c(src, known_types=known) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:452: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:438: in visit_Expr 759s return self.visit(node.value) + ';' 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Call(func=Attribute(value=Name(id='obj', ctx=Load(...)), attr='method', ctx=Load()), args=[Constant(value=1, kind=None), Constant(value=2, kind=None)], keywords=[]) 759s 759s def visit_Call(self, node): 759s if isinstance(node.func, ast.Name): 759s if node.func.id == 'address': 759s return '(&%s)' % self.visit(node.args[0]) 759s elif 'atomic' in node.func.id: 759s return self.render_atomic(node.func.id, node.args[0]) 759s elif node.func.id == 'cast': 759s return '(%s) (%s)' % (node.args[1].s, self.visit(node.args[0])) 759s else: 759s return '{func}({args})'.format( 759s func=node.func.id, 759s args=', '.join(self.visit(x) for x in node.args) 759s ) 759s elif isinstance(node.func, ast.Attribute): 759s if node.func.value.id in self._known_types: 759s name = node.func.value.id 759s cls = self._known_types[name].base_type 759s args = [name] + [self.visit(x) for x in node.args] 759s return '{func}({args})'.format( 759s func='%s_%s' % (cls, node.func.attr), 759s > args=', '.join(args) 759s ^^^^^^^^^^^^^^^ 759s E TypeError: sequence item 1: expected str instance, NoneType found 759s 759s ../../build.AEB/src/compyle/translator.py:401: TypeError 759s _________________ test_calling_method_of_known_type_in_method __________________ 759s 759s def test_calling_method_of_known_type_in_method(): 759s # Given 759s src = dedent(''' 759s class Foo(object): 759s def g(self): 759s pass 759s def f(self, obj): 759s obj.method(1, 2) 759s self.g() 759s ''') 759s 759s # When 759s known = {'obj': KnownType('SomeClass*', base_type='SomeClass')} 759s > code = py2c(src, known_types=known) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:475: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:417: in visit_ClassDef 759s code = [self.visit(x) for x in self._remove_docstring(node.body)] 759s ^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:585: in visit_FunctionDef 759s for item in self._remove_docstring(node.body)) 759s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s body = [Expr(value=Call(func=Attribute(value=Name(...), attr='method', ctx=Load(...)), args=[Constant(value=1, kind=None), Co...one)], keywords=[])), Expr(value=Call(func=Attribute(value=Name(...), attr='g', ctx=Load(...)), args=[], keywords=[]))] 759s 759s def _remove_docstring(self, body): 759s if body and isinstance(body[0], ast.Expr) and \ 759s > isinstance(body[0].value, ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:228: AttributeError 759s __________________________________ test_while __________________________________ 759s 759s def test_while(): 759s # Given 759s src = dedent(''' 759s while x < 21: 759s do(x) 759s do1(x) 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s while ((x < 21)) { 759s do(x); 759s do1(x); 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double x;\nw... do1(x);\n}' == 'double x;\nw... do1(x);\n}' 759s E 759s E double x; 759s E - while ((x < 21)) { 759s E ? ^^ 759s E + while ((x < None)) { 759s E ? ^^^^ 759s E do(x); 759s E do1(x); 759s E } 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:568: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s while ((x < None)) { 759s do(x); 759s do1(x); 759s } 759s 759s ________________________ test_bool_true_false_and_none _________________________ 759s 759s def test_bool_true_false_and_none(): 759s # Given 759s src = dedent(''' 759s while True: 759s pass 759s if False: 759s pass 759s if x is None or x is not None: 759s pass 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double x; 759s while (1) { 759s ; 759s } 759s 759s if (0) { 759s ; 759s } 759s 759s if (((x == NULL) || (x != NULL))) { 759s ; 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double x;\nw...) {\n ;\n}' == 'double x;\nw...) {\n ;\n}' 759s E 759s E double x; 759s E - while (1) { 759s E ? ^ 759s E + while (None) { 759s E ? ^^^^ 759s E ;... 759s E 759s E ...Full output truncated (15 lines hidden), use '-vv' to show 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:600: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double x; 759s while (None) { 759s ; 759s } 759s 759s if (None) { 759s ; 759s } 759s 759s if (((x == None) || (x != None))) { 759s ; 759s } 759s 759s ___________________________________ test_for ___________________________________ 759s 759s def test_for(): 759s # Given 759s src = dedent(''' 759s for i in range(5): 759s do(i) 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s for (long i=0; i<5; i+=1) { 759s do(i); 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'long __cpy_s... do(i);\n}' == 'for (long i=... do(i);\n}' 759s E 759s E + long __cpy_stop_0 = None; 759s E - for (long i=0; i<5; i+=1) { 759s E ? ^ 759s E + for (long i=0; i<__cpy_stop_0; i+=1) { 759s E ? ^^^^^^^^^^^^ 759s E do(i); 759s E } 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:619: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s long __cpy_stop_0 = None; 759s for (long i=0; i<__cpy_stop_0; i+=1) { 759s do(i); 759s } 759s 759s ________________________ test_for_with_decreasing_range ________________________ 759s 759s def test_for_with_decreasing_range(): 759s # Given 759s src = dedent(''' 759s for i in range(10, -1, -1): 759s pass 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s for (long i=10; i>-1; i+=-1) { 759s ; 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'long __cpy_s... ;\n }\n}' == 'for (long i=...) {\n ;\n}' 759s E 759s E - for (long i=10; i>-1; i+=-1) { 759s E + long __cpy_stop_0 = -None; 759s E + long __cpy_step_0 = -None; 759s E + if (__cpy_step_0 < 0) { 759s E + for (long i=None; i>__cpy_stop_0; i+=__cpy_step_0) { 759s E - ;... 759s E 759s E ...Full output truncated (9 lines hidden), use '-vv' to show 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:672: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s long __cpy_stop_0 = -None; 759s long __cpy_step_0 = -None; 759s if (__cpy_step_0 < 0) { 759s for (long i=None; i>__cpy_stop_0; i+=__cpy_step_0) { 759s ; 759s } 759s } 759s else { 759s for (long i=None; i<__cpy_stop_0; i+=__cpy_step_0) { 759s ; 759s } 759s } 759s 759s ____________________________ test_for_with_declare _____________________________ 759s 759s def test_for_with_declare(): 759s # Given 759s src = dedent(''' 759s i = declare('int') 759s for i in range(5): 759s do(i) 759s ''') 759s 759s # When 759s > code = py2c(src) 759s ^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:684: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='i', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='int', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s ________________________________ test_two_fors _________________________________ 759s 759s def test_two_fors(): 759s # Given 759s src = dedent(''' 759s for i in range(5): 759s do(i) 759s for i in range(5): 759s pass 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s for (long i=0; i<5; i+=1) { 759s do(i); 759s } 759s 759s for (long i=0; i<5; i+=1) { 759s ; 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'long __cpy_s...) {\n ;\n}' == 'for (long i=...) {\n ;\n}' 759s E 759s E + long __cpy_stop_0 = None; 759s E - for (long i=0; i<5; i+=1) { 759s E ? ^ 759s E + for (long i=0; i<__cpy_stop_0; i+=1) { 759s E ? ^^^^^^^^^^^^ 759s E do(i);... 759s E 759s E ...Full output truncated (9 lines hidden), use '-vv' to show 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:718: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s long __cpy_stop_0 = None; 759s for (long i=0; i<__cpy_stop_0; i+=1) { 759s do(i); 759s } 759s 759s long __cpy_stop_1 = None; 759s for (long i=0; i<__cpy_stop_1; i+=1) { 759s ; 759s } 759s 759s ____________________________ test_for_with_symbols _____________________________ 759s 759s def test_for_with_symbols(): 759s # Given 759s src = dedent(''' 759s n = declare('int') 759s n = 25 759s for i in range(n): 759s pass 759s for i in range(0, n+1, step()): 759s pass 759s ''') 759s 759s # When 759s > code = py2c(src) 759s ^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:733: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='n', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='int', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s _________________________ test_nested_for_with_symbols _________________________ 759s 759s def test_nested_for_with_symbols(): 759s # Given 759s src = dedent(''' 759s n = declare('int') 759s n = 25 759s for i in range(n): 759s for j in range(0, n+1, step()): 759s pass 759s for i in range(n+1): 759s for j in range(0, n+2, step()): 759s pass 759s ''') 759s 759s # When 759s > code = py2c(src) 759s ^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:774: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='n', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='int', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s ___________________________ test_with_two_functions ____________________________ 759s 759s def test_with_two_functions(): 759s # Given 759s src = dedent(''' 759s def f(): 759s n = declare('int') 759s n = 20 759s for i in range(n): 759s pass 759s for i in range(n): 759s pass 759s def g(): 759s n = declare('int') 759s n = 20 759s for i in range(n): 759s pass 759s for i in range(n): 759s pass 759s ''') 759s > code = py2c(src) 759s ^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:833: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:584: in visit_FunctionDef 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ../../build.AEB/src/compyle/translator.py:584: in 759s body = '\n'.join(self._indent_block(self.visit(item)) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='n', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='int', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s _________________________ test_for_with_break_continue _________________________ 759s 759s def test_for_with_break_continue(): 759s # Given 759s src = dedent(''' 759s for i in range(10): 759s if i%7 == 0: 759s break 759s if i%2 == 0: 759s continue 759s do(i) 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s for (long i=0; i<10; i+=1) { 759s if (((i % 7) == 0)) { 759s break; 759s } 759s if (((i % 2) == 0)) { 759s continue; 759s } 759s do(i); 759s } 759s ''') 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'long __cpy_s... do(i);\n}' == 'for (long i=... do(i);\n}' 759s E 759s E + long __cpy_stop_0 = None; 759s E - for (long i=0; i<10; i+=1) { 759s E ? ^ 759s E + for (long i=0; i<__cpy_stop_0; i+=1) { 759s E ? ^^^^^^^^^^^ 759s E - if (((i % 7) == 0)) {... 759s E 759s E ...Full output truncated (13 lines hidden), use '-vv' to show 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:895: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s long __cpy_stop_0 = None; 759s for (long i=0; i<__cpy_stop_0; i+=1) { 759s if (((i % None) == None)) { 759s break; 759s } 759s if (((i % None) == None)) { 759s continue; 759s } 759s do(i); 759s } 759s 759s ____________________________ test_attribute_access _____________________________ 759s 759s def test_attribute_access(): 759s # Given 759s src = dedent(''' 759s self.x = 1 759s ''') 759s 759s # When 759s code = py2c(src) 759s 759s # Then 759s expect = dedent(''' 759s double self; 759s self->x = 1; 759s ''') 759s 759s > assert code.strip() == expect.strip() 759s E AssertionError: assert 'double self;...lf->x = None;' == 'double self;\nself->x = 1;' 759s E 759s E double self; 759s E - self->x = 1; 759s E ? ^ 759s E + self->x = None; 759s E ? ^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:975: AssertionError 759s ----------------------------- Captured stdout call ----------------------------- 759s double self; 759s self->x = None; 759s _____________________ test_declare_call_declares_variable ______________________ 759s 759s def test_declare_call_declares_variable(): 759s # Given 759s src = dedent(''' 759s x = declare('int') 759s x += 1 759s ''') 759s 759s # When 759s > code = py2c(src) 759s ^^^^^^^^^ 759s 759s ../../build.AEB/src/compyle/tests/test_translator.py:986: 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s ../../build.AEB/src/compyle/translator.py:65: in py2c 759s result = converter.convert(src) 759s ^^^^^^^^^^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:252: in convert 759s result = self.visit(code) 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 759s return '\n'.join( 759s ../../build.AEB/src/compyle/translator.py:653: in 759s self.visit(item) for item in node.body 759s ^^^^^^^^^^^^^^^^ 759s /usr/lib/python3.14/ast.py:506: in visit 759s return visitor(node) 759s ^^^^^^^^^^^^^ 759s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 759s 759s self = 759s node = Assign(targets=[Name(id='x', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='int', kind=None)], keywords=[]), type_comment=None) 759s 759s def visit_Assign(self, node): 759s if len(node.targets) != 1: 759s self.error("Assignments can have only one target.", node) 759s left, right = node.targets[0], node.value 759s if isinstance(right, ast.Call) and \ 759s isinstance(right.func, ast.Name) and right.func.id == 'declare': 759s > if not isinstance(right.args[0], ast.Str): 759s ^^^^^^^ 759s E AttributeError: module 'ast' has no attribute 'Str' 759s 759s ../../build.AEB/src/compyle/translator.py:344: AttributeError 759s _____________________________ test_declare_matrix ______________________________ 759s 759s def test_declare_matrix(): 759s # Given 761s src = dedent(''' 761s x = declare('matrix((3,))') 761s do(x[0]) 761s ''') 761s 761s # When 761s > code = py2c(src) 761s ^^^^^^^^^ 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1004: 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s ../../build.AEB/src/compyle/translator.py:65: in py2c 761s result = converter.convert(src) 761s ^^^^^^^^^^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:252: in convert 761s result = self.visit(code) 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 761s return '\n'.join( 761s ../../build.AEB/src/compyle/translator.py:653: in 761s self.visit(item) for item in node.body 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s 761s self = 761s node = Assign(targets=[Name(id='x', ctx=Store())], value=Call(func=Name(id='declare', ctx=Load(...)), args=[Constant(value='matrix((3,))', kind=None)], keywords=[]), type_comment=None) 761s 761s def visit_Assign(self, node): 761s if len(node.targets) != 1: 761s self.error("Assignments can have only one target.", node) 761s left, right = node.targets[0], node.value 761s if isinstance(right, ast.Call) and \ 761s isinstance(right.func, ast.Name) and right.func.id == 'declare': 761s > if not isinstance(right.args[0], ast.Str): 761s ^^^^^^^ 761s E AttributeError: module 'ast' has no attribute 'Str' 761s 761s ../../build.AEB/src/compyle/translator.py:344: AttributeError 761s ________________ test_declare_call_declares_multiple_variables _________________ 761s 761s def test_declare_call_declares_multiple_variables(): 761s # Given 761s src = dedent(''' 761s x, y = declare('int', 2) 761s u, v = declare('matrix(3)', 2) 761s A = declare('matrix((2,2), "long")') 761s ''') 761s 761s # When 761s > code = py2c(src) 761s ^^^^^^^^^ 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1055: 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s ../../build.AEB/src/compyle/translator.py:65: in py2c 761s result = converter.convert(src) 761s ^^^^^^^^^^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:252: in convert 761s result = self.visit(code) 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 761s return '\n'.join( 761s ../../build.AEB/src/compyle/translator.py:653: in 761s self.visit(item) for item in node.body 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s 761s self = 761s node = Assign(targets=[Tuple(elts=[Name(id='x', ctx=Store(...)), Name(id='y', ctx=Store(...))], ctx=Store())], value=Call(fun...ctx=Load(...)), args=[Constant(value='int', kind=None), Constant(value=2, kind=None)], keywords=[]), type_comment=None) 761s 761s def visit_Assign(self, node): 761s if len(node.targets) != 1: 761s self.error("Assignments can have only one target.", node) 761s left, right = node.targets[0], node.value 761s if isinstance(right, ast.Call) and \ 761s isinstance(right.func, ast.Name) and right.func.id == 'declare': 761s > if not isinstance(right.args[0], ast.Str): 761s ^^^^^^^ 761s E AttributeError: module 'ast' has no attribute 'Str' 761s 761s ../../build.AEB/src/compyle/translator.py:344: AttributeError 761s __________________________________ test_class __________________________________ 761s 761s def test_class(): 761s # Given 761s src = dedent(''' 761s class Foo(object): 761s def g(self, x=0.0): 761s return x*2.0 761s def f(self, x=0.0): 761s y = x + 1 761s do(self.a, x) 761s z = self.g(y) 761s ''') 761s 761s # When 761s code = py2c(src) 761s 761s # Then 761s expect = dedent(''' 761s double Foo_g(Foo* self, double x) 761s { 761s return (x * 2.0); 761s } 761s 761s void Foo_f(Foo* self, double x) 761s { 761s double y; 761s double z; 761s y = (x + 1); 761s do(self->a, x); 761s z = Foo_g(self, y); 761s } 761s ''') 761s > assert code.strip() == expect.strip() 761s E AssertionError: assert 'double Foo_g...(self, y);\n}' == 'double Foo_g...(self, y);\n}' 761s E 761s E Skipping 42 identical leading characters in diff, use -v to show 761s E - turn (x * 2.0); 761s E ? ^^^ 761s E + turn (x * None); 761s E ? ^^^^ 761s E }... 761s E 761s E ...Full output truncated (12 lines hidden), use '-vv' to show 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1097: AssertionError 761s ----------------------------- Captured stdout call ----------------------------- 761s double Foo_g(Foo* self, double x) 761s { 761s return (x * None); 761s } 761s 761s void Foo_f(Foo* self, double x) 761s { 761s double y; 761s double z; 761s y = (x + None); 761s do(self->a, x); 761s z = Foo_g(self, y); 761s } 761s 761s _____________________________ test_wrapping_class ______________________________ 761s 761s def test_wrapping_class(): 761s # Given 761s class Dummy(object): 761s '''Class Docstring''' 761s 761s def __init__(self, x=0, f=0.0, s=''): 761s "Constructor docstring" 761s self.x = x 761s self.f = f 761s self.s = s 761s self._private = 1 761s 761s def method(self): 761s '''Method docstring. 761s ''' 761s pass 761s 761s obj = Dummy() 761s 761s # When 761s c = CConverter() 761s > result = c.parse_instance(obj) 761s ^^^^^^^^^^^^^^^^^^^^^ 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1191: 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s ../../build.AEB/src/compyle/translator.py:297: in parse_instance 761s code += self.convert(src, ignore_methods) 761s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:252: in convert 761s result = self.visit(code) 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 761s return '\n'.join( 761s ../../build.AEB/src/compyle/translator.py:653: in 761s self.visit(item) for item in node.body 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:417: in visit_ClassDef 761s code = [self.visit(x) for x in self._remove_docstring(node.body)] 761s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s 761s self = 761s body = [Expr(value=Constant(value='Class Docstring', kind=None)), FunctionDef(name='__init__', args=arguments(posonlyargs=[],...ethod docstring.\n ', kind=None)), Pass()], decorator_list=[], returns=None, type_comment=None, type_params=[])] 761s 761s def _remove_docstring(self, body): 761s if body and isinstance(body[0], ast.Expr) and \ 761s > isinstance(body[0].value, ast.Str): 761s ^^^^^^^ 761s E AttributeError: module 'ast' has no attribute 'Str' 761s 761s ../../build.AEB/src/compyle/translator.py:228: AttributeError 761s ___________________ test_wrapping_class_with_ignore_methods ____________________ 761s 761s def test_wrapping_class_with_ignore_methods(): 761s # Given 761s class Dummy1(object): 761s '''Class Docstring''' 761s 761s def f(self): 761s pass 761s 761s def not_me(self): 761s pass 761s 761s obj = Dummy1() 761s 761s # When 761s c = CConverter() 761s > result = c.parse_instance(obj, ignore_methods=['not_me']) 761s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1232: 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s ../../build.AEB/src/compyle/translator.py:297: in parse_instance 761s code += self.convert(src, ignore_methods) 761s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:252: in convert 761s result = self.visit(code) 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 761s return '\n'.join( 761s ../../build.AEB/src/compyle/translator.py:653: in 761s self.visit(item) for item in node.body 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:417: in visit_ClassDef 761s code = [self.visit(x) for x in self._remove_docstring(node.body)] 761s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s 761s self = 761s body = [Expr(value=Constant(value='Class Docstring', kind=None)), FunctionDef(name='f', args=arguments(posonlyargs=[], args=[...aults=[], kwarg=None, defaults=[]), body=[Pass()], decorator_list=[], returns=None, type_comment=None, type_params=[])] 761s 761s def _remove_docstring(self, body): 761s if body and isinstance(body[0], ast.Expr) and \ 761s > isinstance(body[0].value, ast.Str): 761s ^^^^^^^ 761s E AttributeError: module 'ast' has no attribute 'Str' 761s 761s ../../build.AEB/src/compyle/translator.py:228: AttributeError 761s __________________________ test_cuda_local_conversion __________________________ 761s 761s def test_cuda_local_conversion(): 761s @annotate(xc='ldoublep', yc='lintp') 761s def knl(xc, yc): 761s xc[LID_0] = 1 761s yc[LID_0] = 1 761s 761s # When 761s converter = CUDAConverter() 761s code = converter.parse(knl) 761s 761s # Then 761s expect_1 = dedent(''' 761s WITHIN_KERNEL void knl(int size_xc, int size_yc) 761s { 761s extern LOCAL_MEM float shared_buff[]; 761s double* xc = (double*) shared_buff; 761s int* yc = (int*) &xc[size_xc]; 761s xc[LID_0] = 1; 761s yc[LID_0] = 1; 761s } 761s ''') 761s 761s expect_2 = dedent(''' 761s WITHIN_KERNEL void knl(int size_xc, int size_yc) 761s { 761s extern LOCAL_MEM float shared_buff[]; 761s int* yc = (int*) shared_buff; 761s double* xc = (double*) &yc[size_yc]; 761s xc[LID_0] = 1; 761s yc[LID_0] = 1; 761s } 761s ''') 761s 761s > assert code.strip() == expect_1.strip() or code.strip() == expect_2.strip() 761s E AssertionError: assert ('WITHIN_KERNE...0] = None;\n}' == 'WITHIN_KERNE...ID_0] = 1;\n}' 761s E 761s E Skipping 174 identical leading characters in diff, use -v to show 761s E - [LID_0] = 1; 761s E ? ^ 761s E + [LID_0] = None; 761s E ? ^^^^ 761s E - yc[LID_0] = 1;... 761s E 761s E ...Full output truncated (4 lines hidden), use '-vv' to show or 'WITHIN_KERNE...0] = None;\n}' == 'WITHIN_KERNE...ID_0] = 1;\n}' 761s E 761s E Skipping 87 identical leading characters in diff, use -v to show 761s E ff[]; 761s E - int* yc = (int*) shared_buff; 761s E - double* xc = (double*) &yc[size_yc]; 761s E ? ---- ^^ ^^^ 761s E + double* xc = (double*) shared_buff;... 761s E 761s E ...Full output truncated (11 lines hidden), use '-vv' to show) 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1333: AssertionError 761s ________________________ test_handles_parsing_functions ________________________ 761s 761s def test_handles_parsing_functions(): 761s # Given 761s def f(x=1.0): 761s return x + 1 761s 761s # When 761s t = CConverter() 761s code = t.parse_function(f) 761s 761s # Then 761s expect = dedent(''' 761s double f(double x) 761s { 761s return (x + 1); 761s } 761s ''') 761s > assert code.strip() == expect.strip() 761s E AssertionError: assert 'double f(dou...x + None);\n}' == 'double f(dou...n (x + 1);\n}' 761s E 761s E double f(double x) 761s E { 761s E - return (x + 1); 761s E ? ^ 761s E + return (x + None); 761s E ? ^^^^ 761s E } 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1352: AssertionError 761s _______________________________ test_cast_works ________________________________ 761s 761s def test_cast_works(): 761s # Given 761s def f(x=1.0): 761s return cast(x, "float") 761s 761s # When 761s t = OpenCLConverter() 761s > code = t.parse_function(f) 761s ^^^^^^^^^^^^^^^^^^^ 761s 761s ../../build.AEB/src/compyle/tests/test_translator.py:1467: 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s ../../build.AEB/src/compyle/translator.py:307: in parse_function 761s code = self.convert(src) 761s ^^^^^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:252: in convert 761s result = self.visit(code) 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:652: in visit_Module 761s return '\n'.join( 761s ../../build.AEB/src/compyle/translator.py:653: in 761s self.visit(item) for item in node.body 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:584: in visit_FunctionDef 761s body = '\n'.join(self._indent_block(self.visit(item)) 761s ../../build.AEB/src/compyle/translator.py:584: in 761s body = '\n'.join(self._indent_block(self.visit(item)) 761s ^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s ../../build.AEB/src/compyle/translator.py:692: in visit_Return 761s return 'return %s;' % (self.visit(node.value)) 761s ^^^^^^^^^^^^^^^^^^^^^^ 761s /usr/lib/python3.14/ast.py:506: in visit 761s return visitor(node) 761s ^^^^^^^^^^^^^ 761s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 761s 761s self = 761s node = Call(func=Name(id='cast', ctx=Load()), args=[Name(id='x', ctx=Load()), Constant(value='float', kind=None)], keywords=[]) 761s 761s def visit_Call(self, node): 761s if isinstance(node.func, ast.Name): 761s if node.func.id == 'address': 761s return '(&%s)' % self.visit(node.args[0]) 761s elif 'atomic' in node.func.id: 761s return self.render_atomic(node.func.id, node.args[0]) 761s elif node.func.id == 'cast': 761s > return '(%s) (%s)' % (node.args[1].s, self.visit(node.args[0])) 761s ^^^^^^^^^^^^^^ 761s E AttributeError: 'Constant' object has no attribute 's' 761s 761s ../../build.AEB/src/compyle/translator.py:388: AttributeError 761s =============================== warnings summary =============================== 761s compyle/tests/test_array.py: 23 warnings 761s /usr/lib/python3/dist-packages/pyopencl/__init__.py:519: CompilerWarning: Non-empty compiler output encountered. Set the environment variable PYOPENCL_COMPILER_OUTPUT=1 to see more. 761s lambda: self._prg.build(options_bytes, devices), 761s 761s compyle/tests/test_array.py::test_trapz[cython] 761s compyle/tests/test_array.py::test_trapz[opencl] 761s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_array.py:452: DeprecationWarning: `trapz` is deprecated. Use `trapezoid` instead, or one of the numerical integration functions in `scipy.integrate`. 761s assert(array.trapz(y) == np.trapz(yn)) 761s 761s compyle/tests/test_array.py::test_trapz[cython] 761s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_array.py:453: DeprecationWarning: `trapz` is deprecated. Use `trapezoid` instead, or one of the numerical integration functions in `scipy.integrate`. 761s assert(array.trapz(y, x,) == np.trapz(yn, xn)) 761s 761s compyle/tests/test_array.py::test_trapz[cython] 761s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_array.py:454: DeprecationWarning: `trapz` is deprecated. Use `trapezoid` instead, or one of the numerical integration functions in `scipy.integrate`. 761s assert(array.trapz(y, dx=3) == np.trapz(yn, dx=3)) 761s 761s compyle/tests/test_jit.py::TestAnnotationHelper::test_non_jit_call_as_call_arg 761s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:202: UserWarning: 761s In code in line 5: 761s 761s return g(sin(a)) 761s ^ 761s 761s 761s Function called is not marked by the annotate decorator. Argument 761s type defaulting to 'double'. If the type is not 'double', store 761s the value in a variable of appropriate type and use the variable 761s 761s warnings.warn(msg) 761s 761s compyle/tests/test_jit.py::TestAnnotationHelper::test_non_jit_call_in_return 761s /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/jit.py:202: UserWarning: 761s In code in line 5: 761s 761s return sin(a) 761s ^ 761s 761s 761s Function called is not marked by the annotate decorator. Argument 761s type defaulting to 'double'. If the type is not 'double', store 761s the value in a variable of appropriate type and use the variable 761s 761s warnings.warn(msg) 761s 761s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 761s =========================== short test summary info ============================ 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_remove[opencl] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_align_multiple[cython] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_align_multiple[opencl] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_sort_by_keys[cython] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_radix_sort_by_keys 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_sort_by_keys_with_output[cython] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_diff[int32-opencl] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_diff[float32-opencl] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_diff[float64-opencl] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_trapz[opencl] - ... 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_take_bool[opencl-int32] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_take_bool[opencl-float32] 761s FAILED ../../build.AEB/src/compyle/tests/test_array.py::test_take_bool[opencl-float64] 761s FAILED ../../build.AEB/src/compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_function_with_annotation 761s FAILED ../../build.AEB/src/compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_declare 761s FAILED ../../build.AEB/src/compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_method_with_matrix 761s FAILED ../../build.AEB/src/compyle/tests/test_cython_generator.py::TestCythonCodeGenerator::test_python3_annotation 761s FAILED ../../build.AEB/src/compyle/tests/test_jit.py::TestAnnotationHelper::test_cast_return_type 761s FAILED ../../build.AEB/src/compyle/tests/test_jit.py::TestAnnotationHelper::test_declare_multiple_variables 761s FAILED ../../build.AEB/src/compyle/tests/test_jit.py::TestAnnotationHelper::test_variable_as_call_arg 761s FAILED ../../build.AEB/src/compyle/tests/test_jit.py::TestAnnotationHelper::test_variable_as_call_arg_nonjit 761s FAILED ../../build.AEB/src/compyle/tests/test_low_level.py::TestKernel::test_kernel_with_local_memory_opencl 761s FAILED ../../build.AEB/src/compyle/tests/test_low_level.py::TestKernel::test_simple_kernel_opencl 761s FAILED ../../build.AEB/src/compyle/tests/test_low_level.py::TestCython::test_cython_code_with_return_and_nested_call 761s FAILED ../../build.AEB/src/compyle/tests/test_low_level.py::TestCython::test_cython_with_externs 761s FAILED ../../build.AEB/src/compyle/tests/test_template.py::test_simple_template 761s FAILED ../../build.AEB/src/compyle/tests/test_template.py::test_that_source_code_is_available 761s FAILED ../../build.AEB/src/compyle/tests/test_template.py::test_template_usable_in_code_generation 761s FAILED ../../build.AEB/src/compyle/tests/test_template.py::test_template_with_extra_args 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_simple_assignment_expression 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_multiple_assignment_expressions 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_if_block - ... 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_conditionals 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_ternary_operator 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_multiple_boolops 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_multiple_bitwise_ops 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_power - Ass... 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_calling_function 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_calling_printf_with_string 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_subscript 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_simple_function_with_return 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_annotated_function 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_py3_annotations 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_calling_method_of_known_type 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_calling_method_of_known_type_in_method 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_while - Ass... 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_bool_true_false_and_none 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_for - Asser... 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_for_with_decreasing_range 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_for_with_declare 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_two_fors - ... 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_for_with_symbols 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_nested_for_with_symbols 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_with_two_functions 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_for_with_break_continue 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_attribute_access 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_declare_call_declares_variable 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_declare_matrix 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_declare_call_declares_multiple_variables 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_class - Ass... 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_wrapping_class 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_wrapping_class_with_ignore_methods 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_cuda_local_conversion 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_handles_parsing_functions 761s FAILED ../../build.AEB/src/compyle/tests/test_translator.py::test_cast_works 761s = 65 failed, 201 passed, 57 skipped, 3 deselected, 1 xfailed, 29 warnings in 238.60s (0:03:58) = 762s E: pybuild pybuild:483: test: plugin distutils failed with: exit code=1: cd /tmp/autopkgtest.78Q9Ou/autopkgtest_tmp/build; python3.14 -m pytest -k "not test_that_multiple_compiles_do_not_occur_for_same_source and not test_const_as_call_arg and not test_const_in_return" --ignore=/tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_cuda.py --ignore=/tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests/test_parallel.py /tmp/autopkgtest.78Q9Ou/build.AEB/src/compyle/tests 762s pybuild-autopkgtest: error: pybuild --autopkgtest --test-pytest -i python{version} -p "3.13 3.14" returned exit code 13 762s make: *** [/tmp/WMQ_xmwOVo/run:4: pybuild-autopkgtest] Error 25 762s pybuild-autopkgtest: error: /tmp/WMQ_xmwOVo/run pybuild-autopkgtest returned exit code 2 763s autopkgtest [16:59:55]: test pybuild-autopkgtest: -----------------------] 767s autopkgtest [16:59:59]: test pybuild-autopkgtest: - - - - - - - - - - results - - - - - - - - - - 767s pybuild-autopkgtest FAIL non-zero exit status 25 771s autopkgtest [17:00:03]: @@@@@@@@@@@@@@@@@@@@ summary 771s pybuild-autopkgtest FAIL non-zero exit status 25