Warning: Permanently added '3.237.33.44' (ED25519) to the list of known hosts. You can reproduce this build on your computer by running: sudo dnf install copr-rpmbuild /usr/bin/copr-rpmbuild --verbose --drop-resultdir --task-url https://copr.fedorainfracloud.org/backend/get-build-task/7078403-fedora-rawhide-x86_64 --chroot fedora-rawhide-x86_64 Version: 0.70 PID: 8928 Logging PID: 8929 Task: {'appstream': False, 'background': False, 'build_id': 7078403, 'buildroot_pkgs': [], 'chroot': 'fedora-rawhide-x86_64', 'enable_net': False, 'fedora_review': False, 'git_hash': '59357809b3ca7b409e31bea5ba6c0fb5978ad64c', 'git_repo': 'https://copr-dist-git.fedorainfracloud.org/git/thrnciar/python-pip-2ebe6bf4/perl-Clownfish', 'isolation': 'default', 'memory_reqs': 2048, 'package_name': 'perl-Clownfish', 'package_version': '0.6.3-21', 'project_dirname': 'python-pip-2ebe6bf4', 'project_name': 'python-pip-2ebe6bf4', 'project_owner': 'thrnciar', 'repo_priority': None, 'repos': [{'baseurl': 'https://download.copr.fedorainfracloud.org/results/thrnciar/python-pip-2ebe6bf4/fedora-rawhide-x86_64/', 'id': 'copr_base', 'name': 'Copr repository', 'priority': None}], 'sandbox': 'thrnciar/python-pip-2ebe6bf4--thrnciar', 'source_json': {}, 'source_type': None, 'submitter': 'thrnciar', 'tags': [], 'task_id': '7078403-fedora-rawhide-x86_64', 'timeout': 18000, 'uses_devel_repo': False, 'with_opts': [], 'without_opts': []} Running: git clone https://copr-dist-git.fedorainfracloud.org/git/thrnciar/python-pip-2ebe6bf4/perl-Clownfish /var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish --depth 500 --no-single-branch --recursive cmd: ['git', 'clone', 'https://copr-dist-git.fedorainfracloud.org/git/thrnciar/python-pip-2ebe6bf4/perl-Clownfish', '/var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish', '--depth', '500', '--no-single-branch', '--recursive'] cwd: . rc: 0 stdout: stderr: Cloning into '/var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish'... Running: git checkout 59357809b3ca7b409e31bea5ba6c0fb5978ad64c -- cmd: ['git', 'checkout', '59357809b3ca7b409e31bea5ba6c0fb5978ad64c', '--'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish rc: 0 stdout: stderr: Note: switching to '59357809b3ca7b409e31bea5ba6c0fb5978ad64c'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 5935780 automatic import of perl-Clownfish Running: copr-distgit-client sources cmd: ['copr-distgit-client', 'sources'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish rc: 0 stdout: stderr: INFO: Reading stdout from command: git rev-parse --abbrev-ref HEAD INFO: Reading stdout from command: git rev-parse HEAD INFO: Reading sources specification file: sources INFO: Downloading Clownfish-0.6.3.tar.gz INFO: Reading stdout from command: curl --help all INFO: Calling: curl -H Pragma: -o Clownfish-0.6.3.tar.gz --location --connect-timeout 60 --retry 3 --retry-delay 10 --remote-time --show-error --fail --retry-all-errors https://copr-dist-git.fedorainfracloud.org/repo/pkgs/thrnciar/python-pip-2ebe6bf4/perl-Clownfish/Clownfish-0.6.3.tar.gz/md5/e161a37281ec96cd22e11c2beb3dce94/Clownfish-0.6.3.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed /usr/bin/tail: /var/lib/copr-rpmbuild/main.log: file truncated 100 230k 100 230k 0 0 6747k 0 --:--:-- --:--:-- --:--:-- 6773k INFO: Reading stdout from command: md5sum Clownfish-0.6.3.tar.gz Running (timeout=18000): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish/perl-Clownfish.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1709237375.611783 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 5.5 starting (python version = 3.12.1, NVR = mock-5.5-1.fc39), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish/perl-Clownfish.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1709237375.611783 -r /var/lib/copr-rpmbuild/results/configs/child.cfg Start(bootstrap): init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish(bootstrap): init plugins Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish/perl-Clownfish.spec) Config(fedora-rawhide-x86_64) Start: clean chroot Finish: clean chroot Mock Version: 5.5 INFO: Mock Version: 5.5 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1709237375.611783/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata INFO: Guessed host environment type: unknown INFO: Using bootstrap image: registry.fedoraproject.org/fedora:rawhide INFO: Pulling image: registry.fedoraproject.org/fedora:rawhide INFO: Copy content of container registry.fedoraproject.org/fedora:rawhide to /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1709237375.611783/root INFO: Checking that registry.fedoraproject.org/fedora:rawhide image matches host's architecture INFO: mounting registry.fedoraproject.org/fedora:rawhide with podman image mount INFO: image registry.fedoraproject.org/fedora:rawhide as /var/lib/containers/storage/overlay/e8dbf0792f75021a089366b8f77f093467f35cb116bb46238f95e9d5dba1c529/merged INFO: umounting image registry.fedoraproject.org/fedora:rawhide (/var/lib/containers/storage/overlay/e8dbf0792f75021a089366b8f77f093467f35cb116bb46238f95e9d5dba1c529/merged) with podman image umount INFO: Using 'dnf' instead of 'dnf5' for bootstrap chroot INFO: Package manager dnf detected and used (fallback) INFO: Bootstrap image not marked ready Start(bootstrap): installing dnf5 tooling No matches found for the following disable plugin patterns: local, spacewalk, versionlock Copr repository 198 MB/s | 11 MB 00:00 fedora 38 MB/s | 20 MB 00:00 Last metadata expiration check: 0:00:01 ago on Thu Feb 29 20:09:38 2024. Dependencies resolved. ================================================================================ Package Architecture Version Repository Size ================================================================================ Installing: dnf5 x86_64 5.1.13-1.fc41 fedora 605 k dnf5-plugins x86_64 5.1.13-1.fc41 fedora 352 k Installing dependencies: fmt x86_64 10.2.1-3.fc41 copr_base 126 k libdnf5 x86_64 5.1.13-1.fc41 fedora 990 k libdnf5-cli x86_64 5.1.13-1.fc41 fedora 263 k sdbus-cpp x86_64 1.5.0-1.fc41 fedora 113 k Transaction Summary ================================================================================ Install 6 Packages Total download size: 2.4 M Installed size: 6.6 M Downloading Packages: (1/6): dnf5-plugins-5.1.13-1.fc41.x86_64.rpm 31 MB/s | 352 kB 00:00 (2/6): fmt-10.2.1-3.fc41.x86_64.rpm 8.6 MB/s | 126 kB 00:00 (3/6): dnf5-5.1.13-1.fc41.x86_64.rpm 37 MB/s | 605 kB 00:00 (4/6): libdnf5-cli-5.1.13-1.fc41.x86_64.rpm 77 MB/s | 263 kB 00:00 (5/6): libdnf5-5.1.13-1.fc41.x86_64.rpm 129 MB/s | 990 kB 00:00 (6/6): sdbus-cpp-1.5.0-1.fc41.x86_64.rpm 41 MB/s | 113 kB 00:00 -------------------------------------------------------------------------------- Total 49 MB/s | 2.4 MB 00:00 Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : fmt-10.2.1-3.fc41.x86_64 1/6 Installing : libdnf5-5.1.13-1.fc41.x86_64 2/6 Installing : libdnf5-cli-5.1.13-1.fc41.x86_64 3/6 Installing : dnf5-5.1.13-1.fc41.x86_64 4/6 Installing : sdbus-cpp-1.5.0-1.fc41.x86_64 5/6 Installing : dnf5-plugins-5.1.13-1.fc41.x86_64 6/6 Running scriptlet: dnf5-plugins-5.1.13-1.fc41.x86_64 6/6 Installed: dnf5-5.1.13-1.fc41.x86_64 dnf5-plugins-5.1.13-1.fc41.x86_64 fmt-10.2.1-3.fc41.x86_64 libdnf5-5.1.13-1.fc41.x86_64 libdnf5-cli-5.1.13-1.fc41.x86_64 sdbus-cpp-1.5.0-1.fc41.x86_64 Complete! INFO: Switching package manager from dnf to the dnf5 (direct choice) Finish(bootstrap): installing dnf5 tooling Start(bootstrap): creating root cache Finish(bootstrap): creating root cache Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1709237375.611783/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Package manager dnf5 detected and used (direct choice) INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.19.1.1-1.fc40.x86_64 rpm-sequoia-1.6.0-2.fc40.x86_64 python3-dnf-4.19.0-1.fc40.noarch yum-4.19.0-1.fc40.noarch dnf5-5.1.13-1.fc41.x86_64 dnf5-plugins-5.1.13-1.fc41.x86_64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: fedora 100% | 157.5 KiB/s | 19.4 KiB | 00m00s Copr repository 100% | 118.4 KiB/s | 1.5 KiB | 00m00s Copr repository 100% | 103.2 MiB/s | 10.6 MiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing group/module packages: bash x86_64 5.2.26-3.fc40 fedora 8.1 MiB bzip2 x86_64 1.0.8-18.fc40 fedora 91.7 KiB coreutils x86_64 9.4-6.fc40 fedora 5.8 MiB cpio x86_64 2.15-1.fc40 fedora 1.1 MiB diffutils x86_64 3.10-5.fc40 fedora 1.6 MiB fedora-release-common noarch 41-0.6 copr_base 19.2 KiB findutils x86_64 1:4.9.0-8.fc40 fedora 1.5 MiB gawk x86_64 5.3.0-3.fc40 fedora 1.7 MiB glibc-minimal-langpack x86_64 2.39.9000-4.fc41 copr_base 0.0 B grep x86_64 3.11-7.fc40 fedora 1.0 MiB gzip x86_64 1.13-1.fc40 fedora 385.0 KiB info x86_64 7.1-2.fc40 fedora 357.8 KiB patch x86_64 2.7.6-24.fc40 fedora 262.8 KiB redhat-rpm-config noarch 285-1.fc41 fedora 185.1 KiB rpm-build x86_64 4.19.1.1-1.fc40 fedora 173.7 KiB sed x86_64 4.9-1.fc40 fedora 861.5 KiB shadow-utils x86_64 2:4.15.0rc2-1.fc41 fedora 4.1 MiB tar x86_64 2:1.35-3.fc40 fedora 2.9 MiB unzip x86_64 6.0-63.fc40 fedora 382.8 KiB util-linux x86_64 2.40-0.11.rc1.fc41 fedora 3.7 MiB which x86_64 2.21-41.fc40 fedora 80.2 KiB xz x86_64 5.4.6-1.fc40 fedora 2.0 MiB Installing dependencies: alternatives x86_64 1.26-3.fc41 copr_base 62.3 KiB ansible-srpm-macros noarch 1-14.fc40 fedora 35.7 KiB audit-libs x86_64 4.0-8.fc41 copr_base 311.3 KiB authselect x86_64 1.5.0-5.fc41 copr_base 153.6 KiB authselect-libs x86_64 1.5.0-5.fc41 copr_base 818.3 KiB basesystem noarch 11-20.fc40 fedora 0.0 B binutils x86_64 2.42.50-4.fc41 copr_base 26.6 MiB binutils-gold x86_64 2.42.50-4.fc41 copr_base 2.0 MiB bzip2-libs x86_64 1.0.8-18.fc40 fedora 80.7 KiB ca-certificates noarch 2023.2.62_v7.0.401-6.fc41 copr_base 2.3 MiB coreutils-common x86_64 9.4-6.fc40 fedora 11.4 MiB cracklib x86_64 2.9.11-5.fc40 fedora 238.9 KiB crypto-policies noarch 20240201-2.git9f501f3.fc41 copr_base 149.3 KiB curl x86_64 8.6.0-7.fc41 copr_base 734.6 KiB cyrus-sasl-lib x86_64 2.1.28-19.fc41 copr_base 2.3 MiB debugedit x86_64 5.0-14.fc40 fedora 199.0 KiB dwz x86_64 0.15-6.fc41 copr_base 290.9 KiB ed x86_64 1.20.1-1.fc41 fedora 146.5 KiB efi-srpm-macros noarch 5-11.fc40 fedora 40.1 KiB elfutils x86_64 0.190-6.fc41 copr_base 2.5 MiB elfutils-debuginfod-client x86_64 0.190-6.fc41 copr_base 64.9 KiB elfutils-default-yama-scope noarch 0.190-6.fc41 copr_base 1.8 KiB elfutils-libelf x86_64 0.190-6.fc41 copr_base 1.0 MiB elfutils-libs x86_64 0.190-6.fc41 copr_base 642.1 KiB fedora-gpg-keys noarch 41-0.1 fedora 125.0 KiB fedora-release noarch 41-0.6 copr_base 0.0 B fedora-release-identity-basic noarch 41-0.6 copr_base 694.0 B fedora-repos noarch 41-0.1 fedora 4.9 KiB fedora-repos-rawhide noarch 41-0.1 fedora 2.2 KiB file x86_64 5.45-5.fc41 copr_base 103.5 KiB file-libs x86_64 5.45-5.fc41 copr_base 9.9 MiB filesystem x86_64 3.18-8.fc40 fedora 106.0 B fonts-srpm-macros noarch 1:2.0.5-14.fc40 fedora 55.3 KiB forge-srpm-macros noarch 0.2.0-3.fc41 copr_base 37.4 KiB fpc-srpm-macros noarch 1.3-12.fc40 fedora 144.0 B gdb-minimal x86_64 14.1-9.fc41 copr_base 12.7 MiB gdbm x86_64 1:1.23-6.fc40 fedora 460.9 KiB gdbm-libs x86_64 1:1.23-6.fc40 fedora 121.9 KiB ghc-srpm-macros noarch 1.6.1-5.fc40 fedora 369.0 B glibc x86_64 2.39.9000-4.fc41 copr_base 6.7 MiB glibc-common x86_64 2.39.9000-4.fc41 copr_base 1.0 MiB glibc-gconv-extra x86_64 2.39.9000-4.fc41 copr_base 7.8 MiB gmp x86_64 1:6.3.0-1.fc41 fedora 803.4 KiB gnat-srpm-macros noarch 6-5.fc40 fedora 1.0 KiB go-srpm-macros noarch 3.4.0-2.fc40 fedora 60.6 KiB jansson x86_64 2.13.1-9.fc41 copr_base 88.3 KiB kernel-srpm-macros noarch 1.0-22.fc40 fedora 1.9 KiB keyutils-libs x86_64 1.6.3-3.fc40 fedora 54.4 KiB krb5-libs x86_64 1.21.2-5.fc41 copr_base 2.3 MiB libacl x86_64 2.3.2-1.fc40 fedora 40.0 KiB libarchive x86_64 3.7.2-3.fc40 fedora 914.6 KiB libattr x86_64 2.5.2-3.fc40 fedora 28.5 KiB libblkid x86_64 2.40-0.11.rc1.fc41 fedora 262.5 KiB libbrotli x86_64 1.1.0-3.fc41 copr_base 829.5 KiB libcap x86_64 2.69-3.fc40 fedora 217.2 KiB libcap-ng x86_64 0.8.4-4.fc41 copr_base 73.1 KiB libcom_err x86_64 1.47.0-5.fc41 copr_base 67.2 KiB libcurl x86_64 8.6.0-7.fc41 copr_base 772.8 KiB libeconf x86_64 0.5.2-3.fc41 copr_base 52.0 KiB libevent x86_64 2.1.12-12.fc41 copr_base 895.7 KiB libfdisk x86_64 2.40-0.11.rc1.fc41 fedora 362.9 KiB libffi x86_64 3.4.4-7.fc40 fedora 81.6 KiB libgcc x86_64 14.0.1-0.7.fc41 fedora 270.6 KiB libgomp x86_64 14.0.1-0.7.fc41 fedora 518.0 KiB libidn2 x86_64 2.3.7-1.fc40 fedora 329.1 KiB libmount x86_64 2.40-0.11.rc1.fc41 fedora 351.8 KiB libnghttp2 x86_64 1.59.0-2.fc41 copr_base 166.1 KiB libnsl2 x86_64 2.0.1-1.fc40 fedora 57.9 KiB libpkgconf x86_64 2.1.0-1.fc40 fedora 74.2 KiB libpsl x86_64 0.21.5-3.fc41 copr_base 80.5 KiB libpwquality x86_64 1.4.5-9.fc41 copr_base 417.8 KiB libselinux x86_64 3.6-4.fc41 copr_base 173.0 KiB libsemanage x86_64 3.6-3.fc41 copr_base 293.5 KiB libsepol x86_64 3.6-3.fc40 fedora 802.0 KiB libsmartcols x86_64 2.40-0.11.rc1.fc41 fedora 180.4 KiB libssh x86_64 0.10.6-4.fc41 copr_base 509.3 KiB libssh-config noarch 0.10.6-4.fc41 copr_base 277.0 B libstdc++ x86_64 14.0.1-0.7.fc41 fedora 2.8 MiB libtasn1 x86_64 4.19.0-6.fc41 copr_base 175.7 KiB libtirpc x86_64 1.3.4-1.rc2.fc40.2 fedora 202.8 KiB libtool-ltdl x86_64 2.4.7-10.fc40 fedora 66.2 KiB libunistring x86_64 1.1-7.fc41 fedora 1.7 MiB libutempter x86_64 1.2.1-13.fc40 fedora 57.7 KiB libuuid x86_64 2.40-0.11.rc1.fc41 fedora 37.4 KiB libverto x86_64 0.3.2-8.fc41 copr_base 29.5 KiB libxcrypt x86_64 4.4.36-5.fc40 fedora 262.8 KiB libxml2 x86_64 2.12.5-1.fc41 copr_base 1.7 MiB libzstd x86_64 1.5.5-5.fc40 fedora 772.0 KiB lua-libs x86_64 5.4.6-5.fc40 fedora 281.1 KiB lua-srpm-macros noarch 1-13.fc40 fedora 1.3 KiB lz4-libs x86_64 1.9.4-6.fc41 copr_base 129.4 KiB mpfr x86_64 4.2.1-3.fc40 fedora 832.0 KiB ncurses-base noarch 6.4-12.20240127.fc40 fedora 326.2 KiB ncurses-libs x86_64 6.4-12.20240127.fc40 fedora 963.2 KiB ocaml-srpm-macros noarch 9-3.fc40 fedora 1.9 KiB openblas-srpm-macros noarch 2-16.fc40 fedora 104.0 B openldap x86_64 2.6.7-1.fc41 copr_base 635.0 KiB openssl-libs x86_64 1:3.2.1-2.fc41 copr_base 7.8 MiB p11-kit x86_64 0.25.3-4.fc40 fedora 2.2 MiB p11-kit-trust x86_64 0.25.3-4.fc40 fedora 391.4 KiB package-notes-srpm-macros noarch 0.5-11.fc40 fedora 1.6 KiB pam x86_64 1.6.0-2.fc41 copr_base 1.8 MiB pam-libs x86_64 1.6.0-2.fc41 copr_base 135.0 KiB pcre2 x86_64 10.42-2.fc40.2 fedora 637.6 KiB pcre2-syntax noarch 10.42-2.fc40.2 fedora 235.1 KiB perl-srpm-macros noarch 1-53.fc40 fedora 861.0 B pkgconf x86_64 2.1.0-1.fc40 fedora 82.4 KiB pkgconf-m4 noarch 2.1.0-1.fc40 fedora 13.9 KiB pkgconf-pkg-config x86_64 2.1.0-1.fc40 fedora 989.0 B popt x86_64 1.19-6.fc40 fedora 136.9 KiB publicsuffix-list-dafsa noarch 20240107-3.fc40 fedora 67.5 KiB pyproject-srpm-macros noarch 1.12.0-1.fc40 fedora 1.5 KiB python-srpm-macros noarch 3.12-7.fc40 fedora 50.1 KiB qt5-srpm-macros noarch 5.15.12-3.fc40 fedora 492.0 B qt6-srpm-macros noarch 6.6.2-1.fc41 fedora 456.0 B readline x86_64 8.2-8.fc40 fedora 489.2 KiB rpm x86_64 4.19.1.1-1.fc40 fedora 3.0 MiB rpm-build-libs x86_64 4.19.1.1-1.fc40 fedora 198.4 KiB rpm-libs x86_64 4.19.1.1-1.fc40 fedora 709.9 KiB rpm-sequoia x86_64 1.6.0-2.fc40 fedora 2.2 MiB rust-srpm-macros noarch 26.1-1.fc41 fedora 4.8 KiB setup noarch 2.14.5-2.fc40 fedora 720.4 KiB sqlite-libs x86_64 3.45.1-2.fc40 fedora 1.4 MiB systemd-libs x86_64 255.3-1.fc40 fedora 1.9 MiB util-linux-core x86_64 2.40-0.11.rc1.fc41 fedora 1.5 MiB xxhash-libs x86_64 0.8.2-2.fc40 fedora 88.5 KiB xz-libs x86_64 5.4.6-1.fc40 fedora 209.8 KiB zig-srpm-macros noarch 1-2.fc40 fedora 1.1 KiB zip x86_64 3.0-40.fc40 fedora 703.2 KiB zlib-ng-compat x86_64 2.1.6-2.fc40 fedora 134.0 KiB zstd x86_64 1.5.5-5.fc40 fedora 1.6 MiB Installing groups: Buildsystem building group Transaction Summary: Installing: 153 packages Total size of inbound packages is 53 MiB. Need to download 0 B. After this operation 178 MiB will be used (install 178 MiB, remove 0 B). [ 1/153] tar-2:1.35-3.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 2/153] bzip2-0:1.0.8-18.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 3/153] redhat-rpm-config-0:285-1.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 4/153] rpm-build-0:4.19.1.1-1.fc40.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 5/153] unzip-0:6.0-63.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 6/153] cpio-0:2.15-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 7/153] which-0:2.21-41.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 8/153] bash-0:5.2.26-3.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 9/153] coreutils-0:9.4-6.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 10/153] grep-0:3.11-7.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 11/153] patch-0:2.7.6-24.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 12/153] sed-0:4.9-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 13/153] shadow-utils-2:4.15.0rc2-1.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 14/153] diffutils-0:3.10-5.fc40.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 15/153] findutils-1:4.9.0-8.fc40.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 16/153] gzip-0:1.13-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 17/153] info-0:7.1-2.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 18/153] xz-0:5.4.6-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 19/153] util-linux-0:2.40-0.11.rc1.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 20/153] fedora-release-common-0:41-0. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 21/153] gawk-0:5.3.0-3.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 22/153] glibc-minimal-langpack-0:2.39 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 23/153] libacl-0:2.3.2-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 24/153] bzip2-libs-0:1.0.8-18.fc40.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 25/153] ansible-srpm-macros-0:1-14.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 26/153] efi-srpm-macros-0:5-11.fc40.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 27/153] fonts-srpm-macros-1:2.0.5-14. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 28/153] fpc-srpm-macros-0:1.3-12.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 29/153] ghc-srpm-macros-0:1.6.1-5.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 30/153] gnat-srpm-macros-0:6-5.fc40.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 31/153] go-srpm-macros-0:3.4.0-2.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 32/153] kernel-srpm-macros-0:1.0-22.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 33/153] lua-srpm-macros-0:1-13.fc40.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 34/153] ocaml-srpm-macros-0:9-3.fc40. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 35/153] openblas-srpm-macros-0:2-16.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 36/153] package-notes-srpm-macros-0:0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 37/153] perl-srpm-macros-0:1-53.fc40. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 38/153] pyproject-srpm-macros-0:1.12. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 39/153] python-srpm-macros-0:3.12-7.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 40/153] qt5-srpm-macros-0:5.15.12-3.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 41/153] qt6-srpm-macros-0:6.6.2-1.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 42/153] rpm-0:4.19.1.1-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 43/153] rust-srpm-macros-0:26.1-1.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 44/153] zig-srpm-macros-0:1-2.fc40.no 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 45/153] zip-0:3.0-40.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 46/153] debugedit-0:5.0-14.fc40.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 47/153] popt-0:1.19-6.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 48/153] readline-0:8.2-8.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 49/153] rpm-build-libs-0:4.19.1.1-1.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 50/153] rpm-libs-0:4.19.1.1-1.fc40.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 51/153] zstd-0:1.5.5-5.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 52/153] filesystem-0:3.18-8.fc40.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 53/153] ncurses-libs-0:6.4-12.2024012 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 54/153] coreutils-common-0:9.4-6.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 55/153] gmp-1:6.3.0-1.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 56/153] libattr-0:2.5.2-3.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 57/153] libcap-0:2.69-3.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 58/153] pcre2-0:10.42-2.fc40.2.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 59/153] ed-0:1.20.1-1.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 60/153] libxcrypt-0:4.4.36-5.fc40.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 61/153] setup-0:2.14.5-2.fc40.noarch 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 62/153] xz-libs-0:5.4.6-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 63/153] libblkid-0:2.40-0.11.rc1.fc41 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 64/153] libfdisk-0:2.40-0.11.rc1.fc41 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 65/153] libmount-0:2.40-0.11.rc1.fc41 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 66/153] libsmartcols-0:2.40-0.11.rc1. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 67/153] libutempter-0:1.2.1-13.fc40.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 68/153] libuuid-0:2.40-0.11.rc1.fc41. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 69/153] systemd-libs-0:255.3-1.fc40.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 70/153] util-linux-core-0:2.40-0.11.r 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 71/153] zlib-ng-compat-0:2.1.6-2.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 72/153] fedora-repos-0:41-0.1.noarch 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 73/153] mpfr-0:4.2.1-3.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 74/153] libarchive-0:3.7.2-3.fc40.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 75/153] libgcc-0:14.0.1-0.7.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 76/153] libgomp-0:14.0.1-0.7.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 77/153] lua-libs-0:5.4.6-5.fc40.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 78/153] libzstd-0:1.5.5-5.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 79/153] rpm-sequoia-0:1.6.0-2.fc40.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 80/153] sqlite-libs-0:3.45.1-2.fc40.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 81/153] libstdc++-0:14.0.1-0.7.fc41.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 82/153] ncurses-base-0:6.4-12.2024012 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 83/153] pcre2-syntax-0:10.42-2.fc40.2 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 84/153] fedora-gpg-keys-0:41-0.1.noar 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 85/153] fedora-repos-rawhide-0:41-0.1 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 86/153] glibc-0:2.39.9000-4.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 87/153] basesystem-0:11-20.fc40.noarc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 88/153] glibc-common-0:2.39.9000-4.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 89/153] glibc-gconv-extra-0:2.39.9000 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 90/153] lz4-libs-0:1.9.4-6.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 91/153] libselinux-0:3.6-4.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 92/153] libsepol-0:3.6-3.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 93/153] audit-libs-0:4.0-8.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 94/153] authselect-libs-0:1.5.0-5.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 95/153] libcap-ng-0:0.8.4-4.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 96/153] pam-0:1.6.0-2.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 97/153] gdbm-libs-1:1.23-6.fc40.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 98/153] libnsl2-0:2.0.1-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 99/153] libtirpc-0:1.3.4-1.rc2.fc40.2 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [100/153] pam-libs-0:1.6.0-2.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [101/153] libeconf-0:0.5.2-3.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [102/153] libsemanage-0:3.6-3.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [103/153] openssl-libs-1:3.2.1-2.fc41.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [104/153] elfutils-libelf-0:0.190-6.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [105/153] elfutils-libs-0:0.190-6.fc41. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [106/153] elfutils-0:0.190-6.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [107/153] file-libs-0:5.45-5.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [108/153] binutils-0:2.42.50-4.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [109/153] elfutils-debuginfod-client-0: 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [110/153] file-0:5.45-5.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [111/153] pkgconf-pkg-config-0:2.1.0-1. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [112/153] pkgconf-0:2.1.0-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [113/153] pkgconf-m4-0:2.1.0-1.fc40.noa 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [114/153] libpkgconf-0:2.1.0-1.fc40.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [115/153] curl-0:8.6.0-7.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [116/153] dwz-0:0.15-6.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [117/153] forge-srpm-macros-0:0.2.0-3.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [118/153] krb5-libs-0:1.21.2-5.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [119/153] keyutils-libs-0:1.6.3-3.fc40. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [120/153] libcom_err-0:1.47.0-5.fc41.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [121/153] libxml2-0:2.12.5-1.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [122/153] authselect-0:1.5.0-5.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [123/153] gdbm-1:1.23-6.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [124/153] libpwquality-0:1.4.5-9.fc41.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [125/153] cracklib-0:2.9.11-5.fc40.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [126/153] ca-certificates-0:2023.2.62_v 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [127/153] crypto-policies-0:20240201-2. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [128/153] libverto-0:0.3.2-8.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [129/153] elfutils-default-yama-scope-0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [130/153] p11-kit-0:0.25.3-4.fc40.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [131/153] libffi-0:3.4.4-7.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [132/153] p11-kit-trust-0:0.25.3-4.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [133/153] alternatives-0:1.26-3.fc41.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [134/153] binutils-gold-0:2.42.50-4.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [135/153] jansson-0:2.13.1-9.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [136/153] libtasn1-0:4.19.0-6.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [137/153] fedora-release-0:41-0.6.noarc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [138/153] fedora-release-identity-basic 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [139/153] libcurl-0:8.6.0-7.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [140/153] libidn2-0:2.3.7-1.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [141/153] libunistring-0:1.1-7.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [142/153] gdb-minimal-0:14.1-9.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [143/153] xxhash-libs-0:0.8.2-2.fc40.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [144/153] libbrotli-0:1.1.0-3.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [145/153] libnghttp2-0:1.59.0-2.fc41.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [146/153] libpsl-0:0.21.5-3.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [147/153] publicsuffix-list-dafsa-0:202 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [148/153] libssh-0:0.10.6-4.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [149/153] libssh-config-0:0.10.6-4.fc41 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [150/153] openldap-0:2.6.7-1.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [151/153] libtool-ltdl-0:2.4.7-10.fc40. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [152/153] cyrus-sasl-lib-0:2.1.28-19.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [153/153] libevent-0:2.1.12-12.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded -------------------------------------------------------------------------------- [153/153] Total 100% | 0.0 B/s | 0.0 B | 00m00s Running transaction Importing PGP key 0xE99D6AD1: Userid : "Fedora (41) " Fingerprint: 466CF2D8B60BC3057AA9453ED0622462E99D6AD1 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-41-primary The key was successfully imported. Importing PGP key 0xE99D6AD1: Userid : "Fedora (41) " Fingerprint: 466CF2D8B60BC3057AA9453ED0622462E99D6AD1 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-41-primary The key was successfully imported. Importing PGP key 0xA15B79CC: Userid : "Fedora (40) " Fingerprint: 115DF9AEF857853EE8445D0A0727707EA15B79CC From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-40-primary The key was successfully imported. [ 1/155] Verify package files 100% | 735.0 B/s | 153.0 B | 00m00s >>> Running pre-transaction scriptlet: filesystem-0:3.18-8.fc40.x86_64 >>> Stop pre-transaction scriptlet: filesystem-0:3.18-8.fc40.x86_64 [ 2/155] Prepare transaction 100% | 4.5 KiB/s | 153.0 B | 00m00s [ 3/155] Installing libgcc-0:14.0.1-0. 100% | 265.9 MiB/s | 272.3 KiB | 00m00s >>> Running post-install scriptlet: libgcc-0:14.0.1-0.7.fc41.x86_64 >>> Stop post-install scriptlet: libgcc-0:14.0.1-0.7.fc41.x86_64 [ 4/155] Installing crypto-policies-0: 100% | 44.4 MiB/s | 181.7 KiB | 00m00s >>> Running post-install scriptlet: crypto-policies-0:20240201-2.git9f501f3.fc41 >>> Stop post-install scriptlet: crypto-policies-0:20240201-2.git9f501f3.fc41.no [ 5/155] Installing fedora-release-ide 100% | 0.0 B/s | 952.0 B | 00m00s [ 6/155] Installing fedora-gpg-keys-0: 100% | 55.4 MiB/s | 170.1 KiB | 00m00s [ 7/155] Installing fedora-repos-rawhi 100% | 0.0 B/s | 2.4 KiB | 00m00s [ 8/155] Installing fedora-repos-0:41- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 9/155] Installing fedora-release-com 100% | 0.0 B/s | 23.3 KiB | 00m00s [ 10/155] Installing fedora-release-0:4 100% | 0.0 B/s | 124.0 B | 00m00s [ 11/155] Installing setup-0:2.14.5-2.f 100% | 64.4 MiB/s | 725.8 KiB | 00m00s >>> Running post-install scriptlet: setup-0:2.14.5-2.fc40.noarch >>> Stop post-install scriptlet: setup-0:2.14.5-2.fc40.noarch [ 12/155] Installing filesystem-0:3.18- 100% | 3.7 MiB/s | 212.4 KiB | 00m00s [ 13/155] Installing basesystem-0:11-20 100% | 0.0 B/s | 124.0 B | 00m00s [ 14/155] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 15/155] Installing publicsuffix-list- 100% | 0.0 B/s | 68.3 KiB | 00m00s [ 16/155] Installing pkgconf-m4-0:2.1.0 100% | 0.0 B/s | 14.3 KiB | 00m00s [ 17/155] Installing pcre2-syntax-0:10. 100% | 232.0 MiB/s | 237.6 KiB | 00m00s [ 18/155] Installing ncurses-base-0:6.4 100% | 114.5 MiB/s | 351.6 KiB | 00m00s [ 19/155] Installing glibc-minimal-lang 100% | 0.0 B/s | 124.0 B | 00m00s [ 20/155] Installing ncurses-libs-0:6.4 100% | 236.7 MiB/s | 969.7 KiB | 00m00s >>> Running pre-install scriptlet: glibc-0:2.39.9000-4.fc41.x86_64 >>> Stop pre-install scriptlet: glibc-0:2.39.9000-4.fc41.x86_64 [ 21/155] Installing glibc-0:2.39.9000- 100% | 249.9 MiB/s | 6.7 MiB | 00m00s >>> Running post-install scriptlet: glibc-0:2.39.9000-4.fc41.x86_64 >>> Stop post-install scriptlet: glibc-0:2.39.9000-4.fc41.x86_64 [ 22/155] Installing bash-0:5.2.26-3.fc 100% | 429.5 MiB/s | 8.2 MiB | 00m00s >>> Running post-install scriptlet: bash-0:5.2.26-3.fc40.x86_64 >>> Stop post-install scriptlet: bash-0:5.2.26-3.fc40.x86_64 [ 23/155] Installing glibc-common-0:2.3 100% | 204.1 MiB/s | 1.0 MiB | 00m00s [ 24/155] Installing glibc-gconv-extra- 100% | 280.9 MiB/s | 7.9 MiB | 00m00s >>> Running post-install scriptlet: glibc-gconv-extra-0:2.39.9000-4.fc41.x86_64 >>> Stop post-install scriptlet: glibc-gconv-extra-0:2.39.9000-4.fc41.x86_64 [ 25/155] Installing zlib-ng-compat-0:2 100% | 131.7 MiB/s | 134.8 KiB | 00m00s [ 26/155] Installing xz-libs-0:5.4.6-1. 100% | 206.0 MiB/s | 210.9 KiB | 00m00s [ 27/155] Installing bzip2-libs-0:1.0.8 100% | 79.9 MiB/s | 81.8 KiB | 00m00s [ 28/155] Installing popt-0:1.19-6.fc40 100% | 70.1 MiB/s | 143.5 KiB | 00m00s [ 29/155] Installing readline-0:8.2-8.f 100% | 479.9 MiB/s | 491.4 KiB | 00m00s [ 30/155] Installing libuuid-0:2.40-0.1 100% | 0.0 B/s | 38.5 KiB | 00m00s [ 31/155] Installing libzstd-0:1.5.5-5. 100% | 377.5 MiB/s | 773.2 KiB | 00m00s [ 32/155] Installing elfutils-libelf-0: 100% | 328.6 MiB/s | 1.0 MiB | 00m00s [ 33/155] Installing libstdc++-0:14.0.1 100% | 394.7 MiB/s | 2.8 MiB | 00m00s [ 34/155] Installing libblkid-0:2.40-0. 100% | 257.5 MiB/s | 263.7 KiB | 00m00s [ 35/155] Installing gmp-1:6.3.0-1.fc41 100% | 393.4 MiB/s | 805.6 KiB | 00m00s [ 36/155] Installing libattr-0:2.5.2-3. 100% | 0.0 B/s | 29.5 KiB | 00m00s [ 37/155] Installing libacl-0:2.3.2-1.f 100% | 0.0 B/s | 40.8 KiB | 00m00s [ 38/155] Installing libxcrypt-0:4.4.36 100% | 259.3 MiB/s | 265.5 KiB | 00m00s [ 39/155] Installing lz4-libs-0:1.9.4-6 100% | 127.4 MiB/s | 130.5 KiB | 00m00s [ 40/155] Installing gdbm-libs-1:1.23-6 100% | 120.7 MiB/s | 123.6 KiB | 00m00s [ 41/155] Installing libeconf-0:0.5.2-3 100% | 52.4 MiB/s | 53.7 KiB | 00m00s [ 42/155] Installing mpfr-0:4.2.1-3.fc4 100% | 407.0 MiB/s | 833.5 KiB | 00m00s [ 43/155] Installing gawk-0:5.3.0-3.fc4 100% | 345.6 MiB/s | 1.7 MiB | 00m00s [ 44/155] Installing dwz-0:0.15-6.fc41. 100% | 285.4 MiB/s | 292.3 KiB | 00m00s [ 45/155] Installing unzip-0:6.0-63.fc4 100% | 377.3 MiB/s | 386.3 KiB | 00m00s [ 46/155] Installing file-libs-0:5.45-5 100% | 709.3 MiB/s | 9.9 MiB | 00m00s [ 47/155] Installing file-0:5.45-5.fc41 100% | 102.6 MiB/s | 105.0 KiB | 00m00s [ 48/155] Installing pcre2-0:10.42-2.fc 100% | 312.0 MiB/s | 639.1 KiB | 00m00s [ 49/155] Installing grep-0:3.11-7.fc40 100% | 250.8 MiB/s | 1.0 MiB | 00m00s [ 50/155] Installing xz-0:5.4.6-1.fc40. 100% | 333.8 MiB/s | 2.0 MiB | 00m00s [ 51/155] Installing libsmartcols-0:2.4 100% | 177.3 MiB/s | 181.5 KiB | 00m00s [ 52/155] Installing lua-libs-0:5.4.6-5 100% | 275.7 MiB/s | 282.3 KiB | 00m00s [ 53/155] Installing libsepol-0:3.6-3.f 100% | 392.1 MiB/s | 803.0 KiB | 00m00s [ 54/155] Installing libselinux-0:3.6-4 100% | 170.2 MiB/s | 174.3 KiB | 00m00s [ 55/155] Installing sed-0:4.9-1.fc40.x 100% | 212.3 MiB/s | 869.7 KiB | 00m00s [ 56/155] Installing findutils-1:4.9.0- 100% | 366.5 MiB/s | 1.5 MiB | 00m00s [ 57/155] Installing libmount-0:2.40-0. 100% | 344.7 MiB/s | 352.9 KiB | 00m00s [ 58/155] Installing libcap-ng-0:0.8.4- 100% | 0.0 B/s | 75.0 KiB | 00m00s [ 59/155] Installing audit-libs-0:4.0-8 100% | 306.0 MiB/s | 313.4 KiB | 00m00s [ 60/155] Installing pam-libs-0:1.6.0-2 100% | 134.2 MiB/s | 137.4 KiB | 00m00s [ 61/155] Installing libcap-0:2.69-3.fc 100% | 108.3 MiB/s | 221.9 KiB | 00m00s [ 62/155] Installing systemd-libs-0:255 100% | 386.1 MiB/s | 1.9 MiB | 00m00s [ 63/155] Installing libcom_err-0:1.47. 100% | 0.0 B/s | 68.3 KiB | 00m00s [ 64/155] Installing alternatives-0:1.2 100% | 0.0 B/s | 64.0 KiB | 00m00s [ 65/155] Installing jansson-0:2.13.1-9 100% | 0.0 B/s | 89.7 KiB | 00m00s [ 66/155] Installing libtasn1-0:4.19.0- 100% | 173.3 MiB/s | 177.5 KiB | 00m00s [ 67/155] Installing libunistring-0:1.1 100% | 346.1 MiB/s | 1.7 MiB | 00m00s [ 68/155] Installing libidn2-0:2.3.7-1. 100% | 163.6 MiB/s | 335.0 KiB | 00m00s [ 69/155] Installing libpsl-0:0.21.5-3. 100% | 79.7 MiB/s | 81.6 KiB | 00m00s [ 70/155] Installing util-linux-core-0: 100% | 296.6 MiB/s | 1.5 MiB | 00m00s [ 71/155] Installing libsemanage-0:3.6- 100% | 144.2 MiB/s | 295.3 KiB | 00m00s [ 72/155] Installing shadow-utils-2:4.1 100% | 174.0 MiB/s | 4.2 MiB | 00m00s >>> Running pre-install scriptlet: libutempter-0:1.2.1-13.fc40.x86_64 >>> Stop pre-install scriptlet: libutempter-0:1.2.1-13.fc40.x86_64 [ 73/155] Installing libutempter-0:1.2. 100% | 58.3 MiB/s | 59.7 KiB | 00m00s [ 74/155] Installing tar-2:1.35-3.fc40. 100% | 368.8 MiB/s | 3.0 MiB | 00m00s [ 75/155] Installing zip-0:3.0-40.fc40. 100% | 345.3 MiB/s | 707.1 KiB | 00m00s [ 76/155] Installing gdbm-1:1.23-6.fc40 100% | 227.4 MiB/s | 465.8 KiB | 00m00s [ 77/155] Installing cyrus-sasl-lib-0:2 100% | 381.8 MiB/s | 2.3 MiB | 00m00s [ 78/155] Installing zstd-0:1.5.5-5.fc4 100% | 411.6 MiB/s | 1.6 MiB | 00m00s [ 79/155] Installing libfdisk-0:2.40-0. 100% | 355.5 MiB/s | 364.0 KiB | 00m00s [ 80/155] Installing bzip2-0:1.0.8-18.f 100% | 93.9 MiB/s | 96.2 KiB | 00m00s [ 81/155] Installing libxml2-0:2.12.5-1 100% | 425.0 MiB/s | 1.7 MiB | 00m00s [ 82/155] Installing sqlite-libs-0:3.45 100% | 350.3 MiB/s | 1.4 MiB | 00m00s [ 83/155] Installing ed-0:1.20.1-1.fc41 100% | 145.3 MiB/s | 148.8 KiB | 00m00s [ 84/155] Installing patch-0:2.7.6-24.f 100% | 258.1 MiB/s | 264.3 KiB | 00m00s [ 85/155] Installing elfutils-default-y 100% | 408.6 KiB/s | 2.0 KiB | 00m00s >>> Running post-install scriptlet: elfutils-default-yama-scope-0:0.190-6.fc41.n >>> Stop post-install scriptlet: elfutils-default-yama-scope-0:0.190-6.fc41.noar [ 86/155] Installing cpio-0:2.15-1.fc40 100% | 274.9 MiB/s | 1.1 MiB | 00m00s [ 87/155] Installing diffutils-0:3.10-5 100% | 317.2 MiB/s | 1.6 MiB | 00m00s [ 88/155] Installing libgomp-0:14.0.1-0 100% | 507.3 MiB/s | 519.4 KiB | 00m00s [ 89/155] Installing libpkgconf-0:2.1.0 100% | 0.0 B/s | 75.3 KiB | 00m00s [ 90/155] Installing pkgconf-0:2.1.0-1. 100% | 82.9 MiB/s | 84.9 KiB | 00m00s [ 91/155] Installing pkgconf-pkg-config 100% | 0.0 B/s | 1.8 KiB | 00m00s [ 92/155] Installing keyutils-libs-0:1. 100% | 0.0 B/s | 55.8 KiB | 00m00s [ 93/155] Installing libverto-0:0.3.2-8 100% | 0.0 B/s | 31.3 KiB | 00m00s [ 94/155] Installing libffi-0:3.4.4-7.f 100% | 81.0 MiB/s | 83.0 KiB | 00m00s [ 95/155] Installing p11-kit-0:0.25.3-4 100% | 313.5 MiB/s | 2.2 MiB | 00m00s [ 96/155] Installing p11-kit-trust-0:0. 100% | 64.0 MiB/s | 393.1 KiB | 00m00s >>> Running post-install scriptlet: p11-kit-trust-0:0.25.3-4.fc40.x86_64 >>> Stop post-install scriptlet: p11-kit-trust-0:0.25.3-4.fc40.x86_64 [ 97/155] Installing xxhash-libs-0:0.8. 100% | 87.8 MiB/s | 89.9 KiB | 00m00s [ 98/155] Installing libbrotli-0:1.1.0- 100% | 406.2 MiB/s | 831.8 KiB | 00m00s [ 99/155] Installing libnghttp2-0:1.59. 100% | 163.3 MiB/s | 167.2 KiB | 00m00s [100/155] Installing libtool-ltdl-0:2.4 100% | 65.7 MiB/s | 67.3 KiB | 00m00s [101/155] Installing coreutils-common-0 100% | 440.9 MiB/s | 11.5 MiB | 00m00s [102/155] Installing openssl-libs-1:3.2 100% | 458.4 MiB/s | 7.8 MiB | 00m00s [103/155] Installing coreutils-0:9.4-6. 100% | 323.0 MiB/s | 5.8 MiB | 00m00s >>> Running pre-install scriptlet: ca-certificates-0:2023.2.62_v7.0.401-6.fc41.n >>> Stop pre-install scriptlet: ca-certificates-0:2023.2.62_v7.0.401-6.fc41.noar [104/155] Installing ca-certificates-0: 100% | 4.3 MiB/s | 2.3 MiB | 00m01s >>> Running post-install scriptlet: ca-certificates-0:2023.2.62_v7.0.401-6.fc41. >>> Stop post-install scriptlet: ca-certificates-0:2023.2.62_v7.0.401-6.fc41.noa [105/155] Installing krb5-libs-0:1.21.2 100% | 286.8 MiB/s | 2.3 MiB | 00m00s [106/155] Installing libtirpc-0:1.3.4-1 100% | 199.8 MiB/s | 204.6 KiB | 00m00s [107/155] Installing gzip-0:1.13-1.fc40 100% | 190.7 MiB/s | 390.6 KiB | 00m00s [108/155] Installing authselect-libs-0: 100% | 203.4 MiB/s | 833.2 KiB | 00m00s [109/155] Installing authselect-0:1.5.0 100% | 77.1 MiB/s | 157.9 KiB | 00m00s [110/155] Installing cracklib-0:2.9.11- 100% | 81.5 MiB/s | 250.3 KiB | 00m00s [111/155] Installing libpwquality-0:1.4 100% | 140.0 MiB/s | 430.1 KiB | 00m00s [112/155] Installing libnsl2-0:2.0.1-1. 100% | 57.7 MiB/s | 59.0 KiB | 00m00s [113/155] Installing pam-0:1.6.0-2.fc41 100% | 181.1 MiB/s | 1.8 MiB | 00m00s [114/155] Installing libssh-0:0.10.6-4. 100% | 249.7 MiB/s | 511.3 KiB | 00m00s [115/155] Installing libarchive-0:3.7.2 100% | 298.4 MiB/s | 916.6 KiB | 00m00s [116/155] Installing rpm-sequoia-0:1.6. 100% | 445.9 MiB/s | 2.2 MiB | 00m00s [117/155] Installing rpm-libs-0:4.19.1. 100% | 347.4 MiB/s | 711.4 KiB | 00m00s [118/155] Installing libevent-0:2.1.12- 100% | 439.2 MiB/s | 899.5 KiB | 00m00s [119/155] Installing openldap-0:2.6.7-1 100% | 311.9 MiB/s | 638.8 KiB | 00m00s [120/155] Installing libcurl-0:8.6.0-7. 100% | 377.9 MiB/s | 773.9 KiB | 00m00s [121/155] Installing elfutils-libs-0:0. 100% | 314.4 MiB/s | 644.0 KiB | 00m00s [122/155] Installing elfutils-debuginfo 100% | 65.3 MiB/s | 66.9 KiB | 00m00s [123/155] Installing binutils-0:2.42.50 100% | 423.2 MiB/s | 26.7 MiB | 00m00s >>> Running post-install scriptlet: binutils-0:2.42.50-4.fc41.x86_64 >>> Stop post-install scriptlet: binutils-0:2.42.50-4.fc41.x86_64 [124/155] Installing binutils-gold-0:2. 100% | 203.1 MiB/s | 2.0 MiB | 00m00s >>> Running post-install scriptlet: binutils-gold-0:2.42.50-4.fc41.x86_64 >>> Stop post-install scriptlet: binutils-gold-0:2.42.50-4.fc41.x86_64 [125/155] Installing elfutils-0:0.190-6 100% | 421.5 MiB/s | 2.5 MiB | 00m00s [126/155] Installing gdb-minimal-0:14.1 100% | 436.6 MiB/s | 12.7 MiB | 00m00s [127/155] Installing debugedit-0:5.0-14 100% | 197.0 MiB/s | 201.7 KiB | 00m00s [128/155] Installing rpm-build-libs-0:4 100% | 194.5 MiB/s | 199.2 KiB | 00m00s [129/155] Installing curl-0:8.6.0-7.fc4 100% | 80.0 MiB/s | 736.9 KiB | 00m00s >>> Running pre-install scriptlet: rpm-0:4.19.1.1-1.fc40.x86_64 >>> Stop pre-install scriptlet: rpm-0:4.19.1.1-1.fc40.x86_64 [130/155] Installing rpm-0:4.19.1.1-1.f 100% | 184.4 MiB/s | 2.4 MiB | 00m00s [131/155] Installing efi-srpm-macros-0: 100% | 40.2 MiB/s | 41.2 KiB | 00m00s [132/155] Installing lua-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [133/155] Installing zig-srpm-macros-0: 100% | 0.0 B/s | 1.7 KiB | 00m00s [134/155] Installing rust-srpm-macros-0 100% | 0.0 B/s | 5.5 KiB | 00m00s [135/155] Installing qt6-srpm-macros-0: 100% | 0.0 B/s | 732.0 B | 00m00s [136/155] Installing qt5-srpm-macros-0: 100% | 0.0 B/s | 768.0 B | 00m00s [137/155] Installing perl-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [138/155] Installing package-notes-srpm 100% | 0.0 B/s | 2.0 KiB | 00m00s [139/155] Installing openblas-srpm-macr 100% | 0.0 B/s | 384.0 B | 00m00s [140/155] Installing ocaml-srpm-macros- 100% | 0.0 B/s | 2.2 KiB | 00m00s [141/155] Installing kernel-srpm-macros 100% | 0.0 B/s | 2.3 KiB | 00m00s [142/155] Installing gnat-srpm-macros-0 100% | 0.0 B/s | 1.3 KiB | 00m00s [143/155] Installing ghc-srpm-macros-0: 100% | 0.0 B/s | 648.0 B | 00m00s [144/155] Installing fpc-srpm-macros-0: 100% | 0.0 B/s | 420.0 B | 00m00s [145/155] Installing ansible-srpm-macro 100% | 0.0 B/s | 36.2 KiB | 00m00s [146/155] Installing python-srpm-macros 100% | 0.0 B/s | 51.3 KiB | 00m00s [147/155] Installing fonts-srpm-macros- 100% | 0.0 B/s | 56.5 KiB | 00m00s [148/155] Installing go-srpm-macros-0:3 100% | 0.0 B/s | 61.6 KiB | 00m00s [149/155] Installing forge-srpm-macros- 100% | 0.0 B/s | 38.6 KiB | 00m00s [150/155] Installing redhat-rpm-config- 100% | 187.0 MiB/s | 191.4 KiB | 00m00s [151/155] Installing rpm-build-0:4.19.1 100% | 88.8 MiB/s | 182.0 KiB | 00m00s [152/155] Installing pyproject-srpm-mac 100% | 2.0 MiB/s | 2.1 KiB | 00m00s [153/155] Installing util-linux-0:2.40- 100% | 207.6 MiB/s | 3.7 MiB | 00m00s >>> Running post-install scriptlet: util-linux-0:2.40-0.11.rc1.fc41.x86_64 >>> Stop post-install scriptlet: util-linux-0:2.40-0.11.rc1.fc41.x86_64 [154/155] Installing which-0:2.21-41.fc 100% | 80.5 MiB/s | 82.4 KiB | 00m00s [155/155] Installing info-0:7.1-2.fc40. 100% | 471.3 KiB/s | 358.2 KiB | 00m01s >>> Running post-transaction scriptlet: filesystem-0:3.18-8.fc40.x86_64 >>> Stop post-transaction scriptlet: filesystem-0:3.18-8.fc40.x86_64 >>> Running post-transaction scriptlet: ca-certificates-0:2023.2.62_v7.0.401-6.f >>> Stop post-transaction scriptlet: ca-certificates-0:2023.2.62_v7.0.401-6.fc41 >>> Running post-transaction scriptlet: authselect-libs-0:1.5.0-5.fc41.x86_64 >>> Stop post-transaction scriptlet: authselect-libs-0:1.5.0-5.fc41.x86_64 >>> Running post-transaction scriptlet: rpm-0:4.19.1.1-1.fc40.x86_64 >>> Stop post-transaction scriptlet: rpm-0:4.19.1.1-1.fc40.x86_64 >>> Running trigger-install scriptlet: glibc-common-0:2.39.9000-4.fc41.x86_64 >>> Stop trigger-install scriptlet: glibc-common-0:2.39.9000-4.fc41.x86_64 >>> Running trigger-install scriptlet: info-0:7.1-2.fc40.x86_64 >>> Stop trigger-install scriptlet: info-0:7.1-2.fc40.x86_64 Warning: skipped PGP checks for 50 package(s). Finish: installing minimal buildroot with dnf5 Start: creating root cache Finish: creating root cache Finish: chroot init INFO: Installed packages: INFO: alternatives-1.26-3.fc41.x86_64 ansible-srpm-macros-1-14.fc40.noarch audit-libs-4.0-8.fc41.x86_64 authselect-1.5.0-5.fc41.x86_64 authselect-libs-1.5.0-5.fc41.x86_64 basesystem-11-20.fc40.noarch bash-5.2.26-3.fc40.x86_64 binutils-2.42.50-4.fc41.x86_64 binutils-gold-2.42.50-4.fc41.x86_64 bzip2-1.0.8-18.fc40.x86_64 bzip2-libs-1.0.8-18.fc40.x86_64 ca-certificates-2023.2.62_v7.0.401-6.fc41.noarch coreutils-9.4-6.fc40.x86_64 coreutils-common-9.4-6.fc40.x86_64 cpio-2.15-1.fc40.x86_64 cracklib-2.9.11-5.fc40.x86_64 crypto-policies-20240201-2.git9f501f3.fc41.noarch curl-8.6.0-7.fc41.x86_64 cyrus-sasl-lib-2.1.28-19.fc41.x86_64 debugedit-5.0-14.fc40.x86_64 diffutils-3.10-5.fc40.x86_64 dwz-0.15-6.fc41.x86_64 ed-1.20.1-1.fc41.x86_64 efi-srpm-macros-5-11.fc40.noarch elfutils-0.190-6.fc41.x86_64 elfutils-debuginfod-client-0.190-6.fc41.x86_64 elfutils-default-yama-scope-0.190-6.fc41.noarch elfutils-libelf-0.190-6.fc41.x86_64 elfutils-libs-0.190-6.fc41.x86_64 fedora-gpg-keys-41-0.1.noarch fedora-release-41-0.6.noarch fedora-release-common-41-0.6.noarch fedora-release-identity-basic-41-0.6.noarch fedora-repos-41-0.1.noarch fedora-repos-rawhide-41-0.1.noarch file-5.45-5.fc41.x86_64 file-libs-5.45-5.fc41.x86_64 filesystem-3.18-8.fc40.x86_64 findutils-4.9.0-8.fc40.x86_64 fonts-srpm-macros-2.0.5-14.fc40.noarch forge-srpm-macros-0.2.0-3.fc41.noarch fpc-srpm-macros-1.3-12.fc40.noarch gawk-5.3.0-3.fc40.x86_64 gdb-minimal-14.1-9.fc41.x86_64 gdbm-1.23-6.fc40.x86_64 gdbm-libs-1.23-6.fc40.x86_64 ghc-srpm-macros-1.6.1-5.fc40.noarch glibc-2.39.9000-4.fc41.x86_64 glibc-common-2.39.9000-4.fc41.x86_64 glibc-gconv-extra-2.39.9000-4.fc41.x86_64 glibc-minimal-langpack-2.39.9000-4.fc41.x86_64 gmp-6.3.0-1.fc41.x86_64 gnat-srpm-macros-6-5.fc40.noarch go-srpm-macros-3.4.0-2.fc40.noarch gpg-pubkey-a15b79cc-63d04c2c gpg-pubkey-e99d6ad1-64d2612c grep-3.11-7.fc40.x86_64 gzip-1.13-1.fc40.x86_64 info-7.1-2.fc40.x86_64 jansson-2.13.1-9.fc41.x86_64 kernel-srpm-macros-1.0-22.fc40.noarch keyutils-libs-1.6.3-3.fc40.x86_64 krb5-libs-1.21.2-5.fc41.x86_64 libacl-2.3.2-1.fc40.x86_64 libarchive-3.7.2-3.fc40.x86_64 libattr-2.5.2-3.fc40.x86_64 libblkid-2.40-0.11.rc1.fc41.x86_64 libbrotli-1.1.0-3.fc41.x86_64 libcap-2.69-3.fc40.x86_64 libcap-ng-0.8.4-4.fc41.x86_64 libcom_err-1.47.0-5.fc41.x86_64 libcurl-8.6.0-7.fc41.x86_64 libeconf-0.5.2-3.fc41.x86_64 libevent-2.1.12-12.fc41.x86_64 libfdisk-2.40-0.11.rc1.fc41.x86_64 libffi-3.4.4-7.fc40.x86_64 libgcc-14.0.1-0.7.fc41.x86_64 libgomp-14.0.1-0.7.fc41.x86_64 libidn2-2.3.7-1.fc40.x86_64 libmount-2.40-0.11.rc1.fc41.x86_64 libnghttp2-1.59.0-2.fc41.x86_64 libnsl2-2.0.1-1.fc40.x86_64 libpkgconf-2.1.0-1.fc40.x86_64 libpsl-0.21.5-3.fc41.x86_64 libpwquality-1.4.5-9.fc41.x86_64 libselinux-3.6-4.fc41.x86_64 libsemanage-3.6-3.fc41.x86_64 libsepol-3.6-3.fc40.x86_64 libsmartcols-2.40-0.11.rc1.fc41.x86_64 libssh-0.10.6-4.fc41.x86_64 libssh-config-0.10.6-4.fc41.noarch libstdc++-14.0.1-0.7.fc41.x86_64 libtasn1-4.19.0-6.fc41.x86_64 libtirpc-1.3.4-1.rc2.fc40.2.x86_64 libtool-ltdl-2.4.7-10.fc40.x86_64 libunistring-1.1-7.fc41.x86_64 libutempter-1.2.1-13.fc40.x86_64 libuuid-2.40-0.11.rc1.fc41.x86_64 libverto-0.3.2-8.fc41.x86_64 libxcrypt-4.4.36-5.fc40.x86_64 libxml2-2.12.5-1.fc41.x86_64 libzstd-1.5.5-5.fc40.x86_64 lua-libs-5.4.6-5.fc40.x86_64 lua-srpm-macros-1-13.fc40.noarch lz4-libs-1.9.4-6.fc41.x86_64 mpfr-4.2.1-3.fc40.x86_64 ncurses-base-6.4-12.20240127.fc40.noarch ncurses-libs-6.4-12.20240127.fc40.x86_64 ocaml-srpm-macros-9-3.fc40.noarch openblas-srpm-macros-2-16.fc40.noarch openldap-2.6.7-1.fc41.x86_64 openssl-libs-3.2.1-2.fc41.x86_64 p11-kit-0.25.3-4.fc40.x86_64 p11-kit-trust-0.25.3-4.fc40.x86_64 package-notes-srpm-macros-0.5-11.fc40.noarch pam-1.6.0-2.fc41.x86_64 pam-libs-1.6.0-2.fc41.x86_64 patch-2.7.6-24.fc40.x86_64 pcre2-10.42-2.fc40.2.x86_64 pcre2-syntax-10.42-2.fc40.2.noarch perl-srpm-macros-1-53.fc40.noarch pkgconf-2.1.0-1.fc40.x86_64 pkgconf-m4-2.1.0-1.fc40.noarch pkgconf-pkg-config-2.1.0-1.fc40.x86_64 popt-1.19-6.fc40.x86_64 publicsuffix-list-dafsa-20240107-3.fc40.noarch pyproject-srpm-macros-1.12.0-1.fc40.noarch python-srpm-macros-3.12-7.fc40.noarch qt5-srpm-macros-5.15.12-3.fc40.noarch qt6-srpm-macros-6.6.2-1.fc41.noarch readline-8.2-8.fc40.x86_64 redhat-rpm-config-285-1.fc41.noarch rpm-4.19.1.1-1.fc40.x86_64 rpm-build-4.19.1.1-1.fc40.x86_64 rpm-build-libs-4.19.1.1-1.fc40.x86_64 rpm-libs-4.19.1.1-1.fc40.x86_64 rpm-sequoia-1.6.0-2.fc40.x86_64 rust-srpm-macros-26.1-1.fc41.noarch sed-4.9-1.fc40.x86_64 setup-2.14.5-2.fc40.noarch shadow-utils-4.15.0rc2-1.fc41.x86_64 sqlite-libs-3.45.1-2.fc40.x86_64 systemd-libs-255.3-1.fc40.x86_64 tar-1.35-3.fc40.x86_64 unzip-6.0-63.fc40.x86_64 util-linux-2.40-0.11.rc1.fc41.x86_64 util-linux-core-2.40-0.11.rc1.fc41.x86_64 which-2.21-41.fc40.x86_64 xxhash-libs-0.8.2-2.fc40.x86_64 xz-5.4.6-1.fc40.x86_64 xz-libs-5.4.6-1.fc40.x86_64 zig-srpm-macros-1-2.fc40.noarch zip-3.0-40.fc40.x86_64 zlib-ng-compat-2.1.6-2.fc40.x86_64 zstd-1.5.5-5.fc40.x86_64 Start: buildsrpm Start: rpmbuild -bs Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1706140800 Wrote: /builddir/build/SRPMS/perl-Clownfish-0.6.3-21.fc41.src.rpm Finish: rpmbuild -bs cp: preserving permissions for ‘/var/lib/copr-rpmbuild/results/chroot_scan/var/lib/mock/fedora-rawhide-x86_64-1709237375.611783/root/var/log’: No such file or directory INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1709237375.611783/root/var/log/dnf5.log Finish: buildsrpm INFO: Done(/var/lib/copr-rpmbuild/workspace/workdir-xeh8lswb/perl-Clownfish/perl-Clownfish.spec) Config(child) 0 minutes 17 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot INFO: Start(/var/lib/copr-rpmbuild/results/perl-Clownfish-0.6.3-21.fc41.src.rpm) Config(fedora-rawhide-x86_64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1709237375.611783/root. INFO: reusing tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1709237375.611783/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1709237375.611783/root. INFO: calling preinit hooks INFO: enabled root cache Start: unpacking root cache Finish: unpacking root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.19.1.1-1.fc40.x86_64 rpm-sequoia-1.6.0-2.fc40.x86_64 python3-dnf-4.19.0-1.fc40.noarch yum-4.19.0-1.fc40.noarch dnf5-5.1.13-1.fc41.x86_64 dnf5-plugins-5.1.13-1.fc41.x86_64 Finish: chroot init Start: build phase for perl-Clownfish-0.6.3-21.fc41.src.rpm Start: build setup for perl-Clownfish-0.6.3-21.fc41.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1706140800 Wrote: /builddir/build/SRPMS/perl-Clownfish-0.6.3-21.fc41.src.rpm Updating and loading repositories: Copr repository 100% | 81.0 KiB/s | 1.5 KiB | 00m00s fedora 100% | 186.3 KiB/s | 19.4 KiB | 00m00s Repositories loaded. Package "findutils-1:4.9.0-8.fc40.x86_64" is already installed. Package Arch Version Repository Size Installing: gcc x86_64 14.0.1-0.7.fc41 fedora 103.2 MiB perl-Carp noarch 1.54-502.fc40 fedora 46.5 KiB perl-Clownfish-CFC x86_64 0.6.3-24.fc40 fedora 607.2 KiB perl-Data-Dumper x86_64 2.188-503.fc40 fedora 111.7 KiB perl-DynaLoader x86_64 1.54-506.fc41 copr_base 32.1 KiB perl-Encode x86_64 4:3.21-505.fc41 fedora 4.7 MiB perl-Exporter noarch 5.78-3.fc40 fedora 54.2 KiB perl-File-Copy noarch 2.41-506.fc41 copr_base 19.6 KiB perl-File-Find noarch 1.43-506.fc41 copr_base 41.9 KiB perl-File-Path noarch 2.18-503.fc40 fedora 63.5 KiB perl-PathTools x86_64 3.89-502.fc40 fedora 179.6 KiB perl-Scalar-List-Utils x86_64 5:1.63-503.fc40 fedora 145.5 KiB perl-Storable x86_64 1:3.32-502.fc40 fedora 232.3 KiB perl-Test-Simple noarch 3:1.302198-3.fc40 fedora 1.3 MiB perl-base noarch 2.27-506.fc41 copr_base 12.5 KiB perl-blib noarch 1.07-506.fc41 copr_base 3.2 KiB perl-devel x86_64 4:5.38.2-506.fc41 copr_base 8.1 MiB perl-generators noarch 1.16-5.fc40 fedora 21.8 KiB perl-interpreter x86_64 4:5.38.2-506.fc41 copr_base 119.8 KiB perl-lib x86_64 0.65-506.fc41 copr_base 8.5 KiB perl-libs x86_64 4:5.38.2-506.fc41 copr_base 9.8 MiB perl-overload noarch 1.37-506.fc41 copr_base 71.5 KiB Installing dependencies: annobin-docs noarch 12.41-1.fc41 copr_base 95.6 KiB annobin-plugin-gcc x86_64 12.41-1.fc41 copr_base 967.3 KiB cmark-lib x86_64 0.30.3-5.fc41 copr_base 259.9 KiB cpp x86_64 14.0.1-0.7.fc41 fedora 34.8 MiB expat x86_64 2.6.0-1.fc41 fedora 276.9 KiB gc x86_64 8.2.2-6.fc40 fedora 258.7 KiB gcc-c++ x86_64 14.0.1-0.7.fc41 fedora 37.9 MiB gcc-plugin-annobin x86_64 14.0.1-0.7.fc41 fedora 57.1 KiB glibc-devel x86_64 2.39.9000-4.fc41 copr_base 37.1 KiB glibc-headers-x86 noarch 2.39.9000-4.fc41 copr_base 2.2 MiB groff-base x86_64 1.23.0-6.fc40 fedora 3.8 MiB guile30 x86_64 3.0.7-12.fc40 fedora 51.5 MiB kernel-headers x86_64 6.8.0-0.rc6.49.fc41 fedora 6.2 MiB libb2 x86_64 0.98.1-11.fc40 fedora 42.2 KiB libmpc x86_64 1.3.1-5.fc40 fedora 164.7 KiB libstdc++-devel x86_64 14.0.1-0.7.fc41 fedora 15.3 MiB libxcrypt-devel x86_64 4.4.36-5.fc40 fedora 30.3 KiB make x86_64 1:4.4.1-6.fc41 copr_base 1.8 MiB mpdecimal x86_64 2.5.1-9.fc40 fedora 200.9 KiB ncurses x86_64 6.4-12.20240127.fc40 fedora 621.0 KiB perl-AutoLoader noarch 5.74-506.fc41 copr_base 20.5 KiB perl-AutoSplit noarch 5.74-506.fc41 copr_base 23.1 KiB perl-B x86_64 1.88-506.fc41 copr_base 492.4 KiB perl-Benchmark noarch 1.24-506.fc41 copr_base 36.3 KiB perl-CPAN-Meta noarch 2.150010-502.fc40 fedora 591.6 KiB perl-CPAN-Meta-Requirements noarch 2.143-6.fc40 fedora 81.1 KiB perl-CPAN-Meta-YAML noarch 0.018-503.fc40 fedora 50.2 KiB perl-Class-Struct noarch 0.68-506.fc41 copr_base 25.4 KiB perl-Data-OptList noarch 0.114-4.fc40 fedora 50.0 KiB perl-Data-Section noarch 0.200008-5.fc40 fedora 42.7 KiB perl-Devel-PPPort x86_64 3.71-503.fc40 fedora 889.3 KiB perl-Digest noarch 1.20-502.fc40 fedora 35.2 KiB perl-Digest-MD5 x86_64 2.59-3.fc40 fedora 59.7 KiB perl-Errno x86_64 1.37-506.fc41 copr_base 8.4 KiB perl-ExtUtils-CBuilder noarch 1:0.280238-502.fc40 fedora 97.4 KiB perl-ExtUtils-Command noarch 2:7.70-503.fc40 fedora 9.6 KiB perl-ExtUtils-Constant noarch 0.25-506.fc41 copr_base 85.8 KiB perl-ExtUtils-Install noarch 2.22-502.fc40 fedora 85.4 KiB perl-ExtUtils-MM-Utils noarch 2:7.70-503.fc40 fedora 2.9 KiB perl-ExtUtils-MakeMaker noarch 2:7.70-503.fc40 fedora 732.9 KiB perl-ExtUtils-Manifest noarch 1:1.75-5.fc40 fedora 84.8 KiB perl-ExtUtils-ParseXS noarch 1:3.51-503.fc40 fedora 399.1 KiB perl-Fcntl x86_64 1.15-506.fc41 copr_base 24.6 KiB perl-Fedora-VSP noarch 0.001-34.fc40 fedora 39.6 KiB perl-File-Basename noarch 2.86-506.fc41 copr_base 14.0 KiB perl-File-Compare noarch 1.100.700-506.fc41 copr_base 5.5 KiB perl-File-Temp noarch 1:0.231.100-503.fc40 fedora 162.3 KiB perl-File-stat noarch 1.13-506.fc41 copr_base 12.7 KiB perl-FileHandle noarch 2.05-506.fc41 copr_base 9.3 KiB perl-Getopt-Long noarch 1:2.57-3.fc40 fedora 144.1 KiB perl-Getopt-Std noarch 1.13-506.fc41 copr_base 11.1 KiB perl-HTTP-Tiny noarch 0.088-5.fc40 fedora 152.1 KiB perl-I18N-LangTags noarch 0.45-506.fc41 copr_base 82.3 KiB perl-IO x86_64 1.52-506.fc41 copr_base 151.0 KiB perl-IO-Socket-IP noarch 0.42-2.fc40 fedora 98.6 KiB perl-IO-Socket-SSL noarch 2.085-1.fc40 fedora 685.0 KiB perl-IPC-Cmd noarch 2:1.04-504.fc40 fedora 84.8 KiB perl-IPC-Open3 noarch 1.22-506.fc41 copr_base 22.4 KiB perl-JSON-PP noarch 1:4.16-503.fc40 fedora 141.7 KiB perl-Locale-Maketext noarch 1.33-503.fc40 fedora 171.1 KiB perl-Locale-Maketext-Simple noarch 1:0.21-506.fc41 copr_base 12.8 KiB perl-MIME-Base64 x86_64 3.16-503.fc40 fedora 46.1 KiB perl-MRO-Compat noarch 0.15-9.fc40 fedora 42.9 KiB perl-Math-BigInt noarch 1:2.0030.02-3.fc40 fedora 957.5 KiB perl-Math-Complex noarch 1.62-506.fc41 copr_base 85.0 KiB perl-Module-Build noarch 2:0.42.34-5.fc41 fedora 653.3 KiB perl-Module-CoreList noarch 1:5.20240223-1.fc41 fedora 1.1 MiB perl-Module-Load noarch 1:0.36-503.fc40 fedora 14.8 KiB perl-Module-Load-Conditional noarch 0.74-503.fc40 fedora 28.7 KiB perl-Module-Metadata noarch 1.000038-5.fc40 fedora 67.4 KiB perl-Mozilla-CA noarch 20231213-3.fc40 fedora 9.1 KiB perl-Net-SSLeay x86_64 1.94-3.fc40 fedora 1.3 MiB perl-Object-HashBase noarch 0.010-3.fc40 fedora 45.3 KiB perl-POSIX x86_64 2.13-506.fc41 copr_base 229.0 KiB perl-Package-Generator noarch 1.106-31.fc40 fedora 29.8 KiB perl-Params-Check noarch 1:0.38-502.fc40 fedora 27.5 KiB perl-Params-Util x86_64 1.102-14.fc40 fedora 58.6 KiB perl-Perl-OSType noarch 1.010-503.fc40 fedora 32.8 KiB perl-Pod-Escapes noarch 1:1.07-503.fc40 fedora 24.9 KiB perl-Pod-Html noarch 1.34-506.fc41 copr_base 41.6 KiB perl-Pod-Perldoc noarch 3.28.01-503.fc40 fedora 163.1 KiB perl-Pod-Simple noarch 1:3.45-6.fc40 fedora 559.8 KiB perl-Pod-Usage noarch 4:2.03-503.fc40 fedora 84.7 KiB perl-SelectSaver noarch 1.02-506.fc41 copr_base 2.2 KiB perl-Socket x86_64 4:2.037-5.fc40 fedora 123.6 KiB perl-Software-License noarch 0.104006-1.fc40 fedora 500.8 KiB perl-Sub-Exporter noarch 0.991-3.fc40 fedora 194.7 KiB perl-Sub-Install noarch 0.929-5.fc40 fedora 35.8 KiB perl-Symbol noarch 1.09-506.fc41 copr_base 6.8 KiB perl-Term-ANSIColor noarch 5.01-504.fc40 fedora 97.5 KiB perl-Term-Cap noarch 1.18-503.fc40 fedora 29.3 KiB perl-Term-Table noarch 0.018-3.fc40 fedora 59.9 KiB perl-Test-Harness noarch 1:3.48-3.fc40 fedora 556.9 KiB perl-Text-ParseWords noarch 3.31-502.fc40 fedora 13.5 KiB perl-Text-Tabs+Wrap noarch 2024.001-1.fc41 fedora 22.5 KiB perl-Text-Template noarch 1.61-5.fc40 fedora 112.3 KiB perl-Time-HiRes x86_64 4:1.9775-502.fc40 fedora 119.7 KiB perl-Time-Local noarch 2:1.350-5.fc40 fedora 68.9 KiB perl-URI noarch 5.27-1.fc40 fedora 239.8 KiB perl-constant noarch 1.33-503.fc40 fedora 26.2 KiB perl-if noarch 0.61.000-506.fc41 copr_base 5.8 KiB perl-inc-latest noarch 2:0.500-28.fc40 fedora 34.5 KiB perl-libnet noarch 3.15-503.fc40 fedora 289.0 KiB perl-locale noarch 1.10-506.fc41 copr_base 6.2 KiB perl-macros noarch 4:5.38.2-506.fc41 copr_base 5.5 KiB perl-mro x86_64 1.28-506.fc41 copr_base 41.6 KiB perl-overloading noarch 0.02-506.fc41 copr_base 4.8 KiB perl-parent noarch 1:0.241-502.fc40 fedora 9.7 KiB perl-podlators noarch 1:5.01-502.fc40 fedora 308.1 KiB perl-vars noarch 1.05-506.fc41 copr_base 3.9 KiB perl-version x86_64 8:0.99.30-3.fc40 fedora 128.6 KiB python-pip-wheel noarch 24.0-1.fc41 copr_base 1.5 MiB python3 x86_64 3.12.2-2.fc41 fedora 31.9 KiB python3-libs x86_64 3.12.2-2.fc41 fedora 41.0 MiB python3-pyparsing noarch 3.1.1-4.fc40 fedora 1.0 MiB systemtap-sdt-devel x86_64 5.1~pre17062192g5fd8daba-1.fc40 fedora 200.4 KiB tzdata noarch 2024a-2.fc40 fedora 1.6 MiB Transaction Summary: Installing: 139 packages Total size of inbound packages is 102 MiB. Need to download 427 KiB. After this operation 345 MiB will be used (install 345 MiB, remove 0 B). [ 1/139] gcc-0:14.0.1-0.7.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 2/139] perl-Carp-0:1.54-502.fc40.noa 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 3/139] perl-PathTools-0:3.89-502.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 4/139] perl-Data-Dumper-0:2.188-503. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 5/139] perl-Exporter-0:5.78-3.fc40.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 6/139] perl-File-Path-0:2.18-503.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 7/139] perl-Scalar-List-Utils-5:1.63 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 8/139] perl-Storable-1:3.32-502.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 9/139] perl-Test-Simple-3:1.302198-3 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 10/139] perl-generators-0:1.16-5.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 11/139] perl-libs-4:5.38.2-506.fc41.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 12/139] perl-DynaLoader-0:1.54-506.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 13/139] perl-Encode-4:3.21-505.fc41.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 14/139] perl-File-Copy-0:2.41-506.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 15/139] perl-File-Find-0:1.43-506.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 16/139] perl-base-0:2.27-506.fc41.noa 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 17/139] perl-lib-0:0.65-506.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 18/139] perl-overload-0:1.37-506.fc41 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 19/139] perl-devel-4:5.38.2-506.fc41. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 20/139] perl-interpreter-4:5.38.2-506 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 21/139] cpp-0:14.0.1-0.7.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 22/139] libmpc-0:1.3.1-5.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 23/139] perl-Devel-PPPort-0:3.71-503. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 24/139] perl-ExtUtils-CBuilder-1:0.28 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 25/139] perl-ExtUtils-MakeMaker-2:7.7 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 26/139] perl-ExtUtils-ParseXS-1:3.51- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 27/139] perl-Module-Build-2:0.42.34-5 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 28/139] perl-constant-0:1.33-503.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 29/139] perl-File-Temp-1:0.231.100-50 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 30/139] perl-JSON-PP-1:4.16-503.fc40. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 31/139] perl-Term-ANSIColor-0:5.01-50 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 32/139] perl-Term-Table-0:0.018-3.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 33/139] perl-Time-HiRes-4:1.9775-502. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 34/139] perl-Fedora-VSP-0:0.001-34.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 35/139] perl-Getopt-Long-1:2.57-3.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 36/139] perl-MIME-Base64-0:3.16-503.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 37/139] perl-parent-1:0.241-502.fc40. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 38/139] libxcrypt-devel-0:4.4.36-5.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 39/139] perl-ExtUtils-Install-0:2.22- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 40/139] perl-Text-Tabs+Wrap-0:2024.00 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 41/139] perl-IPC-Cmd-2:1.04-504.fc40. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 42/139] perl-Perl-OSType-0:1.010-503. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 43/139] perl-Text-ParseWords-0:3.31-5 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 44/139] perl-ExtUtils-Command-2:7.70- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 45/139] perl-ExtUtils-Manifest-1:1.75 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 46/139] perl-Test-Harness-1:3.48-3.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 47/139] perl-podlators-1:5.01-502.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 48/139] perl-version-8:0.99.30-3.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 49/139] perl-CPAN-Meta-0:2.150010-502 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 50/139] perl-Module-Metadata-0:1.0000 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 51/139] perl-Software-License-0:0.104 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 52/139] perl-inc-latest-2:0.500-28.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 53/139] perl-Math-BigInt-1:2.0030.02- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 54/139] perl-Object-HashBase-0:0.010- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 55/139] perl-ExtUtils-MM-Utils-2:7.70 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 56/139] perl-Module-Load-Conditional- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 57/139] perl-Params-Check-1:0.38-502. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 58/139] perl-Socket-4:2.037-5.fc40.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 59/139] perl-Errno-0:1.37-506.fc41.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 60/139] perl-Pod-Simple-1:3.45-6.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 61/139] perl-Term-Cap-0:1.18-503.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 62/139] perl-CPAN-Meta-Requirements-0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 63/139] perl-CPAN-Meta-YAML-0:0.018-5 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 64/139] perl-Data-Section-0:0.200008- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 65/139] perl-Module-Load-1:0.36-503.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 66/139] perl-Text-Template-0:1.61-5.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 67/139] perl-Module-CoreList-1:5.2024 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 68/139] perl-Pod-Escapes-1:1.07-503.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 69/139] ncurses-0:6.4-12.20240127.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 70/139] perl-MRO-Compat-0:0.15-9.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 71/139] perl-Sub-Exporter-0:0.991-3.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 72/139] perl-Data-OptList-0:0.114-4.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 73/139] perl-Package-Generator-0:1.10 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 74/139] perl-Params-Util-0:1.102-14.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 75/139] perl-Sub-Install-0:0.929-5.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 76/139] gcc-plugin-annobin-0:14.0.1-0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 77/139] perl-B-0:1.88-506.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 78/139] perl-POSIX-0:2.13-506.fc41.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 79/139] perl-if-0:0.61.000-506.fc41.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 80/139] perl-locale-0:1.10-506.fc41.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 81/139] perl-File-Basename-0:2.86-506 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 82/139] perl-IO-0:1.52-506.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 83/139] perl-macros-4:5.38.2-506.fc41 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 84/139] perl-Symbol-0:1.09-506.fc41.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 85/139] perl-mro-0:1.28-506.fc41.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 86/139] perl-vars-0:1.05-506.fc41.noa 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 87/139] perl-Benchmark-0:1.24-506.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 88/139] perl-Fcntl-0:1.15-506.fc41.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 89/139] perl-Locale-Maketext-0:1.33-5 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 90/139] perl-FileHandle-0:2.05-506.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 91/139] perl-File-Compare-0:1.100.700 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 92/139] perl-Math-Complex-0:1.62-506. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 93/139] perl-IPC-Open3-0:1.22-506.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 94/139] perl-AutoSplit-0:5.74-506.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 95/139] gcc-c++-0:14.0.1-0.7.fc41.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 96/139] perl-Getopt-Std-0:1.13-506.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 97/139] glibc-devel-0:2.39.9000-4.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 98/139] libstdc++-devel-0:14.0.1-0.7. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 99/139] annobin-plugin-gcc-0:12.41-1. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [100/139] make-1:4.4.1-6.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [101/139] guile30-0:3.0.7-12.fc40.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [102/139] gc-0:8.2.2-6.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [103/139] perl-overloading-0:0.02-506.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [104/139] perl-ExtUtils-Constant-0:0.25 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [105/139] systemtap-sdt-devel-0:5.1~pre 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [106/139] python3-0:3.12.2-2.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [107/139] python3-pyparsing-0:3.1.1-4.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [108/139] python3-libs-0:3.12.2-2.fc41. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [109/139] expat-0:2.6.0-1.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [110/139] libb2-0:0.98.1-11.fc40.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [111/139] mpdecimal-0:2.5.1-9.fc40.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [112/139] tzdata-0:2024a-2.fc40.noarch 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [113/139] perl-File-stat-0:1.13-506.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [114/139] perl-SelectSaver-0:1.02-506.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [115/139] perl-Class-Struct-0:0.68-506. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [116/139] glibc-headers-x86-0:2.39.9000 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [117/139] kernel-headers-0:6.8.0-0.rc6. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [118/139] annobin-docs-0:12.41-1.fc41.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [119/139] python-pip-wheel-0:24.0-1.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [120/139] perl-Pod-Usage-4:2.03-503.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [121/139] perl-Pod-Perldoc-0:3.28.01-50 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [122/139] groff-base-0:1.23.0-6.fc40.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [123/139] perl-HTTP-Tiny-0:0.088-5.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [124/139] perl-IO-Socket-SSL-0:2.085-1. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [125/139] perl-Mozilla-CA-0:20231213-3. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [126/139] perl-Net-SSLeay-0:1.94-3.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [127/139] perl-Time-Local-2:1.350-5.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [128/139] perl-IO-Socket-IP-0:0.42-2.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [129/139] perl-URI-0:5.27-1.fc40.noarch 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [130/139] perl-libnet-0:3.15-503.fc40.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [131/139] perl-Digest-MD5-0:2.59-3.fc40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [132/139] perl-Digest-0:1.20-502.fc40.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [133/139] perl-AutoLoader-0:5.74-506.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [134/139] perl-Locale-Maketext-Simple-1 100% | 2.0 MiB/s | 18.6 KiB | 00m00s [135/139] perl-blib-0:1.07-506.fc41.noa 100% | 1.2 MiB/s | 13.4 KiB | 00m00s [136/139] perl-Pod-Html-0:1.34-506.fc41 100% | 14.7 MiB/s | 30.2 KiB | 00m00s [137/139] perl-I18N-LangTags-0:0.45-506 100% | 17.4 MiB/s | 53.4 KiB | 00m00s [138/139] cmark-lib-0:0.30.3-5.fc41.x86 100% | 23.6 MiB/s | 96.5 KiB | 00m00s [139/139] perl-Clownfish-CFC-0:0.6.3-24 100% | 5.1 MiB/s | 214.7 KiB | 00m00s -------------------------------------------------------------------------------- [139/139] Total 100% | 1.0 MiB/s | 426.7 KiB | 00m00s Running transaction [ 1/141] Verify package files 100% | 390.0 B/s | 139.0 B | 00m00s [ 2/141] Prepare transaction 100% | 2.8 KiB/s | 139.0 B | 00m00s [ 3/141] Installing libmpc-0:1.3.1-5.f 100% | 162.3 MiB/s | 166.2 KiB | 00m00s [ 4/141] Installing cpp-0:14.0.1-0.7.f 100% | 390.6 MiB/s | 34.8 MiB | 00m00s >>> Running pre-install scriptlet: groff-base-0:1.23.0-6.fc40.x86_64 >>> Stop pre-install scriptlet: groff-base-0:1.23.0-6.fc40.x86_64 [ 5/141] Installing groff-base-0:1.23. 100% | 226.9 MiB/s | 3.9 MiB | 00m00s >>> Running post-install scriptlet: groff-base-0:1.23.0-6.fc40.x86_64 >>> Stop post-install scriptlet: groff-base-0:1.23.0-6.fc40.x86_64 [ 6/141] Installing python-pip-wheel-0 100% | 509.3 MiB/s | 1.5 MiB | 00m00s [ 7/141] Installing annobin-docs-0:12. 100% | 47.2 MiB/s | 96.6 KiB | 00m00s [ 8/141] Installing kernel-headers-0:6 100% | 236.5 MiB/s | 6.4 MiB | 00m00s [ 9/141] Installing glibc-headers-x86- 100% | 205.0 MiB/s | 2.3 MiB | 00m00s [ 10/141] Installing glibc-devel-0:2.39 100% | 39.8 MiB/s | 40.8 KiB | 00m00s [ 11/141] Installing libxcrypt-devel-0: 100% | 8.0 MiB/s | 32.6 KiB | 00m00s [ 12/141] Installing tzdata-0:2024a-2.f 100% | 73.1 MiB/s | 1.9 MiB | 00m00s [ 13/141] Installing mpdecimal-0:2.5.1- 100% | 197.3 MiB/s | 202.0 KiB | 00m00s [ 14/141] Installing libb2-0:0.98.1-11. 100% | 0.0 B/s | 43.3 KiB | 00m00s [ 15/141] Installing expat-0:2.6.0-1.fc 100% | 45.4 MiB/s | 278.9 KiB | 00m00s [ 16/141] Installing python3-libs-0:3.1 100% | 376.3 MiB/s | 41.4 MiB | 00m00s [ 17/141] Installing python3-0:3.12.2-2 100% | 32.8 MiB/s | 33.6 KiB | 00m00s [ 18/141] Installing python3-pyparsing- 100% | 333.0 MiB/s | 1.0 MiB | 00m00s [ 19/141] Installing systemtap-sdt-deve 100% | 197.4 MiB/s | 202.1 KiB | 00m00s [ 20/141] Installing gc-0:8.2.2-6.fc40. 100% | 85.0 MiB/s | 261.2 KiB | 00m00s [ 21/141] Installing guile30-0:3.0.7-12 100% | 515.8 MiB/s | 51.6 MiB | 00m00s [ 22/141] Installing make-1:4.4.1-6.fc4 100% | 300.0 MiB/s | 1.8 MiB | 00m00s [ 23/141] Installing gcc-0:14.0.1-0.7.f 100% | 473.8 MiB/s | 103.3 MiB | 00m00s >>> Running trigger-install scriptlet: redhat-rpm-config-0:285-1.fc41.noarch >>> Stop trigger-install scriptlet: redhat-rpm-config-0:285-1.fc41.noarch [ 24/141] Installing libstdc++-devel-0: 100% | 406.7 MiB/s | 15.5 MiB | 00m00s [ 25/141] Installing gcc-c++-0:14.0.1-0 100% | 446.1 MiB/s | 37.9 MiB | 00m00s [ 26/141] Installing cmark-lib-0:0.30.3 100% | 254.8 MiB/s | 260.9 KiB | 00m00s [ 27/141] Installing ncurses-0:6.4-12.2 100% | 306.5 MiB/s | 627.6 KiB | 00m00s [ 28/141] Installing perl-Digest-0:1.20 100% | 0.0 B/s | 37.0 KiB | 00m00s [ 29/141] Installing perl-B-0:1.88-506. 100% | 242.1 MiB/s | 495.7 KiB | 00m00s [ 30/141] Installing perl-FileHandle-0: 100% | 0.0 B/s | 9.8 KiB | 00m00s [ 31/141] Installing perl-Digest-MD5-0: 100% | 60.2 MiB/s | 61.6 KiB | 00m00s [ 32/141] Installing perl-Data-Dumper-0 100% | 110.9 MiB/s | 113.6 KiB | 00m00s [ 33/141] Installing perl-libnet-0:3.15 100% | 143.7 MiB/s | 294.3 KiB | 00m00s [ 34/141] Installing perl-URI-0:5.27-1. 100% | 122.7 MiB/s | 251.4 KiB | 00m00s [ 35/141] Installing perl-AutoLoader-0: 100% | 0.0 B/s | 20.9 KiB | 00m00s [ 36/141] Installing perl-Text-Tabs+Wra 100% | 0.0 B/s | 23.8 KiB | 00m00s [ 37/141] Installing perl-if-0:0.61.000 100% | 0.0 B/s | 6.2 KiB | 00m00s [ 38/141] Installing perl-File-Path-0:2 100% | 63.0 MiB/s | 64.5 KiB | 00m00s [ 39/141] Installing perl-Pod-Escapes-1 100% | 0.0 B/s | 25.9 KiB | 00m00s [ 40/141] Installing perl-locale-0:1.10 100% | 0.0 B/s | 6.6 KiB | 00m00s [ 41/141] Installing perl-Mozilla-CA-0: 100% | 0.0 B/s | 10.2 KiB | 00m00s [ 42/141] Installing perl-Time-Local-2: 100% | 68.9 MiB/s | 70.5 KiB | 00m00s [ 43/141] Installing perl-IO-Socket-IP- 100% | 98.1 MiB/s | 100.4 KiB | 00m00s [ 44/141] Installing perl-IO-Socket-SSL 100% | 336.4 MiB/s | 689.0 KiB | 00m00s [ 45/141] Installing perl-Net-SSLeay-0: 100% | 272.5 MiB/s | 1.4 MiB | 00m00s [ 46/141] Installing perl-Term-ANSIColo 100% | 96.8 MiB/s | 99.1 KiB | 00m00s [ 47/141] Installing perl-Term-Cap-0:1. 100% | 0.0 B/s | 30.5 KiB | 00m00s [ 48/141] Installing perl-POSIX-0:2.13- 100% | 224.9 MiB/s | 230.3 KiB | 00m00s [ 49/141] Installing perl-File-Temp-1:0 100% | 160.2 MiB/s | 164.0 KiB | 00m00s [ 50/141] Installing perl-IPC-Open3-0:1 100% | 0.0 B/s | 23.3 KiB | 00m00s [ 51/141] Installing perl-Class-Struct- 100% | 0.0 B/s | 25.9 KiB | 00m00s [ 52/141] Installing perl-Pod-Simple-1: 100% | 278.0 MiB/s | 569.4 KiB | 00m00s [ 53/141] Installing perl-HTTP-Tiny-0:0 100% | 150.6 MiB/s | 154.2 KiB | 00m00s [ 54/141] Installing perl-Socket-4:2.03 100% | 122.7 MiB/s | 125.6 KiB | 00m00s [ 55/141] Installing perl-Symbol-0:1.09 100% | 0.0 B/s | 7.2 KiB | 00m00s [ 56/141] Installing perl-SelectSaver-0 100% | 0.0 B/s | 2.6 KiB | 00m00s [ 57/141] Installing perl-File-stat-0:1 100% | 0.0 B/s | 13.2 KiB | 00m00s [ 58/141] Installing perl-podlators-1:5 100% | 304.7 MiB/s | 312.1 KiB | 00m00s [ 59/141] Installing perl-Pod-Perldoc-0 100% | 164.7 MiB/s | 168.6 KiB | 00m00s [ 60/141] Installing perl-base-0:2.27-5 100% | 0.0 B/s | 12.9 KiB | 00m00s [ 61/141] Installing perl-Text-ParseWor 100% | 0.0 B/s | 14.5 KiB | 00m00s [ 62/141] Installing perl-mro-0:1.28-50 100% | 41.7 MiB/s | 42.7 KiB | 00m00s [ 63/141] Installing perl-Fcntl-0:1.15- 100% | 0.0 B/s | 25.8 KiB | 00m00s [ 64/141] Installing perl-overloading-0 100% | 0.0 B/s | 5.5 KiB | 00m00s [ 65/141] Installing perl-IO-0:1.52-506 100% | 151.7 MiB/s | 155.3 KiB | 00m00s [ 66/141] Installing perl-Pod-Usage-4:2 100% | 84.2 MiB/s | 86.3 KiB | 00m00s [ 67/141] Installing perl-Scalar-List-U 100% | 145.2 MiB/s | 148.7 KiB | 00m00s [ 68/141] Installing perl-constant-0:1. 100% | 0.0 B/s | 27.4 KiB | 00m00s [ 69/141] Installing perl-MIME-Base64-0 100% | 47.2 MiB/s | 48.3 KiB | 00m00s [ 70/141] Installing perl-parent-1:0.24 100% | 0.0 B/s | 10.4 KiB | 00m00s [ 71/141] Installing perl-Errno-0:1.37- 100% | 0.0 B/s | 8.8 KiB | 00m00s [ 72/141] Installing perl-File-Basename 100% | 0.0 B/s | 14.6 KiB | 00m00s [ 73/141] Installing perl-vars-0:1.05-5 100% | 0.0 B/s | 4.3 KiB | 00m00s [ 74/141] Installing perl-Getopt-Std-0: 100% | 0.0 B/s | 11.6 KiB | 00m00s [ 75/141] Installing perl-overload-0:1. 100% | 0.0 B/s | 71.9 KiB | 00m00s [ 76/141] Installing perl-Storable-1:3. 100% | 228.5 MiB/s | 233.9 KiB | 00m00s [ 77/141] Installing perl-Getopt-Long-1 100% | 143.3 MiB/s | 146.7 KiB | 00m00s [ 78/141] Installing perl-Exporter-0:5. 100% | 0.0 B/s | 55.5 KiB | 00m00s [ 79/141] Installing perl-PathTools-0:3 100% | 179.8 MiB/s | 184.2 KiB | 00m00s [ 80/141] Installing perl-DynaLoader-0: 100% | 0.0 B/s | 32.5 KiB | 00m00s [ 81/141] Installing perl-Encode-4:3.21 100% | 471.7 MiB/s | 4.7 MiB | 00m00s [ 82/141] Installing perl-Carp-0:1.54-5 100% | 46.5 MiB/s | 47.7 KiB | 00m00s [ 83/141] Installing perl-libs-4:5.38.2 100% | 320.7 MiB/s | 9.9 MiB | 00m00s [ 84/141] Installing perl-interpreter-4 100% | 118.6 MiB/s | 121.4 KiB | 00m00s [ 85/141] Installing perl-version-8:0.9 100% | 128.4 MiB/s | 131.5 KiB | 00m00s [ 86/141] Installing perl-File-Find-0:1 100% | 41.4 MiB/s | 42.4 KiB | 00m00s [ 87/141] Installing perl-File-Copy-0:2 100% | 0.0 B/s | 20.2 KiB | 00m00s [ 88/141] Installing perl-ExtUtils-Pars 100% | 395.1 MiB/s | 404.5 KiB | 00m00s [ 89/141] Installing perl-Time-HiRes-4: 100% | 118.9 MiB/s | 121.8 KiB | 00m00s [ 90/141] Installing perl-File-Compare- 100% | 0.0 B/s | 6.0 KiB | 00m00s [ 91/141] Installing perl-ExtUtils-Mani 100% | 0.0 B/s | 86.3 KiB | 00m00s [ 92/141] Installing perl-Module-Metada 100% | 67.3 MiB/s | 68.9 KiB | 00m00s [ 93/141] Installing perl-CPAN-Meta-Req 100% | 81.4 MiB/s | 83.3 KiB | 00m00s [ 94/141] Installing perl-Devel-PPPort- 100% | 435.4 MiB/s | 891.6 KiB | 00m00s [ 95/141] Installing perl-Perl-OSType-0 100% | 33.5 MiB/s | 34.3 KiB | 00m00s [ 96/141] Installing perl-Module-Load-1 100% | 0.0 B/s | 15.8 KiB | 00m00s [ 97/141] Installing perl-Params-Util-0 100% | 59.6 MiB/s | 61.1 KiB | 00m00s [ 98/141] Installing perl-Sub-Install-0 100% | 0.0 B/s | 37.1 KiB | 00m00s [ 99/141] Installing perl-Data-OptList- 100% | 50.9 MiB/s | 52.1 KiB | 00m00s [100/141] Installing perl-ExtUtils-Comm 100% | 0.0 B/s | 10.1 KiB | 00m00s [101/141] Installing perl-Module-CoreLi 100% | 555.5 MiB/s | 1.1 MiB | 00m00s [102/141] Installing perl-macros-4:5.38 100% | 0.0 B/s | 5.8 KiB | 00m00s [103/141] Installing perl-Pod-Html-0:1. 100% | 0.0 B/s | 43.2 KiB | 00m00s [104/141] Installing perl-lib-0:0.65-50 100% | 0.0 B/s | 8.9 KiB | 00m00s [105/141] Installing perl-Fedora-VSP-0: 100% | 0.0 B/s | 40.5 KiB | 00m00s [106/141] Installing perl-Object-HashBa 100% | 0.0 B/s | 46.6 KiB | 00m00s [107/141] Installing perl-Term-Table-0: 100% | 61.4 MiB/s | 62.8 KiB | 00m00s [108/141] Installing perl-ExtUtils-MM-U 100% | 0.0 B/s | 3.6 KiB | 00m00s [109/141] Installing perl-CPAN-Meta-YAM 100% | 0.0 B/s | 51.7 KiB | 00m00s [110/141] Installing perl-Text-Template 100% | 111.2 MiB/s | 113.9 KiB | 00m00s [111/141] Installing perl-MRO-Compat-0: 100% | 43.8 MiB/s | 44.8 KiB | 00m00s [112/141] Installing perl-Package-Gener 100% | 30.7 MiB/s | 31.5 KiB | 00m00s [113/141] Installing perl-Sub-Exporter- 100% | 197.0 MiB/s | 201.7 KiB | 00m00s [114/141] Installing perl-Data-Section- 100% | 43.0 MiB/s | 44.0 KiB | 00m00s [115/141] Installing perl-Software-Lice 100% | 250.6 MiB/s | 513.2 KiB | 00m00s [116/141] Installing perl-Benchmark-0:1 100% | 35.9 MiB/s | 36.7 KiB | 00m00s [117/141] Installing perl-Test-Harness- 100% | 141.5 MiB/s | 579.6 KiB | 00m00s [118/141] Installing perl-Math-Complex- 100% | 0.0 B/s | 85.8 KiB | 00m00s [119/141] Installing perl-Math-BigInt-1 100% | 469.5 MiB/s | 961.6 KiB | 00m00s [120/141] Installing perl-JSON-PP-1:4.1 100% | 140.1 MiB/s | 143.4 KiB | 00m00s [121/141] Installing perl-CPAN-Meta-0:2 100% | 199.6 MiB/s | 613.2 KiB | 00m00s [122/141] Installing perl-I18N-LangTags 100% | 0.0 B/s | 83.6 KiB | 00m00s [123/141] Installing perl-Locale-Makete 100% | 169.7 MiB/s | 173.8 KiB | 00m00s [124/141] Installing perl-Locale-Makete 100% | 0.0 B/s | 13.5 KiB | 00m00s [125/141] Installing perl-Params-Check- 100% | 0.0 B/s | 28.5 KiB | 00m00s [126/141] Installing perl-Module-Load-C 100% | 0.0 B/s | 29.9 KiB | 00m00s [127/141] Installing perl-IPC-Cmd-2:1.0 100% | 0.0 B/s | 85.8 KiB | 00m00s [128/141] Installing perl-AutoSplit-0:5 100% | 0.0 B/s | 23.5 KiB | 00m00s [129/141] Installing perl-ExtUtils-Cons 100% | 85.5 MiB/s | 87.6 KiB | 00m00s [130/141] Installing perl-devel-4:5.38. 100% | 626.4 MiB/s | 8.1 MiB | 00m00s [131/141] Installing perl-ExtUtils-Inst 100% | 85.0 MiB/s | 87.1 KiB | 00m00s [132/141] Installing perl-ExtUtils-Make 100% | 242.0 MiB/s | 743.5 KiB | 00m00s [133/141] Installing perl-ExtUtils-CBui 100% | 99.8 MiB/s | 102.2 KiB | 00m00s [134/141] Installing perl-inc-latest-2: 100% | 35.4 MiB/s | 36.2 KiB | 00m00s [135/141] Installing perl-Module-Build- 100% | 215.6 MiB/s | 662.3 KiB | 00m00s [136/141] Installing perl-Clownfish-CFC 100% | 150.6 MiB/s | 616.7 KiB | 00m00s [137/141] Installing perl-Test-Simple-3 100% | 126.6 MiB/s | 1.4 MiB | 00m00s [138/141] Installing perl-generators-0: 100% | 0.0 B/s | 23.2 KiB | 00m00s [139/141] Installing perl-blib-0:1.07-5 100% | 0.0 B/s | 3.6 KiB | 00m00s [140/141] Installing gcc-plugin-annobin 100% | 5.2 MiB/s | 58.7 KiB | 00m00s >>> Running trigger-install scriptlet: redhat-rpm-config-0:285-1.fc41.noarch >>> Stop trigger-install scriptlet: redhat-rpm-config-0:285-1.fc41.noarch [141/141] Installing annobin-plugin-gcc 100% | 6.8 MiB/s | 968.8 KiB | 00m00s >>> Running trigger-install scriptlet: redhat-rpm-config-0:285-1.fc41.noarch >>> Stop trigger-install scriptlet: redhat-rpm-config-0:285-1.fc41.noarch >>> Running trigger-install scriptlet: glibc-common-0:2.39.9000-4.fc41.x86_64 >>> Stop trigger-install scriptlet: glibc-common-0:2.39.9000-4.fc41.x86_64 >>> Running trigger-install scriptlet: info-0:7.1-2.fc40.x86_64 >>> Stop trigger-install scriptlet: info-0:7.1-2.fc40.x86_64 Warning: skipped PGP checks for 45 package(s). Finish: build setup for perl-Clownfish-0.6.3-21.fc41.src.rpm Start: rpmbuild perl-Clownfish-0.6.3-21.fc41.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1706140800 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.Pfy7ZL + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf Clownfish-0.6.3 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/Clownfish-0.6.3.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd Clownfish-0.6.3 + rm -rf /builddir/build/BUILD/Clownfish-0.6.3-SPECPARTS + /usr/bin/mkdir -p /builddir/build/BUILD/Clownfish-0.6.3-SPECPARTS + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.BVyDqb + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd Clownfish-0.6.3 + perl Build.PL installdirs=vendor 'optimize=-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer' Created MYMETA.yml and MYMETA.json Creating new 'Build' script for 'Clownfish' version '0.6.3' + ./Build Building Clownfish Parsing Clownfish files... Writing Clownfish autogenerated files... Writing typemap... Compiling ./charmonizer... Running ./charmonizer... ./charmonizer --cc=gcc --host=perl --enable-c --enable-perl --make=make --enable-makefile -- -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE Initializing Charmonizer/Core/OperatingSystem... Detected POSIX shell Creating compiler object... Trying to compile and execute a small test file... Detected binary format: ELF Initialization complete. Running BuildEnv module... Running DirManip module... Running Headers module... Running AtomicOps module... Running FuncMacro module... Running Booleans module... Running Integers module... Running IntegerTypes module... Running IntegerLimits module... Running IntegerLiterals module... Running IntegerFormatStrings module... Running Floats module... Running LargeFiles module... Running Memory module... Running VariadicMacros module... Running LocalDefinitions module... Creating Makefile... Cleaning up... Cleanup complete. make core_objects gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Util/SortUtils.c -c -o cfcore/Clownfish/Util/SortUtils.o In file included from autogen/include/Clownfish/Err.h:47, from cfcore/Clownfish/Util/SortUtils.c:22: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Util/Memory.c -c -o cfcore/Clownfish/Util/Memory.o gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Util/Atomic.c -c -o cfcore/Clownfish/Util/Atomic.o gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/TestHarness/TestUtils.c -c -o cfcore/Clownfish/TestHarness/TestUtils.o In file included from autogen/include/Clownfish/CharBuf.h:40, from cfcore/Clownfish/TestHarness/TestUtils.c:26: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestUtils.c:27: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/TestHarness/TestSuiteRunner.c -c -o cfcore/Clownfish/TestHarness/TestSuiteRunner.o In file included from autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:40, from cfcore/Clownfish/TestHarness/TestSuiteRunner.c:20: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:175:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuiteRunner *, void *)’ [-Wcast-function-type] 175 | const CFISH_TestSuiteRunner_To_Host_t method = (CFISH_TestSuiteRunner_To_Host_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Clone’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:182:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 182 | const CFISH_TestSuiteRunner_Clone_t method = (CFISH_TestSuiteRunner_Clone_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Equals’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:189:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ [-Wcast-function-type] 189 | const CFISH_TestSuiteRunner_Equals_t method = (CFISH_TestSuiteRunner_Equals_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:196:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuiteRunner *, cfish_Obj *)’} [-Wcast-function-type] 196 | const CFISH_TestSuiteRunner_Compare_To_t method = (CFISH_TestSuiteRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_String’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:210:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 210 | const CFISH_TestSuiteRunner_To_String_t method = (CFISH_TestSuiteRunner_To_String_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:217:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 217 | const CFISH_TestSuiteRunner_Run_Batch_t method = (CFISH_TestSuiteRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Finish’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:224:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 224 | const CFISH_TestSuiteRunner_Finish_t method = (CFISH_TestSuiteRunner_Finish_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Finish_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:231:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 231 | const CFISH_TestSuiteRunner_Get_Num_Tests_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:238:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 238 | const CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:245:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 245 | const CFISH_TestSuiteRunner_Get_Num_Batches_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:252:67: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 252 | const CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_Failed_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuiteRunner.c:22: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuiteRunner.c:23: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuiteRunner.c:24: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuiteRunner.c:25: autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:173:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatter *, void *)’ [-Wcast-function-type] 173 | const CFISH_TestFormatter_To_Host_t method = (CFISH_TestFormatter_To_Host_t)cfish_obj_method(self, CFISH_TestFormatter_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:180:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 180 | const CFISH_TestFormatter_Clone_t method = (CFISH_TestFormatter_Clone_t)cfish_obj_method(self, CFISH_TestFormatter_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:187:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatter *, cfish_Obj *)’ [-Wcast-function-type] 187 | const CFISH_TestFormatter_Equals_t method = (CFISH_TestFormatter_Equals_t)cfish_obj_method(self, CFISH_TestFormatter_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:194:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatter *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatter *, cfish_Obj *)’} [-Wcast-function-type] 194 | const CFISH_TestFormatter_Compare_To_t method = (CFISH_TestFormatter_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:208:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 208 | const CFISH_TestFormatter_To_String_t method = (CFISH_TestFormatter_To_String_t)cfish_obj_method(self, CFISH_TestFormatter_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:215:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 215 | const CFISH_TestFormatter_Batch_Prologue_t method = (CFISH_TestFormatter_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatter_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:222:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 222 | const CFISH_TestFormatter_VTest_Result_t method = (CFISH_TestFormatter_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:229:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 229 | const CFISH_TestFormatter_VTest_Skip_t method = (CFISH_TestFormatter_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:236:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 236 | const CFISH_TestFormatter_VTest_Comment_t method = (CFISH_TestFormatter_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:243:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 243 | const CFISH_TestFormatter_VBatch_Comment_t method = (CFISH_TestFormatter_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:250:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 250 | const CFISH_TestFormatter_Summary_t method = (CFISH_TestFormatter_Summary_t)cfish_obj_method(self, CFISH_TestFormatter_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:459:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterCF *, void *)’ [-Wcast-function-type] 459 | const CFISH_TestFormatterCF_To_Host_t method = (CFISH_TestFormatterCF_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:466:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 466 | const CFISH_TestFormatterCF_Clone_t method = (CFISH_TestFormatterCF_Clone_t)cfish_obj_method(self, CFISH_TestFormatterCF_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:473:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterCF *, cfish_Obj *)’ [-Wcast-function-type] 473 | const CFISH_TestFormatterCF_Equals_t method = (CFISH_TestFormatterCF_Equals_t)cfish_obj_method(self, CFISH_TestFormatterCF_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:480:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterCF *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterCF *, cfish_Obj *)’} [-Wcast-function-type] 480 | const CFISH_TestFormatterCF_Compare_To_t method = (CFISH_TestFormatterCF_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterCF_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:494:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 494 | const CFISH_TestFormatterCF_To_String_t method = (CFISH_TestFormatterCF_To_String_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:501:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 501 | const CFISH_TestFormatterCF_Batch_Prologue_t method = (CFISH_TestFormatterCF_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterCF_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:508:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 508 | const CFISH_TestFormatterCF_VTest_Result_t method = (CFISH_TestFormatterCF_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:515:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 515 | const CFISH_TestFormatterCF_VTest_Skip_t method = (CFISH_TestFormatterCF_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:522:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 522 | const CFISH_TestFormatterCF_VTest_Comment_t method = (CFISH_TestFormatterCF_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:529:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 529 | const CFISH_TestFormatterCF_VBatch_Comment_t method = (CFISH_TestFormatterCF_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:536:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 536 | const CFISH_TestFormatterCF_Summary_t method = (CFISH_TestFormatterCF_Summary_t)cfish_obj_method(self, CFISH_TestFormatterCF_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:725:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterTAP *, void *)’ [-Wcast-function-type] 725 | const CFISH_TestFormatterTAP_To_Host_t method = (CFISH_TestFormatterTAP_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:732:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 732 | const CFISH_TestFormatterTAP_Clone_t method = (CFISH_TestFormatterTAP_Clone_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:739:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ [-Wcast-function-type] 739 | const CFISH_TestFormatterTAP_Equals_t method = (CFISH_TestFormatterTAP_Equals_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:746:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterTAP *, cfish_Obj *)’} [-Wcast-function-type] 746 | const CFISH_TestFormatterTAP_Compare_To_t method = (CFISH_TestFormatterTAP_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:760:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 760 | const CFISH_TestFormatterTAP_To_String_t method = (CFISH_TestFormatterTAP_To_String_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:767:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 767 | const CFISH_TestFormatterTAP_Batch_Prologue_t method = (CFISH_TestFormatterTAP_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:774:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 774 | const CFISH_TestFormatterTAP_VTest_Result_t method = (CFISH_TestFormatterTAP_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:781:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 781 | const CFISH_TestFormatterTAP_VTest_Skip_t method = (CFISH_TestFormatterTAP_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:788:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 788 | const CFISH_TestFormatterTAP_VTest_Comment_t method = (CFISH_TestFormatterTAP_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:795:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 795 | const CFISH_TestFormatterTAP_VBatch_Comment_t method = (CFISH_TestFormatterTAP_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:802:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 802 | const CFISH_TestFormatterTAP_Summary_t method = (CFISH_TestFormatterTAP_Summary_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Summary_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/TestHarness/TestSuite.c -c -o cfcore/Clownfish/TestHarness/TestSuite.o In file included from autogen/include/Clownfish/TestHarness/TestSuite.h:40, from cfcore/Clownfish/TestHarness/TestSuite.c:23: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_Host’: autogen/include/Clownfish/TestHarness/TestSuite.h:153:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuite *, void *)’ [-Wcast-function-type] 153 | const CFISH_TestSuite_To_Host_t method = (CFISH_TestSuite_To_Host_t)cfish_obj_method(self, CFISH_TestSuite_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Clone’: autogen/include/Clownfish/TestHarness/TestSuite.h:160:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 160 | const CFISH_TestSuite_Clone_t method = (CFISH_TestSuite_Clone_t)cfish_obj_method(self, CFISH_TestSuite_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Equals’: autogen/include/Clownfish/TestHarness/TestSuite.h:167:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_Obj *)’ [-Wcast-function-type] 167 | const CFISH_TestSuite_Equals_t method = (CFISH_TestSuite_Equals_t)cfish_obj_method(self, CFISH_TestSuite_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuite.h:174:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuite *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuite *, cfish_Obj *)’} [-Wcast-function-type] 174 | const CFISH_TestSuite_Compare_To_t method = (CFISH_TestSuite_Compare_To_t)cfish_obj_method(self, CFISH_TestSuite_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_String’: autogen/include/Clownfish/TestHarness/TestSuite.h:188:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 188 | const CFISH_TestSuite_To_String_t method = (CFISH_TestSuite_To_String_t)cfish_obj_method(self, CFISH_TestSuite_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Add_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:195:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestSuite *, cfish_TestBatch *)’ [-Wcast-function-type] 195 | const CFISH_TestSuite_Add_Batch_t method = (CFISH_TestSuite_Add_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Add_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:202:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_String *, cfish_TestFormatter *)’ [-Wcast-function-type] 202 | const CFISH_TestSuite_Run_Batch_t method = (CFISH_TestSuite_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_All_Batches’: autogen/include/Clownfish/TestHarness/TestSuite.h:209:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_TestFormatter *)’ [-Wcast-function-type] 209 | const CFISH_TestSuite_Run_All_Batches_t method = (CFISH_TestSuite_Run_All_Batches_t)cfish_obj_method(self, CFISH_TestSuite_Run_All_Batches_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/TestHarness/TestSuite.c:25: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuite.c:27: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuite.c:28: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuite.c:29: autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:173:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatter *, void *)’ [-Wcast-function-type] 173 | const CFISH_TestFormatter_To_Host_t method = (CFISH_TestFormatter_To_Host_t)cfish_obj_method(self, CFISH_TestFormatter_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:180:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 180 | const CFISH_TestFormatter_Clone_t method = (CFISH_TestFormatter_Clone_t)cfish_obj_method(self, CFISH_TestFormatter_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:187:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatter *, cfish_Obj *)’ [-Wcast-function-type] 187 | const CFISH_TestFormatter_Equals_t method = (CFISH_TestFormatter_Equals_t)cfish_obj_method(self, CFISH_TestFormatter_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:194:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatter *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatter *, cfish_Obj *)’} [-Wcast-function-type] 194 | const CFISH_TestFormatter_Compare_To_t method = (CFISH_TestFormatter_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:208:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 208 | const CFISH_TestFormatter_To_String_t method = (CFISH_TestFormatter_To_String_t)cfish_obj_method(self, CFISH_TestFormatter_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:215:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 215 | const CFISH_TestFormatter_Batch_Prologue_t method = (CFISH_TestFormatter_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatter_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:222:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 222 | const CFISH_TestFormatter_VTest_Result_t method = (CFISH_TestFormatter_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:229:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 229 | const CFISH_TestFormatter_VTest_Skip_t method = (CFISH_TestFormatter_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:236:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 236 | const CFISH_TestFormatter_VTest_Comment_t method = (CFISH_TestFormatter_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:243:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 243 | const CFISH_TestFormatter_VBatch_Comment_t method = (CFISH_TestFormatter_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:250:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 250 | const CFISH_TestFormatter_Summary_t method = (CFISH_TestFormatter_Summary_t)cfish_obj_method(self, CFISH_TestFormatter_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:459:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterCF *, void *)’ [-Wcast-function-type] 459 | const CFISH_TestFormatterCF_To_Host_t method = (CFISH_TestFormatterCF_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:466:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 466 | const CFISH_TestFormatterCF_Clone_t method = (CFISH_TestFormatterCF_Clone_t)cfish_obj_method(self, CFISH_TestFormatterCF_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:473:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterCF *, cfish_Obj *)’ [-Wcast-function-type] 473 | const CFISH_TestFormatterCF_Equals_t method = (CFISH_TestFormatterCF_Equals_t)cfish_obj_method(self, CFISH_TestFormatterCF_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:480:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterCF *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterCF *, cfish_Obj *)’} [-Wcast-function-type] 480 | const CFISH_TestFormatterCF_Compare_To_t method = (CFISH_TestFormatterCF_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterCF_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:494:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 494 | const CFISH_TestFormatterCF_To_String_t method = (CFISH_TestFormatterCF_To_String_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:501:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 501 | const CFISH_TestFormatterCF_Batch_Prologue_t method = (CFISH_TestFormatterCF_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterCF_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:508:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 508 | const CFISH_TestFormatterCF_VTest_Result_t method = (CFISH_TestFormatterCF_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:515:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 515 | const CFISH_TestFormatterCF_VTest_Skip_t method = (CFISH_TestFormatterCF_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:522:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 522 | const CFISH_TestFormatterCF_VTest_Comment_t method = (CFISH_TestFormatterCF_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:529:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 529 | const CFISH_TestFormatterCF_VBatch_Comment_t method = (CFISH_TestFormatterCF_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:536:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 536 | const CFISH_TestFormatterCF_Summary_t method = (CFISH_TestFormatterCF_Summary_t)cfish_obj_method(self, CFISH_TestFormatterCF_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:725:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterTAP *, void *)’ [-Wcast-function-type] 725 | const CFISH_TestFormatterTAP_To_Host_t method = (CFISH_TestFormatterTAP_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:732:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 732 | const CFISH_TestFormatterTAP_Clone_t method = (CFISH_TestFormatterTAP_Clone_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:739:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ [-Wcast-function-type] 739 | const CFISH_TestFormatterTAP_Equals_t method = (CFISH_TestFormatterTAP_Equals_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:746:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterTAP *, cfish_Obj *)’} [-Wcast-function-type] 746 | const CFISH_TestFormatterTAP_Compare_To_t method = (CFISH_TestFormatterTAP_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:760:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 760 | const CFISH_TestFormatterTAP_To_String_t method = (CFISH_TestFormatterTAP_To_String_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:767:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 767 | const CFISH_TestFormatterTAP_Batch_Prologue_t method = (CFISH_TestFormatterTAP_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:774:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 774 | const CFISH_TestFormatterTAP_VTest_Result_t method = (CFISH_TestFormatterTAP_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:781:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 781 | const CFISH_TestFormatterTAP_VTest_Skip_t method = (CFISH_TestFormatterTAP_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:788:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 788 | const CFISH_TestFormatterTAP_VTest_Comment_t method = (CFISH_TestFormatterTAP_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:795:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 795 | const CFISH_TestFormatterTAP_VBatch_Comment_t method = (CFISH_TestFormatterTAP_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:802:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 802 | const CFISH_TestFormatterTAP_Summary_t method = (CFISH_TestFormatterTAP_Summary_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Summary_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestSuite.c:30: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:175:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuiteRunner *, void *)’ [-Wcast-function-type] 175 | const CFISH_TestSuiteRunner_To_Host_t method = (CFISH_TestSuiteRunner_To_Host_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Clone’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:182:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 182 | const CFISH_TestSuiteRunner_Clone_t method = (CFISH_TestSuiteRunner_Clone_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Equals’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:189:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ [-Wcast-function-type] 189 | const CFISH_TestSuiteRunner_Equals_t method = (CFISH_TestSuiteRunner_Equals_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:196:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuiteRunner *, cfish_Obj *)’} [-Wcast-function-type] 196 | const CFISH_TestSuiteRunner_Compare_To_t method = (CFISH_TestSuiteRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_String’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:210:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 210 | const CFISH_TestSuiteRunner_To_String_t method = (CFISH_TestSuiteRunner_To_String_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:217:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 217 | const CFISH_TestSuiteRunner_Run_Batch_t method = (CFISH_TestSuiteRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Finish’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:224:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 224 | const CFISH_TestSuiteRunner_Finish_t method = (CFISH_TestSuiteRunner_Finish_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Finish_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:231:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 231 | const CFISH_TestSuiteRunner_Get_Num_Tests_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:238:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 238 | const CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:245:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 245 | const CFISH_TestSuiteRunner_Get_Num_Batches_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:252:67: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 252 | const CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_Failed_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/TestHarness/TestFormatter.c -c -o cfcore/Clownfish/TestHarness/TestFormatter.o In file included from autogen/include/Clownfish/TestHarness/TestFormatter.h:40, from cfcore/Clownfish/TestHarness/TestFormatter.c:22: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:173:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatter *, void *)’ [-Wcast-function-type] 173 | const CFISH_TestFormatter_To_Host_t method = (CFISH_TestFormatter_To_Host_t)cfish_obj_method(self, CFISH_TestFormatter_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:180:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 180 | const CFISH_TestFormatter_Clone_t method = (CFISH_TestFormatter_Clone_t)cfish_obj_method(self, CFISH_TestFormatter_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:187:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatter *, cfish_Obj *)’ [-Wcast-function-type] 187 | const CFISH_TestFormatter_Equals_t method = (CFISH_TestFormatter_Equals_t)cfish_obj_method(self, CFISH_TestFormatter_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:194:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatter *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatter *, cfish_Obj *)’} [-Wcast-function-type] 194 | const CFISH_TestFormatter_Compare_To_t method = (CFISH_TestFormatter_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:208:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 208 | const CFISH_TestFormatter_To_String_t method = (CFISH_TestFormatter_To_String_t)cfish_obj_method(self, CFISH_TestFormatter_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:215:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 215 | const CFISH_TestFormatter_Batch_Prologue_t method = (CFISH_TestFormatter_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatter_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:222:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 222 | const CFISH_TestFormatter_VTest_Result_t method = (CFISH_TestFormatter_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:229:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 229 | const CFISH_TestFormatter_VTest_Skip_t method = (CFISH_TestFormatter_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:236:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 236 | const CFISH_TestFormatter_VTest_Comment_t method = (CFISH_TestFormatter_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:243:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 243 | const CFISH_TestFormatter_VBatch_Comment_t method = (CFISH_TestFormatter_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:250:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 250 | const CFISH_TestFormatter_Summary_t method = (CFISH_TestFormatter_Summary_t)cfish_obj_method(self, CFISH_TestFormatter_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:459:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterCF *, void *)’ [-Wcast-function-type] 459 | const CFISH_TestFormatterCF_To_Host_t method = (CFISH_TestFormatterCF_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:466:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 466 | const CFISH_TestFormatterCF_Clone_t method = (CFISH_TestFormatterCF_Clone_t)cfish_obj_method(self, CFISH_TestFormatterCF_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:473:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterCF *, cfish_Obj *)’ [-Wcast-function-type] 473 | const CFISH_TestFormatterCF_Equals_t method = (CFISH_TestFormatterCF_Equals_t)cfish_obj_method(self, CFISH_TestFormatterCF_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:480:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterCF *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterCF *, cfish_Obj *)’} [-Wcast-function-type] 480 | const CFISH_TestFormatterCF_Compare_To_t method = (CFISH_TestFormatterCF_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterCF_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:494:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 494 | const CFISH_TestFormatterCF_To_String_t method = (CFISH_TestFormatterCF_To_String_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:501:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 501 | const CFISH_TestFormatterCF_Batch_Prologue_t method = (CFISH_TestFormatterCF_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterCF_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:508:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 508 | const CFISH_TestFormatterCF_VTest_Result_t method = (CFISH_TestFormatterCF_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:515:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 515 | const CFISH_TestFormatterCF_VTest_Skip_t method = (CFISH_TestFormatterCF_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:522:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 522 | const CFISH_TestFormatterCF_VTest_Comment_t method = (CFISH_TestFormatterCF_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:529:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 529 | const CFISH_TestFormatterCF_VBatch_Comment_t method = (CFISH_TestFormatterCF_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:536:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 536 | const CFISH_TestFormatterCF_Summary_t method = (CFISH_TestFormatterCF_Summary_t)cfish_obj_method(self, CFISH_TestFormatterCF_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:725:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterTAP *, void *)’ [-Wcast-function-type] 725 | const CFISH_TestFormatterTAP_To_Host_t method = (CFISH_TestFormatterTAP_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:732:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 732 | const CFISH_TestFormatterTAP_Clone_t method = (CFISH_TestFormatterTAP_Clone_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:739:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ [-Wcast-function-type] 739 | const CFISH_TestFormatterTAP_Equals_t method = (CFISH_TestFormatterTAP_Equals_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:746:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterTAP *, cfish_Obj *)’} [-Wcast-function-type] 746 | const CFISH_TestFormatterTAP_Compare_To_t method = (CFISH_TestFormatterTAP_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:760:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 760 | const CFISH_TestFormatterTAP_To_String_t method = (CFISH_TestFormatterTAP_To_String_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:767:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 767 | const CFISH_TestFormatterTAP_Batch_Prologue_t method = (CFISH_TestFormatterTAP_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:774:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 774 | const CFISH_TestFormatterTAP_VTest_Result_t method = (CFISH_TestFormatterTAP_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:781:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 781 | const CFISH_TestFormatterTAP_VTest_Skip_t method = (CFISH_TestFormatterTAP_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:788:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 788 | const CFISH_TestFormatterTAP_VTest_Comment_t method = (CFISH_TestFormatterTAP_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:795:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 795 | const CFISH_TestFormatterTAP_VBatch_Comment_t method = (CFISH_TestFormatterTAP_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:802:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 802 | const CFISH_TestFormatterTAP_Summary_t method = (CFISH_TestFormatterTAP_Summary_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Summary_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/TestHarness/TestFormatter.c:24: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestFormatter.c:26: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestFormatter.c:27: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:175:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuiteRunner *, void *)’ [-Wcast-function-type] 175 | const CFISH_TestSuiteRunner_To_Host_t method = (CFISH_TestSuiteRunner_To_Host_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Clone’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:182:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 182 | const CFISH_TestSuiteRunner_Clone_t method = (CFISH_TestSuiteRunner_Clone_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Equals’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:189:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ [-Wcast-function-type] 189 | const CFISH_TestSuiteRunner_Equals_t method = (CFISH_TestSuiteRunner_Equals_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:196:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuiteRunner *, cfish_Obj *)’} [-Wcast-function-type] 196 | const CFISH_TestSuiteRunner_Compare_To_t method = (CFISH_TestSuiteRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_String’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:210:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 210 | const CFISH_TestSuiteRunner_To_String_t method = (CFISH_TestSuiteRunner_To_String_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:217:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 217 | const CFISH_TestSuiteRunner_Run_Batch_t method = (CFISH_TestSuiteRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Finish’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:224:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 224 | const CFISH_TestSuiteRunner_Finish_t method = (CFISH_TestSuiteRunner_Finish_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Finish_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:231:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 231 | const CFISH_TestSuiteRunner_Get_Num_Tests_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:238:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 238 | const CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:245:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 245 | const CFISH_TestSuiteRunner_Get_Num_Batches_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:252:67: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 252 | const CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_Failed_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/TestHarness/TestBatchRunner.c -c -o cfcore/Clownfish/TestHarness/TestBatchRunner.o In file included from autogen/include/Clownfish/TestHarness/TestBatchRunner.h:40, from cfcore/Clownfish/TestHarness/TestBatchRunner.c:26: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/TestHarness/TestBatchRunner.c:28: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestBatchRunner.c:30: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ In file included from cfcore/Clownfish/TestHarness/TestBatchRunner.c:31: autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:173:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatter *, void *)’ [-Wcast-function-type] 173 | const CFISH_TestFormatter_To_Host_t method = (CFISH_TestFormatter_To_Host_t)cfish_obj_method(self, CFISH_TestFormatter_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:180:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 180 | const CFISH_TestFormatter_Clone_t method = (CFISH_TestFormatter_Clone_t)cfish_obj_method(self, CFISH_TestFormatter_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:187:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatter *, cfish_Obj *)’ [-Wcast-function-type] 187 | const CFISH_TestFormatter_Equals_t method = (CFISH_TestFormatter_Equals_t)cfish_obj_method(self, CFISH_TestFormatter_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:194:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatter *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatter *, cfish_Obj *)’} [-Wcast-function-type] 194 | const CFISH_TestFormatter_Compare_To_t method = (CFISH_TestFormatter_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:208:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 208 | const CFISH_TestFormatter_To_String_t method = (CFISH_TestFormatter_To_String_t)cfish_obj_method(self, CFISH_TestFormatter_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:215:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 215 | const CFISH_TestFormatter_Batch_Prologue_t method = (CFISH_TestFormatter_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatter_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:222:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 222 | const CFISH_TestFormatter_VTest_Result_t method = (CFISH_TestFormatter_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:229:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 229 | const CFISH_TestFormatter_VTest_Skip_t method = (CFISH_TestFormatter_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:236:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 236 | const CFISH_TestFormatter_VTest_Comment_t method = (CFISH_TestFormatter_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:243:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 243 | const CFISH_TestFormatter_VBatch_Comment_t method = (CFISH_TestFormatter_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:250:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 250 | const CFISH_TestFormatter_Summary_t method = (CFISH_TestFormatter_Summary_t)cfish_obj_method(self, CFISH_TestFormatter_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:459:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterCF *, void *)’ [-Wcast-function-type] 459 | const CFISH_TestFormatterCF_To_Host_t method = (CFISH_TestFormatterCF_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:466:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 466 | const CFISH_TestFormatterCF_Clone_t method = (CFISH_TestFormatterCF_Clone_t)cfish_obj_method(self, CFISH_TestFormatterCF_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:473:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterCF *, cfish_Obj *)’ [-Wcast-function-type] 473 | const CFISH_TestFormatterCF_Equals_t method = (CFISH_TestFormatterCF_Equals_t)cfish_obj_method(self, CFISH_TestFormatterCF_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:480:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterCF *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterCF *, cfish_Obj *)’} [-Wcast-function-type] 480 | const CFISH_TestFormatterCF_Compare_To_t method = (CFISH_TestFormatterCF_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterCF_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:494:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 494 | const CFISH_TestFormatterCF_To_String_t method = (CFISH_TestFormatterCF_To_String_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:501:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 501 | const CFISH_TestFormatterCF_Batch_Prologue_t method = (CFISH_TestFormatterCF_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterCF_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:508:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 508 | const CFISH_TestFormatterCF_VTest_Result_t method = (CFISH_TestFormatterCF_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:515:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 515 | const CFISH_TestFormatterCF_VTest_Skip_t method = (CFISH_TestFormatterCF_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:522:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 522 | const CFISH_TestFormatterCF_VTest_Comment_t method = (CFISH_TestFormatterCF_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:529:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 529 | const CFISH_TestFormatterCF_VBatch_Comment_t method = (CFISH_TestFormatterCF_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:536:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 536 | const CFISH_TestFormatterCF_Summary_t method = (CFISH_TestFormatterCF_Summary_t)cfish_obj_method(self, CFISH_TestFormatterCF_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:725:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterTAP *, void *)’ [-Wcast-function-type] 725 | const CFISH_TestFormatterTAP_To_Host_t method = (CFISH_TestFormatterTAP_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:732:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 732 | const CFISH_TestFormatterTAP_Clone_t method = (CFISH_TestFormatterTAP_Clone_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:739:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ [-Wcast-function-type] 739 | const CFISH_TestFormatterTAP_Equals_t method = (CFISH_TestFormatterTAP_Equals_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:746:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterTAP *, cfish_Obj *)’} [-Wcast-function-type] 746 | const CFISH_TestFormatterTAP_Compare_To_t method = (CFISH_TestFormatterTAP_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:760:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 760 | const CFISH_TestFormatterTAP_To_String_t method = (CFISH_TestFormatterTAP_To_String_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:767:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 767 | const CFISH_TestFormatterTAP_Batch_Prologue_t method = (CFISH_TestFormatterTAP_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:774:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 774 | const CFISH_TestFormatterTAP_VTest_Result_t method = (CFISH_TestFormatterTAP_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:781:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 781 | const CFISH_TestFormatterTAP_VTest_Skip_t method = (CFISH_TestFormatterTAP_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:788:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 788 | const CFISH_TestFormatterTAP_VTest_Comment_t method = (CFISH_TestFormatterTAP_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:795:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 795 | const CFISH_TestFormatterTAP_VBatch_Comment_t method = (CFISH_TestFormatterTAP_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:802:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 802 | const CFISH_TestFormatterTAP_Summary_t method = (CFISH_TestFormatterTAP_Summary_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Summary_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Vector.c -c -o cfcore/Clownfish/Vector.o In file included from autogen/include/Clownfish/Class.h:40, from cfcore/Clownfish/Vector.c:23: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish/Vector.c:25: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/String.c -c -o cfcore/Clownfish/String.o In file included from autogen/include/Clownfish/Class.h:40, from cfcore/Clownfish/String.c:26: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/String.c:27: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from autogen/include/Clownfish/Class.h:35: cfcore/Clownfish/String.c: In function ‘CFISH_Str_Hash_Sum_IMP’: autogen/include/cfish_parcel.h:102:7: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 102 | ((_full_meth ## _t)cfish_method(_class, _full_meth ## _OFFSET)) | ^ autogen/include/cfish_parcel.h:252:36: note: in expansion of macro ‘CFISH_METHOD_PTR’ 252 | #define METHOD_PTR CFISH_METHOD_PTR | ^~~~~~~~~~~~~~~~ cfcore/Clownfish/String.c:357:33: note: in expansion of macro ‘METHOD_PTR’ 357 | const StrIter_Next_t next = METHOD_PTR(STRINGITERATOR, CFISH_StrIter_Next); | ^~~~~~~~~~ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/PtrHash.c -c -o cfcore/Clownfish/PtrHash.o In file included from autogen/include/Clownfish/Err.h:47, from cfcore/Clownfish/PtrHash.c:24: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Obj.c -c -o cfcore/Clownfish/Obj.o In file included from cfcore/Clownfish/Obj.c:27: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/Obj.c:28: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Num.c -c -o cfcore/Clownfish/Num.o In file included from autogen/include/Clownfish/Num.h:40, from cfcore/Clownfish/Num.c:25: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/Num.c:26: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Method.c -c -o cfcore/Clownfish/Method.o In file included from autogen/include/Clownfish/Method.h:40, from cfcore/Clownfish/Method.c:22: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/Method.c:23: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/LockFreeRegistry.c -c -o cfcore/Clownfish/LockFreeRegistry.o In file included from cfcore/Clownfish/LockFreeRegistry.c:19: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish/LockFreeRegistry.c:21: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/HashIterator.c -c -o cfcore/Clownfish/HashIterator.o In file included from autogen/include/Clownfish/Class.h:40, from cfcore/Clownfish/HashIterator.c:21: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish/HashIterator.c:22: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Hash.c -c -o cfcore/Clownfish/Hash.o In file included from autogen/include/Clownfish/Class.h:40, from cfcore/Clownfish/Hash.c:23: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/Hash.c:26: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Err.c -c -o cfcore/Clownfish/Err.o In file included from autogen/include/Clownfish/Err.h:47, from cfcore/Clownfish/Err.c:27: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Class.c -c -o cfcore/Clownfish/Class.o In file included from autogen/include/Clownfish/Class.h:40, from cfcore/Clownfish/Class.c:27: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/Class.c:28: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/CharBuf.c -c -o cfcore/Clownfish/CharBuf.o In file included from autogen/include/Clownfish/CharBuf.h:40, from cfcore/Clownfish/CharBuf.c:28: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish/CharBuf.c:30: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/ByteBuf.c -c -o cfcore/Clownfish/ByteBuf.o In file included from autogen/include/Clownfish/Class.h:40, from cfcore/Clownfish/ByteBuf.c:24: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish/ByteBuf.c:27: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Boolean.c -c -o cfcore/Clownfish/Boolean.o In file included from autogen/include/Clownfish/Boolean.h:40, from cfcore/Clownfish/Boolean.c:21: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cfcore/Clownfish/Boolean.c:24: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish/Blob.c -c -o cfcore/Clownfish/Blob.o In file included from autogen/include/Clownfish/Class.h:40, from cfcore/Clownfish/Blob.c:22: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish/Blob.c:24: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH cfcore/Clownfish.c -c -o cfcore/Clownfish.o In file included from autogen/include/Clownfish/Boolean.h:40, from cfcore/Clownfish.c:17: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from cfcore/Clownfish.c:20: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_CFISH autogen/source/cfish_parcel.c -c -o autogen/source/cfish_parcel.o In file included from autogen/include/Clownfish/Class.h:40, from autogen/source/cfish_parcel.c:56: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/source/cfish_parcel.c:57: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from autogen/source/cfish_parcel.c:62: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:175:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuiteRunner *, void *)’ [-Wcast-function-type] 175 | const CFISH_TestSuiteRunner_To_Host_t method = (CFISH_TestSuiteRunner_To_Host_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Clone’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:182:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 182 | const CFISH_TestSuiteRunner_Clone_t method = (CFISH_TestSuiteRunner_Clone_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Equals’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:189:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ [-Wcast-function-type] 189 | const CFISH_TestSuiteRunner_Equals_t method = (CFISH_TestSuiteRunner_Equals_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:196:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuiteRunner *, cfish_Obj *)’} [-Wcast-function-type] 196 | const CFISH_TestSuiteRunner_Compare_To_t method = (CFISH_TestSuiteRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_String’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:210:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 210 | const CFISH_TestSuiteRunner_To_String_t method = (CFISH_TestSuiteRunner_To_String_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:217:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 217 | const CFISH_TestSuiteRunner_Run_Batch_t method = (CFISH_TestSuiteRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Finish’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:224:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 224 | const CFISH_TestSuiteRunner_Finish_t method = (CFISH_TestSuiteRunner_Finish_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Finish_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:231:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 231 | const CFISH_TestSuiteRunner_Get_Num_Tests_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:238:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 238 | const CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:245:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 245 | const CFISH_TestSuiteRunner_Get_Num_Batches_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:252:67: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 252 | const CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_Failed_OFFSET); | ^ In file included from autogen/source/cfish_parcel.c:63: autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_Host’: autogen/include/Clownfish/TestHarness/TestSuite.h:153:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuite *, void *)’ [-Wcast-function-type] 153 | const CFISH_TestSuite_To_Host_t method = (CFISH_TestSuite_To_Host_t)cfish_obj_method(self, CFISH_TestSuite_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Clone’: autogen/include/Clownfish/TestHarness/TestSuite.h:160:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 160 | const CFISH_TestSuite_Clone_t method = (CFISH_TestSuite_Clone_t)cfish_obj_method(self, CFISH_TestSuite_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Equals’: autogen/include/Clownfish/TestHarness/TestSuite.h:167:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_Obj *)’ [-Wcast-function-type] 167 | const CFISH_TestSuite_Equals_t method = (CFISH_TestSuite_Equals_t)cfish_obj_method(self, CFISH_TestSuite_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuite.h:174:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuite *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuite *, cfish_Obj *)’} [-Wcast-function-type] 174 | const CFISH_TestSuite_Compare_To_t method = (CFISH_TestSuite_Compare_To_t)cfish_obj_method(self, CFISH_TestSuite_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_String’: autogen/include/Clownfish/TestHarness/TestSuite.h:188:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 188 | const CFISH_TestSuite_To_String_t method = (CFISH_TestSuite_To_String_t)cfish_obj_method(self, CFISH_TestSuite_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Add_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:195:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestSuite *, cfish_TestBatch *)’ [-Wcast-function-type] 195 | const CFISH_TestSuite_Add_Batch_t method = (CFISH_TestSuite_Add_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Add_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:202:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_String *, cfish_TestFormatter *)’ [-Wcast-function-type] 202 | const CFISH_TestSuite_Run_Batch_t method = (CFISH_TestSuite_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_All_Batches’: autogen/include/Clownfish/TestHarness/TestSuite.h:209:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_TestFormatter *)’ [-Wcast-function-type] 209 | const CFISH_TestSuite_Run_All_Batches_t method = (CFISH_TestSuite_Run_All_Batches_t)cfish_obj_method(self, CFISH_TestSuite_Run_All_Batches_OFFSET); | ^ In file included from autogen/source/cfish_parcel.c:64: autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:173:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatter *, void *)’ [-Wcast-function-type] 173 | const CFISH_TestFormatter_To_Host_t method = (CFISH_TestFormatter_To_Host_t)cfish_obj_method(self, CFISH_TestFormatter_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:180:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 180 | const CFISH_TestFormatter_Clone_t method = (CFISH_TestFormatter_Clone_t)cfish_obj_method(self, CFISH_TestFormatter_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:187:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatter *, cfish_Obj *)’ [-Wcast-function-type] 187 | const CFISH_TestFormatter_Equals_t method = (CFISH_TestFormatter_Equals_t)cfish_obj_method(self, CFISH_TestFormatter_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:194:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatter *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatter *, cfish_Obj *)’} [-Wcast-function-type] 194 | const CFISH_TestFormatter_Compare_To_t method = (CFISH_TestFormatter_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:208:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 208 | const CFISH_TestFormatter_To_String_t method = (CFISH_TestFormatter_To_String_t)cfish_obj_method(self, CFISH_TestFormatter_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:215:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 215 | const CFISH_TestFormatter_Batch_Prologue_t method = (CFISH_TestFormatter_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatter_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:222:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 222 | const CFISH_TestFormatter_VTest_Result_t method = (CFISH_TestFormatter_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:229:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 229 | const CFISH_TestFormatter_VTest_Skip_t method = (CFISH_TestFormatter_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:236:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 236 | const CFISH_TestFormatter_VTest_Comment_t method = (CFISH_TestFormatter_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:243:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 243 | const CFISH_TestFormatter_VBatch_Comment_t method = (CFISH_TestFormatter_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:250:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 250 | const CFISH_TestFormatter_Summary_t method = (CFISH_TestFormatter_Summary_t)cfish_obj_method(self, CFISH_TestFormatter_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:459:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterCF *, void *)’ [-Wcast-function-type] 459 | const CFISH_TestFormatterCF_To_Host_t method = (CFISH_TestFormatterCF_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:466:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 466 | const CFISH_TestFormatterCF_Clone_t method = (CFISH_TestFormatterCF_Clone_t)cfish_obj_method(self, CFISH_TestFormatterCF_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:473:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterCF *, cfish_Obj *)’ [-Wcast-function-type] 473 | const CFISH_TestFormatterCF_Equals_t method = (CFISH_TestFormatterCF_Equals_t)cfish_obj_method(self, CFISH_TestFormatterCF_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:480:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterCF *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterCF *, cfish_Obj *)’} [-Wcast-function-type] 480 | const CFISH_TestFormatterCF_Compare_To_t method = (CFISH_TestFormatterCF_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterCF_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:494:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 494 | const CFISH_TestFormatterCF_To_String_t method = (CFISH_TestFormatterCF_To_String_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:501:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 501 | const CFISH_TestFormatterCF_Batch_Prologue_t method = (CFISH_TestFormatterCF_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterCF_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:508:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 508 | const CFISH_TestFormatterCF_VTest_Result_t method = (CFISH_TestFormatterCF_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:515:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 515 | const CFISH_TestFormatterCF_VTest_Skip_t method = (CFISH_TestFormatterCF_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:522:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 522 | const CFISH_TestFormatterCF_VTest_Comment_t method = (CFISH_TestFormatterCF_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:529:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 529 | const CFISH_TestFormatterCF_VBatch_Comment_t method = (CFISH_TestFormatterCF_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:536:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 536 | const CFISH_TestFormatterCF_Summary_t method = (CFISH_TestFormatterCF_Summary_t)cfish_obj_method(self, CFISH_TestFormatterCF_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:725:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterTAP *, void *)’ [-Wcast-function-type] 725 | const CFISH_TestFormatterTAP_To_Host_t method = (CFISH_TestFormatterTAP_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:732:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 732 | const CFISH_TestFormatterTAP_Clone_t method = (CFISH_TestFormatterTAP_Clone_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:739:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ [-Wcast-function-type] 739 | const CFISH_TestFormatterTAP_Equals_t method = (CFISH_TestFormatterTAP_Equals_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:746:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterTAP *, cfish_Obj *)’} [-Wcast-function-type] 746 | const CFISH_TestFormatterTAP_Compare_To_t method = (CFISH_TestFormatterTAP_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:760:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 760 | const CFISH_TestFormatterTAP_To_String_t method = (CFISH_TestFormatterTAP_To_String_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:767:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 767 | const CFISH_TestFormatterTAP_Batch_Prologue_t method = (CFISH_TestFormatterTAP_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:774:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 774 | const CFISH_TestFormatterTAP_VTest_Result_t method = (CFISH_TestFormatterTAP_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:781:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 781 | const CFISH_TestFormatterTAP_VTest_Skip_t method = (CFISH_TestFormatterTAP_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:788:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 788 | const CFISH_TestFormatterTAP_VTest_Comment_t method = (CFISH_TestFormatterTAP_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:795:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 795 | const CFISH_TestFormatterTAP_VBatch_Comment_t method = (CFISH_TestFormatterTAP_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:802:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 802 | const CFISH_TestFormatterTAP_Summary_t method = (CFISH_TestFormatterTAP_Summary_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Summary_OFFSET); | ^ In file included from autogen/source/cfish_parcel.c:67: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from autogen/source/cfish_parcel.c:68: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/source/cfish_parcel.c: At top level: autogen/source/cfish_parcel.c:960:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Obj *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 960 | (cfish_method_t)CFISH_Obj_To_Host_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:961:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Obj *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 961 | (cfish_method_t)Cfish_Obj_To_Host_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:966:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 966 | (cfish_method_t)CFISH_Obj_Clone_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:967:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 967 | (cfish_method_t)Cfish_Obj_Clone_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:972:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 972 | (cfish_method_t)CFISH_Obj_Equals_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:973:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 973 | (cfish_method_t)Cfish_Obj_Equals_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:978:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 978 | (cfish_method_t)CFISH_Obj_Compare_To_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:979:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 979 | (cfish_method_t)Cfish_Obj_Compare_To_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:990:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 990 | (cfish_method_t)CFISH_Obj_To_String_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:991:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 991 | (cfish_method_t)Cfish_Obj_To_String_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:996:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_TestBatch *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 996 | (cfish_method_t)CFISH_TestSuiteRunner_Run_Batch_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:997:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_TestBatch *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 997 | (cfish_method_t)Cfish_TestSuiteRunner_Run_Batch_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1002:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuiteRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1002 | (cfish_method_t)CFISH_TestSuiteRunner_Finish_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1003:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuiteRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1003 | (cfish_method_t)Cfish_TestSuiteRunner_Finish_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1008:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1008 | (cfish_method_t)CFISH_TestSuiteRunner_Get_Num_Tests_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1009:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1009 | (cfish_method_t)Cfish_TestSuiteRunner_Get_Num_Tests_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1014:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1014 | (cfish_method_t)CFISH_TestSuiteRunner_Get_Num_Tests_Failed_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1015:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1015 | (cfish_method_t)Cfish_TestSuiteRunner_Get_Num_Tests_Failed_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1020:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1020 | (cfish_method_t)CFISH_TestSuiteRunner_Get_Num_Batches_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1021:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1021 | (cfish_method_t)Cfish_TestSuiteRunner_Get_Num_Batches_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1026:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1026 | (cfish_method_t)CFISH_TestSuiteRunner_Get_Num_Batches_Failed_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1027:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1027 | (cfish_method_t)Cfish_TestSuiteRunner_Get_Num_Batches_Failed_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1032:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestSuite *, cfish_TestBatch *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1032 | (cfish_method_t)CFISH_TestSuite_Add_Batch_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1033:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestSuite *, cfish_TestBatch *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1033 | (cfish_method_t)Cfish_TestSuite_Add_Batch_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1038:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuite *, cfish_String *, cfish_TestFormatter *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1038 | (cfish_method_t)CFISH_TestSuite_Run_Batch_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1039:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuite *, cfish_String *, cfish_TestFormatter *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1039 | (cfish_method_t)Cfish_TestSuite_Run_Batch_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1044:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuite *, cfish_TestFormatter *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1044 | (cfish_method_t)CFISH_TestSuite_Run_All_Batches_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1045:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestSuite *, cfish_TestFormatter *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1045 | (cfish_method_t)Cfish_TestSuite_Run_All_Batches_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1050:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1050 | (cfish_method_t)CFISH_TestFormatter_Batch_Prologue_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1051:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1051 | (cfish_method_t)Cfish_TestFormatter_Batch_Prologue_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1056:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1056 | (cfish_method_t)CFISH_TestFormatter_VTest_Result_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1057:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1057 | (cfish_method_t)Cfish_TestFormatter_VTest_Result_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1062:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1062 | (cfish_method_t)CFISH_TestFormatter_VTest_Skip_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1063:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1063 | (cfish_method_t)Cfish_TestFormatter_VTest_Skip_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1068:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1068 | (cfish_method_t)CFISH_TestFormatter_VTest_Comment_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1069:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1069 | (cfish_method_t)Cfish_TestFormatter_VTest_Comment_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1074:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1074 | (cfish_method_t)CFISH_TestFormatter_VBatch_Comment_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1075:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1075 | (cfish_method_t)Cfish_TestFormatter_VBatch_Comment_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1080:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1080 | (cfish_method_t)CFISH_TestFormatter_Summary_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1081:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1081 | (cfish_method_t)Cfish_TestFormatter_Summary_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1086:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1086 | (cfish_method_t)CFISH_TestBatchRunner_Run_Batch_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1087:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1087 | (cfish_method_t)Cfish_TestBatchRunner_Run_Batch_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1092:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1092 | (cfish_method_t)CFISH_TestBatchRunner_Plan_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1093:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1093 | (cfish_method_t)Cfish_TestBatchRunner_Plan_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1098:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1098 | (cfish_method_t)CFISH_TestBatchRunner_Get_Num_Planned_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1099:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1099 | (cfish_method_t)Cfish_TestBatchRunner_Get_Num_Planned_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1104:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1104 | (cfish_method_t)CFISH_TestBatchRunner_Get_Num_Tests_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1105:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1105 | (cfish_method_t)Cfish_TestBatchRunner_Get_Num_Tests_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1110:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1110 | (cfish_method_t)CFISH_TestBatchRunner_Get_Num_Failed_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1111:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1111 | (cfish_method_t)Cfish_TestBatchRunner_Get_Num_Failed_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1116:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1116 | (cfish_method_t)CFISH_TestBatchRunner_VTest_True_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1117:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1117 | (cfish_method_t)Cfish_TestBatchRunner_VTest_True_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1122:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1122 | (cfish_method_t)CFISH_TestBatchRunner_VTest_False_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1123:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1123 | (cfish_method_t)Cfish_TestBatchRunner_VTest_False_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1128:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1128 | (cfish_method_t)CFISH_TestBatchRunner_VTest_Int_Equals_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1129:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1129 | (cfish_method_t)Cfish_TestBatchRunner_VTest_Int_Equals_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1134:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1134 | (cfish_method_t)CFISH_TestBatchRunner_VTest_UInt_Equals_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1135:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1135 | (cfish_method_t)Cfish_TestBatchRunner_VTest_UInt_Equals_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1140:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1140 | (cfish_method_t)CFISH_TestBatchRunner_VTest_Float_Equals_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1141:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1141 | (cfish_method_t)Cfish_TestBatchRunner_VTest_Float_Equals_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1146:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1146 | (cfish_method_t)CFISH_TestBatchRunner_VTest_String_Equals_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1147:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1147 | (cfish_method_t)Cfish_TestBatchRunner_VTest_String_Equals_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1152:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1152 | (cfish_method_t)CFISH_TestBatchRunner_VPass_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1153:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1153 | (cfish_method_t)Cfish_TestBatchRunner_VPass_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1158:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1158 | (cfish_method_t)CFISH_TestBatchRunner_VFail_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1159:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1159 | (cfish_method_t)Cfish_TestBatchRunner_VFail_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1164:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1164 | (cfish_method_t)CFISH_TestBatchRunner_VSkip_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1165:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1165 | (cfish_method_t)Cfish_TestBatchRunner_VSkip_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1170:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1170 | (cfish_method_t)CFISH_TestBatch_Run_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1171:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1171 | (cfish_method_t)Cfish_TestBatch_Run_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1176:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1176 | (cfish_method_t)CFISH_Vec_Push_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1182:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, cfish_Vector *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1182 | (cfish_method_t)CFISH_Vec_Push_All_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1188:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Vector *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1188 | (cfish_method_t)CFISH_Vec_Pop_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1194:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1194 | (cfish_method_t)CFISH_Vec_Insert_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1200:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, size_t, cfish_Vector *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Vector *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1200 | (cfish_method_t)CFISH_Vec_Insert_All_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1206:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1206 | (cfish_method_t)CFISH_Vec_Grow_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1212:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1212 | (cfish_method_t)CFISH_Vec_Fetch_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1218:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1218 | (cfish_method_t)CFISH_Vec_Store_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1224:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1224 | (cfish_method_t)CFISH_Vec_Delete_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1230:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, size_t, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1230 | (cfish_method_t)CFISH_Vec_Excise_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1242:9: warning: cast between incompatible function types from ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1242 | (cfish_method_t)CFISH_Vec_Resize_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1254:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1254 | (cfish_method_t)CFISH_Vec_Get_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1260:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1260 | (cfish_method_t)CFISH_Vec_Get_Capacity_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1266:9: warning: cast between incompatible function types from ‘cfish_Vector * (*)(cfish_Vector *, size_t, size_t)’ {aka ‘cfish_Vector * (*)(cfish_Vector *, long unsigned int, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1266 | (cfish_method_t)CFISH_Vec_Slice_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1272:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1272 | (cfish_method_t)CFISH_Str_Cat_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1278:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1278 | (cfish_method_t)CFISH_Str_Cat_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1284:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1284 | (cfish_method_t)CFISH_Str_Cat_Trusted_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1290:9: warning: cast between incompatible function types from ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1290 | (cfish_method_t)CFISH_Str_To_I64_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1296:9: warning: cast between incompatible function types from ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1296 | (cfish_method_t)CFISH_Str_BaseX_To_I64_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1302:9: warning: cast between incompatible function types from ‘double (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1302 | (cfish_method_t)CFISH_Str_To_F64_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1308:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1308 | (cfish_method_t)CFISH_Str_Starts_With_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1314:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1314 | (cfish_method_t)CFISH_Str_Starts_With_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1320:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1320 | (cfish_method_t)CFISH_Str_Ends_With_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1326:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1326 | (cfish_method_t)CFISH_Str_Ends_With_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1332:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1332 | (cfish_method_t)CFISH_Str_Contains_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1338:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1338 | (cfish_method_t)CFISH_Str_Contains_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1344:9: warning: cast between incompatible function types from ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1344 | (cfish_method_t)CFISH_Str_Find_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1350:9: warning: cast between incompatible function types from ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1350 | (cfish_method_t)CFISH_Str_Find_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1356:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1356 | (cfish_method_t)CFISH_Str_Equals_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1362:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1362 | (cfish_method_t)CFISH_Str_Length_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1368:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1368 | (cfish_method_t)CFISH_Str_Get_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1374:9: warning: cast between incompatible function types from ‘const char * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1374 | (cfish_method_t)CFISH_Str_Get_Ptr8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1380:9: warning: cast between incompatible function types from ‘char * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1380 | (cfish_method_t)CFISH_Str_To_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1386:9: warning: cast between incompatible function types from ‘cfish_ByteBuf * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1386 | (cfish_method_t)CFISH_Str_To_ByteBuf_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1392:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1392 | (cfish_method_t)CFISH_Str_Is_Copy_On_IncRef_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1398:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1398 | (cfish_method_t)CFISH_Str_Hash_Sum_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1404:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1404 | (cfish_method_t)CFISH_Str_Trim_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1410:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1410 | (cfish_method_t)CFISH_Str_Trim_Top_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1416:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1416 | (cfish_method_t)CFISH_Str_Trim_Tail_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1422:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1422 | (cfish_method_t)CFISH_Str_Code_Point_At_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1428:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1428 | (cfish_method_t)CFISH_Str_Code_Point_From_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1434:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1434 | (cfish_method_t)CFISH_Str_SubString_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1440:9: warning: cast between incompatible function types from ‘cfish_StringIterator * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1440 | (cfish_method_t)CFISH_Str_Top_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1446:9: warning: cast between incompatible function types from ‘cfish_StringIterator * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1446 | (cfish_method_t)CFISH_Str_Tail_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1452:9: warning: cast between incompatible function types from ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1452 | (cfish_method_t)CFISH_StrIter_Assign_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1458:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_StringIterator *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1458 | (cfish_method_t)CFISH_StrIter_Has_Next_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1464:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_StringIterator *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1464 | (cfish_method_t)CFISH_StrIter_Has_Prev_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1470:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1470 | (cfish_method_t)CFISH_StrIter_Next_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1476:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1476 | (cfish_method_t)CFISH_StrIter_Prev_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1482:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1482 | (cfish_method_t)CFISH_StrIter_Advance_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1488:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1488 | (cfish_method_t)CFISH_StrIter_Recede_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1494:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1494 | (cfish_method_t)CFISH_StrIter_Skip_Whitespace_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1500:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1500 | (cfish_method_t)CFISH_StrIter_Skip_Whitespace_Back_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1506:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1506 | (cfish_method_t)CFISH_StrIter_Starts_With_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1512:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1512 | (cfish_method_t)CFISH_StrIter_Starts_With_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1518:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1518 | (cfish_method_t)CFISH_StrIter_Ends_With_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1524:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1524 | (cfish_method_t)CFISH_StrIter_Ends_With_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1530:9: warning: cast between incompatible function types from ‘double (*)(cfish_Float *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1530 | (cfish_method_t)CFISH_Float_Get_Value_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1536:9: warning: cast between incompatible function types from ‘int64_t (*)(cfish_Float *)’ {aka ‘long int (*)(cfish_Float *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1536 | (cfish_method_t)CFISH_Float_To_I64_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1542:9: warning: cast between incompatible function types from ‘int64_t (*)(cfish_Integer *)’ {aka ‘long int (*)(cfish_Integer *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1542 | (cfish_method_t)CFISH_Int_Get_Value_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1548:9: warning: cast between incompatible function types from ‘double (*)(cfish_Integer *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1548 | (cfish_method_t)CFISH_Int_To_F64_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1554:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Method *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1554 | (cfish_method_t)CFISH_Method_Get_Name_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1560:9: warning: cast between incompatible function types from ‘void (*)(cfish_Method *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1560 | (cfish_method_t)CFISH_Method_Set_Host_Alias_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1566:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Method *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1566 | (cfish_method_t)CFISH_Method_Get_Host_Alias_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1572:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Method *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1572 | (cfish_method_t)CFISH_Method_Is_Excluded_From_Host_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1578:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Method *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1578 | (cfish_method_t)CFISH_Method_Host_Name_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1584:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_HashIterator *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1584 | (cfish_method_t)CFISH_HashIter_Next_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1590:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_HashIterator *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1590 | (cfish_method_t)CFISH_HashIter_Get_Key_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1596:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_HashIterator *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1596 | (cfish_method_t)CFISH_HashIter_Get_Value_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1608:9: warning: cast between incompatible function types from ‘void (*)(cfish_Hash *, cfish_String *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1608 | (cfish_method_t)CFISH_Hash_Store_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1614:9: warning: cast between incompatible function types from ‘void (*)(cfish_Hash *, const char *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Hash *, const char *, long unsigned int, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1614 | (cfish_method_t)CFISH_Hash_Store_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1620:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1620 | (cfish_method_t)CFISH_Hash_Fetch_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1626:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1626 | (cfish_method_t)CFISH_Hash_Fetch_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1632:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1632 | (cfish_method_t)CFISH_Hash_Delete_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1638:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1638 | (cfish_method_t)CFISH_Hash_Delete_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1644:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Hash *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1644 | (cfish_method_t)CFISH_Hash_Has_Key_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1650:9: warning: cast between incompatible function types from ‘cfish_Vector * (*)(cfish_Hash *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1650 | (cfish_method_t)CFISH_Hash_Keys_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1656:9: warning: cast between incompatible function types from ‘cfish_Vector * (*)(cfish_Hash *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1656 | (cfish_method_t)CFISH_Hash_Values_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1662:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1662 | (cfish_method_t)CFISH_Hash_Get_Capacity_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1668:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1668 | (cfish_method_t)CFISH_Hash_Get_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1674:9: warning: cast between incompatible function types from ‘void (*)(cfish_Err *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1674 | (cfish_method_t)CFISH_Err_Cat_Mess_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1675:9: warning: cast between incompatible function types from ‘void (*)(cfish_Err *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1675 | (cfish_method_t)Cfish_Err_Cat_Mess_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1680:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Err *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1680 | (cfish_method_t)CFISH_Err_Get_Mess_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1681:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Err *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1681 | (cfish_method_t)Cfish_Err_Get_Mess_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1686:9: warning: cast between incompatible function types from ‘void (*)(cfish_Err *, const char *, int, const char *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1686 | (cfish_method_t)CFISH_Err_Add_Frame_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1687:9: warning: cast between incompatible function types from ‘void (*)(cfish_Err *, const char *, int, const char *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1687 | (cfish_method_t)Cfish_Err_Add_Frame_OVERRIDE /* callback_func */ | ^ autogen/source/cfish_parcel.c:1692:9: warning: cast between incompatible function types from ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1692 | (cfish_method_t)CFISH_Class_Override_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1698:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Class *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1698 | (cfish_method_t)CFISH_Class_Make_Obj_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1704:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(cfish_Class *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1704 | (cfish_method_t)CFISH_Class_Init_Obj_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1710:9: warning: cast between incompatible function types from ‘void (*)(cfish_Class *, const char *, const char *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1710 | (cfish_method_t)CFISH_Class_Add_Host_Method_Alias_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1716:9: warning: cast between incompatible function types from ‘void (*)(cfish_Class *, const char *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1716 | (cfish_method_t)CFISH_Class_Exclude_Host_Method_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1722:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Class *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1722 | (cfish_method_t)CFISH_Class_Get_Name_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1728:9: warning: cast between incompatible function types from ‘cfish_Class * (*)(cfish_Class *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1728 | (cfish_method_t)CFISH_Class_Get_Parent_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1734:9: warning: cast between incompatible function types from ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1734 | (cfish_method_t)CFISH_Class_Get_Obj_Alloc_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1740:9: warning: cast between incompatible function types from ‘cfish_Vector * (*)(cfish_Class *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1740 | (cfish_method_t)CFISH_Class_Get_Methods_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1746:9: warning: cast between incompatible function types from ‘void (*)(cfish_CharBuf *, const char *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1746 | (cfish_method_t)CFISH_CB_Cat_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1752:9: warning: cast between incompatible function types from ‘void (*)(cfish_CharBuf *, const char *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, const char *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1752 | (cfish_method_t)CFISH_CB_Cat_Trusted_Utf8_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1758:9: warning: cast between incompatible function types from ‘void (*)(cfish_CharBuf *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1758 | (cfish_method_t)CFISH_CB_Cat_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1764:9: warning: cast between incompatible function types from ‘void (*)(cfish_CharBuf *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1764 | (cfish_method_t)CFISH_CB_VCatF_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1770:9: warning: cast between incompatible function types from ‘void (*)(cfish_CharBuf *, int32_t)’ {aka ‘void (*)(cfish_CharBuf *, int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1770 | (cfish_method_t)CFISH_CB_Cat_Char_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1776:9: warning: cast between incompatible function types from ‘void (*)(cfish_CharBuf *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1776 | (cfish_method_t)CFISH_CB_Grow_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1788:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_CharBuf *)’ {aka ‘long unsigned int (*)(cfish_CharBuf *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1788 | (cfish_method_t)CFISH_CB_Get_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1794:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_CharBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1794 | (cfish_method_t)CFISH_CB_Yield_String_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1800:9: warning: cast between incompatible function types from ‘void (*)(cfish_ByteBuf *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1800 | (cfish_method_t)CFISH_BB_Set_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1806:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1806 | (cfish_method_t)CFISH_BB_Get_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1812:9: warning: cast between incompatible function types from ‘char * (*)(cfish_ByteBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1812 | (cfish_method_t)CFISH_BB_Get_Buf_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1818:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1818 | (cfish_method_t)CFISH_BB_Get_Capacity_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1824:9: warning: cast between incompatible function types from ‘void (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, const void *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1824 | (cfish_method_t)CFISH_BB_Cat_Bytes_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1830:9: warning: cast between incompatible function types from ‘void (*)(cfish_ByteBuf *, cfish_Blob *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1830 | (cfish_method_t)CFISH_BB_Cat_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1836:9: warning: cast between incompatible function types from ‘char * (*)(cfish_ByteBuf *, size_t)’ {aka ‘char * (*)(cfish_ByteBuf *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1836 | (cfish_method_t)CFISH_BB_Grow_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1842:9: warning: cast between incompatible function types from ‘cfish_Blob * (*)(cfish_ByteBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1842 | (cfish_method_t)CFISH_BB_Yield_Blob_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1848:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_ByteBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1848 | (cfish_method_t)CFISH_BB_Utf8_To_String_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1854:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_ByteBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1854 | (cfish_method_t)CFISH_BB_Trusted_Utf8_To_String_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1860:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_ByteBuf *, const void *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1860 | (cfish_method_t)CFISH_BB_Equals_Bytes_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1866:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Boolean *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1866 | (cfish_method_t)CFISH_Bool_Get_Value_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1872:9: warning: cast between incompatible function types from ‘size_t (*)(cfish_Blob *)’ {aka ‘long unsigned int (*)(cfish_Blob *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1872 | (cfish_method_t)CFISH_Blob_Get_Size_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1878:9: warning: cast between incompatible function types from ‘const char * (*)(cfish_Blob *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1878 | (cfish_method_t)CFISH_Blob_Get_Buf_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1884:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Blob *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_Blob *, const void *, long unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1884 | (cfish_method_t)CFISH_Blob_Equals_Bytes_IMP, /* func */ | ^ autogen/source/cfish_parcel.c:1903:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1903 | (cfish_method_t)CFISH_TestFormatterCF_Batch_Prologue_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1908:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterCF *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, _Bool, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1908 | (cfish_method_t)CFISH_TestFormatterCF_VTest_Result_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1913:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterCF *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, unsigned int, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1913 | (cfish_method_t)CFISH_TestFormatterCF_VTest_Skip_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1918:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1918 | (cfish_method_t)CFISH_TestFormatterCF_VTest_Comment_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1923:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1923 | (cfish_method_t)CFISH_TestFormatterCF_VBatch_Comment_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1928:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterCF *, cfish_TestSuiteRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1928 | (cfish_method_t)CFISH_TestFormatterCF_Summary_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1933:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, unsigned int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1933 | (cfish_method_t)CFISH_TestFormatterTAP_Batch_Prologue_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1938:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterTAP *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, _Bool, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1938 | (cfish_method_t)CFISH_TestFormatterTAP_VTest_Result_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1943:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterTAP *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, unsigned int, unsigned int, const char *, __va_list_tag *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 1943 | (cfish_method_t)CFISH_TestFormatterTAP_VTest_Skip_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1948:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1948 | (cfish_method_t)CFISH_TestFormatterTAP_VTest_Comment_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1953:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1953 | (cfish_method_t)CFISH_TestFormatterTAP_VBatch_Comment_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1958:9: warning: cast between incompatible function types from ‘void (*)(cfish_TestFormatterTAP *, cfish_TestSuiteRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1958 | (cfish_method_t)CFISH_TestFormatterTAP_Summary_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1968:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Vector *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1968 | (cfish_method_t)CFISH_Vec_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1973:9: warning: cast between incompatible function types from ‘cfish_Vector * (*)(cfish_Vector *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1973 | (cfish_method_t)CFISH_Vec_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1978:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Vector *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1978 | (cfish_method_t)CFISH_Vec_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1988:9: warning: cast between incompatible function types from ‘void * (*)(cfish_String *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1988 | (cfish_method_t)CFISH_Str_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1993:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1993 | (cfish_method_t)CFISH_Str_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:1998:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_String *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 1998 | (cfish_method_t)CFISH_Str_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2003:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 2003 | (cfish_method_t)CFISH_Str_Compare_To_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2013:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2013 | (cfish_method_t)CFISH_Str_To_String_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2018:9: warning: cast between incompatible function types from ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2018 | (cfish_method_t)CFISH_StrIter_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2023:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2023 | (cfish_method_t)CFISH_StrIter_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2028:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 2028 | (cfish_method_t)CFISH_StrIter_Compare_To_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2038:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Float *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2038 | (cfish_method_t)CFISH_Float_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2043:9: warning: cast between incompatible function types from ‘cfish_Float * (*)(cfish_Float *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2043 | (cfish_method_t)CFISH_Float_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2048:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Float *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2048 | (cfish_method_t)CFISH_Float_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2053:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_Float *, cfish_Obj *)’ {aka ‘int (*)(cfish_Float *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 2053 | (cfish_method_t)CFISH_Float_Compare_To_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2058:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Float *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2058 | (cfish_method_t)CFISH_Float_To_String_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2063:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Integer *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2063 | (cfish_method_t)CFISH_Int_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2068:9: warning: cast between incompatible function types from ‘cfish_Integer * (*)(cfish_Integer *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2068 | (cfish_method_t)CFISH_Int_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2073:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Integer *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2073 | (cfish_method_t)CFISH_Int_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2078:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_Integer *, cfish_Obj *)’ {aka ‘int (*)(cfish_Integer *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 2078 | (cfish_method_t)CFISH_Int_Compare_To_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2083:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Integer *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2083 | (cfish_method_t)CFISH_Int_To_String_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2098:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Hash *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2098 | (cfish_method_t)CFISH_Hash_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2103:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Hash *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2103 | (cfish_method_t)CFISH_Hash_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2118:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Err *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2118 | (cfish_method_t)CFISH_Err_To_String_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2128:9: warning: cast between incompatible function types from ‘cfish_CharBuf * (*)(cfish_CharBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2128 | (cfish_method_t)CFISH_CB_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2138:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_CharBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2138 | (cfish_method_t)CFISH_CB_To_String_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2143:9: warning: cast between incompatible function types from ‘void * (*)(cfish_ByteBuf *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2143 | (cfish_method_t)CFISH_BB_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2148:9: warning: cast between incompatible function types from ‘cfish_ByteBuf * (*)(cfish_ByteBuf *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2148 | (cfish_method_t)CFISH_BB_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2153:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_ByteBuf *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2153 | (cfish_method_t)CFISH_BB_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2158:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_ByteBuf *, cfish_Obj *)’ {aka ‘int (*)(cfish_ByteBuf *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 2158 | (cfish_method_t)CFISH_BB_Compare_To_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2168:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Boolean *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2168 | (cfish_method_t)CFISH_Bool_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2173:9: warning: cast between incompatible function types from ‘cfish_Boolean * (*)(cfish_Boolean *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2173 | (cfish_method_t)CFISH_Bool_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2178:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Boolean *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2178 | (cfish_method_t)CFISH_Bool_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2188:9: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Boolean *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2188 | (cfish_method_t)CFISH_Bool_To_String_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2193:9: warning: cast between incompatible function types from ‘void * (*)(cfish_Blob *, void *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2193 | (cfish_method_t)CFISH_Blob_To_Host_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2198:9: warning: cast between incompatible function types from ‘cfish_Blob * (*)(cfish_Blob *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2198 | (cfish_method_t)CFISH_Blob_Clone_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2203:9: warning: cast between incompatible function types from ‘_Bool (*)(cfish_Blob *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 2203 | (cfish_method_t)CFISH_Blob_Equals_IMP /* func */ | ^ autogen/source/cfish_parcel.c:2208:9: warning: cast between incompatible function types from ‘int32_t (*)(cfish_Blob *, cfish_Obj *)’ {aka ‘int (*)(cfish_Blob *, cfish_Obj *)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 2208 | (cfish_method_t)CFISH_Blob_Compare_To_IMP /* func */ | ^ gcc -Icfcore -Ixs -I. -Iautogen/include -I/usr/lib64/perl5/CORE -fPIC -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC '-std=gnu99' -D_GNU_SOURCE '-fvisibility=hidden' -c -D_REENTRANT -D_GNU_SOURCE -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE '-D_FILE_OFFSET_BITS=64' -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -o xs/XSBind.o xs/XSBind.c In file included from xs/XSBind.h:23, from xs/XSBind.c:27: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from xs/XSBind.h:26: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from /usr/lib64/perl5/CORE/perl.h:44, from xs/XSBind.h:37: /usr/lib64/perl5/CORE/thread.h: At top level: /usr/lib64/perl5/CORE/config.h:5196:27: warning: ISO C99 does not support ‘_Thread_local’ [-Wpedantic] 5196 | #define PERL_THREAD_LOCAL _Thread_local /**/ | ^~~~~~~~~~~~~ /usr/lib64/perl5/CORE/thread.h:400:8: note: in expansion of macro ‘PERL_THREAD_LOCAL’ 400 | extern PERL_THREAD_LOCAL void *PL_current_context; | ^~~~~~~~~~~~~~~~~ gcc -Icfcore -Ixs -I. -Iautogen/include -I/usr/lib64/perl5/CORE -fPIC -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC '-std=gnu99' -D_GNU_SOURCE '-fvisibility=hidden' -c -D_REENTRANT -D_GNU_SOURCE -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE '-D_FILE_OFFSET_BITS=64' -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -o autogen/source/cfish_perl.o autogen/source/cfish_perl.c In file included from xs/XSBind.h:23, from autogen/source/cfish_perl.c:29: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from xs/XSBind.h:26: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from /usr/lib64/perl5/CORE/perl.h:44, from xs/XSBind.h:37: /usr/lib64/perl5/CORE/thread.h: At top level: /usr/lib64/perl5/CORE/config.h:5196:27: warning: ISO C99 does not support ‘_Thread_local’ [-Wpedantic] 5196 | #define PERL_THREAD_LOCAL _Thread_local /**/ | ^~~~~~~~~~~~~ /usr/lib64/perl5/CORE/thread.h:400:8: note: in expansion of macro ‘PERL_THREAD_LOCAL’ 400 | extern PERL_THREAD_LOCAL void *PL_current_context; | ^~~~~~~~~~~~~~~~~ In file included from autogen/source/cfish_perl.c:34: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:175:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuiteRunner *, void *)’ [-Wcast-function-type] 175 | const CFISH_TestSuiteRunner_To_Host_t method = (CFISH_TestSuiteRunner_To_Host_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Clone’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:182:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 182 | const CFISH_TestSuiteRunner_Clone_t method = (CFISH_TestSuiteRunner_Clone_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Equals’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:189:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ [-Wcast-function-type] 189 | const CFISH_TestSuiteRunner_Equals_t method = (CFISH_TestSuiteRunner_Equals_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:196:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuiteRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuiteRunner *, cfish_Obj *)’} [-Wcast-function-type] 196 | const CFISH_TestSuiteRunner_Compare_To_t method = (CFISH_TestSuiteRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_To_String’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:210:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 210 | const CFISH_TestSuiteRunner_To_String_t method = (CFISH_TestSuiteRunner_To_String_t)cfish_obj_method(self, CFISH_TestSuiteRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:217:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 217 | const CFISH_TestSuiteRunner_Run_Batch_t method = (CFISH_TestSuiteRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Finish’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:224:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuiteRunner *)’ [-Wcast-function-type] 224 | const CFISH_TestSuiteRunner_Finish_t method = (CFISH_TestSuiteRunner_Finish_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Finish_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:231:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 231 | const CFISH_TestSuiteRunner_Get_Num_Tests_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Tests_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:238:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 238 | const CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Tests_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Tests_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:245:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 245 | const CFISH_TestSuiteRunner_Get_Num_Batches_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuiteRunner.h: In function ‘CFISH_TestSuiteRunner_Get_Num_Batches_Failed’: autogen/include/Clownfish/TestHarness/TestSuiteRunner.h:252:67: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestSuiteRunner *)’ {aka ‘unsigned int (*)(cfish_TestSuiteRunner *)’} [-Wcast-function-type] 252 | const CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t method = (CFISH_TestSuiteRunner_Get_Num_Batches_Failed_t)cfish_obj_method(self, CFISH_TestSuiteRunner_Get_Num_Batches_Failed_OFFSET); | ^ In file included from autogen/source/cfish_perl.c:35: autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_Host’: autogen/include/Clownfish/TestHarness/TestSuite.h:153:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuite *, void *)’ [-Wcast-function-type] 153 | const CFISH_TestSuite_To_Host_t method = (CFISH_TestSuite_To_Host_t)cfish_obj_method(self, CFISH_TestSuite_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Clone’: autogen/include/Clownfish/TestHarness/TestSuite.h:160:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 160 | const CFISH_TestSuite_Clone_t method = (CFISH_TestSuite_Clone_t)cfish_obj_method(self, CFISH_TestSuite_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Equals’: autogen/include/Clownfish/TestHarness/TestSuite.h:167:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_Obj *)’ [-Wcast-function-type] 167 | const CFISH_TestSuite_Equals_t method = (CFISH_TestSuite_Equals_t)cfish_obj_method(self, CFISH_TestSuite_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuite.h:174:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuite *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuite *, cfish_Obj *)’} [-Wcast-function-type] 174 | const CFISH_TestSuite_Compare_To_t method = (CFISH_TestSuite_Compare_To_t)cfish_obj_method(self, CFISH_TestSuite_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_String’: autogen/include/Clownfish/TestHarness/TestSuite.h:188:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 188 | const CFISH_TestSuite_To_String_t method = (CFISH_TestSuite_To_String_t)cfish_obj_method(self, CFISH_TestSuite_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Add_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:195:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestSuite *, cfish_TestBatch *)’ [-Wcast-function-type] 195 | const CFISH_TestSuite_Add_Batch_t method = (CFISH_TestSuite_Add_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Add_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:202:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_String *, cfish_TestFormatter *)’ [-Wcast-function-type] 202 | const CFISH_TestSuite_Run_Batch_t method = (CFISH_TestSuite_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_All_Batches’: autogen/include/Clownfish/TestHarness/TestSuite.h:209:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_TestFormatter *)’ [-Wcast-function-type] 209 | const CFISH_TestSuite_Run_All_Batches_t method = (CFISH_TestSuite_Run_All_Batches_t)cfish_obj_method(self, CFISH_TestSuite_Run_All_Batches_OFFSET); | ^ In file included from autogen/source/cfish_perl.c:36: autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:173:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatter *, void *)’ [-Wcast-function-type] 173 | const CFISH_TestFormatter_To_Host_t method = (CFISH_TestFormatter_To_Host_t)cfish_obj_method(self, CFISH_TestFormatter_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:180:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 180 | const CFISH_TestFormatter_Clone_t method = (CFISH_TestFormatter_Clone_t)cfish_obj_method(self, CFISH_TestFormatter_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:187:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatter *, cfish_Obj *)’ [-Wcast-function-type] 187 | const CFISH_TestFormatter_Equals_t method = (CFISH_TestFormatter_Equals_t)cfish_obj_method(self, CFISH_TestFormatter_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:194:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatter *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatter *, cfish_Obj *)’} [-Wcast-function-type] 194 | const CFISH_TestFormatter_Compare_To_t method = (CFISH_TestFormatter_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:208:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatter *)’ [-Wcast-function-type] 208 | const CFISH_TestFormatter_To_String_t method = (CFISH_TestFormatter_To_String_t)cfish_obj_method(self, CFISH_TestFormatter_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:215:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatter *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 215 | const CFISH_TestFormatter_Batch_Prologue_t method = (CFISH_TestFormatter_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatter_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:222:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 222 | const CFISH_TestFormatter_VTest_Result_t method = (CFISH_TestFormatter_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:229:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatter *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 229 | const CFISH_TestFormatter_VTest_Skip_t method = (CFISH_TestFormatter_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:236:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 236 | const CFISH_TestFormatter_VTest_Comment_t method = (CFISH_TestFormatter_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:243:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, const char *, __va_list_tag *)’ [-Wcast-function-type] 243 | const CFISH_TestFormatter_VBatch_Comment_t method = (CFISH_TestFormatter_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatter_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatter_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:250:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatter *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 250 | const CFISH_TestFormatter_Summary_t method = (CFISH_TestFormatter_Summary_t)cfish_obj_method(self, CFISH_TestFormatter_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:459:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterCF *, void *)’ [-Wcast-function-type] 459 | const CFISH_TestFormatterCF_To_Host_t method = (CFISH_TestFormatterCF_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:466:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 466 | const CFISH_TestFormatterCF_Clone_t method = (CFISH_TestFormatterCF_Clone_t)cfish_obj_method(self, CFISH_TestFormatterCF_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:473:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterCF *, cfish_Obj *)’ [-Wcast-function-type] 473 | const CFISH_TestFormatterCF_Equals_t method = (CFISH_TestFormatterCF_Equals_t)cfish_obj_method(self, CFISH_TestFormatterCF_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:480:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterCF *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterCF *, cfish_Obj *)’} [-Wcast-function-type] 480 | const CFISH_TestFormatterCF_Compare_To_t method = (CFISH_TestFormatterCF_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterCF_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:494:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterCF *)’ [-Wcast-function-type] 494 | const CFISH_TestFormatterCF_To_String_t method = (CFISH_TestFormatterCF_To_String_t)cfish_obj_method(self, CFISH_TestFormatterCF_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:501:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterCF *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 501 | const CFISH_TestFormatterCF_Batch_Prologue_t method = (CFISH_TestFormatterCF_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterCF_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:508:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 508 | const CFISH_TestFormatterCF_VTest_Result_t method = (CFISH_TestFormatterCF_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:515:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterCF *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 515 | const CFISH_TestFormatterCF_VTest_Skip_t method = (CFISH_TestFormatterCF_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:522:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 522 | const CFISH_TestFormatterCF_VTest_Comment_t method = (CFISH_TestFormatterCF_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:529:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, const char *, __va_list_tag *)’ [-Wcast-function-type] 529 | const CFISH_TestFormatterCF_VBatch_Comment_t method = (CFISH_TestFormatterCF_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterCF_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterCF_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:536:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterCF *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 536 | const CFISH_TestFormatterCF_Summary_t method = (CFISH_TestFormatterCF_Summary_t)cfish_obj_method(self, CFISH_TestFormatterCF_Summary_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_Host’: autogen/include/Clownfish/TestHarness/TestFormatter.h:725:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestFormatterTAP *, void *)’ [-Wcast-function-type] 725 | const CFISH_TestFormatterTAP_To_Host_t method = (CFISH_TestFormatterTAP_To_Host_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Clone’: autogen/include/Clownfish/TestHarness/TestFormatter.h:732:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 732 | const CFISH_TestFormatterTAP_Clone_t method = (CFISH_TestFormatterTAP_Clone_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Equals’: autogen/include/Clownfish/TestHarness/TestFormatter.h:739:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ [-Wcast-function-type] 739 | const CFISH_TestFormatterTAP_Equals_t method = (CFISH_TestFormatterTAP_Equals_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Compare_To’: autogen/include/Clownfish/TestHarness/TestFormatter.h:746:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestFormatterTAP *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestFormatterTAP *, cfish_Obj *)’} [-Wcast-function-type] 746 | const CFISH_TestFormatterTAP_Compare_To_t method = (CFISH_TestFormatterTAP_Compare_To_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_To_String’: autogen/include/Clownfish/TestHarness/TestFormatter.h:760:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestFormatterTAP *)’ [-Wcast-function-type] 760 | const CFISH_TestFormatterTAP_To_String_t method = (CFISH_TestFormatterTAP_To_String_t)cfish_obj_method(self, CFISH_TestFormatterTAP_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Batch_Prologue’: autogen/include/Clownfish/TestHarness/TestFormatter.h:767:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestFormatterTAP *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 767 | const CFISH_TestFormatterTAP_Batch_Prologue_t method = (CFISH_TestFormatterTAP_Batch_Prologue_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Batch_Prologue_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Result’: autogen/include/Clownfish/TestHarness/TestFormatter.h:774:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, _Bool, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, _Bool, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 774 | const CFISH_TestFormatterTAP_VTest_Result_t method = (CFISH_TestFormatterTAP_VTest_Result_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Result_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Skip’: autogen/include/Clownfish/TestHarness/TestFormatter.h:781:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, uint32_t, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestFormatterTAP *, unsigned int, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 781 | const CFISH_TestFormatterTAP_VTest_Skip_t method = (CFISH_TestFormatterTAP_VTest_Skip_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Skip_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VTest_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:788:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 788 | const CFISH_TestFormatterTAP_VTest_Comment_t method = (CFISH_TestFormatterTAP_VTest_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VTest_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_VBatch_Comment’: autogen/include/Clownfish/TestHarness/TestFormatter.h:795:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, const char *, __va_list_tag *)’ [-Wcast-function-type] 795 | const CFISH_TestFormatterTAP_VBatch_Comment_t method = (CFISH_TestFormatterTAP_VBatch_Comment_t)cfish_obj_method(self, CFISH_TestFormatterTAP_VBatch_Comment_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestFormatter.h: In function ‘CFISH_TestFormatterTAP_Summary’: autogen/include/Clownfish/TestHarness/TestFormatter.h:802:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestFormatterTAP *, cfish_TestSuiteRunner *)’ [-Wcast-function-type] 802 | const CFISH_TestFormatterTAP_Summary_t method = (CFISH_TestFormatterTAP_Summary_t)cfish_obj_method(self, CFISH_TestFormatterTAP_Summary_OFFSET); | ^ In file included from autogen/source/cfish_perl.c:39: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from autogen/source/cfish_perl.c:40: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/source/cfish_perl.c: At top level: autogen/source/cfish_perl.c:111:1: warning: ‘S_finish_callback_f64’ defined but not used [-Wunused-function] 111 | S_finish_callback_f64(pTHX_ const char *meth_name) { | ^~~~~~~~~~~~~~~~~~~~~ gcc -Icfcore -Ixs -I. -Iautogen/include -I/usr/lib64/perl5/CORE '-DVERSION="0.6.3"' '-DXS_VERSION="0.6.3"' -fPIC -c -D_REENTRANT -D_GNU_SOURCE -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE '-D_FILE_OFFSET_BITS=64' -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -o lib/Clownfish.o lib/Clownfish.c gcc -lpthread -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now '-specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors' '-specs=/usr/lib/rpm/redhat/redhat-hardened-ld' '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' '-Wl,--build-id=sha1' -L/usr/local/lib -fstack-protector-strong -lperl -o blib/arch/auto/Clownfish/Clownfish.so lib/Clownfish.o cfcore/Clownfish/Util/SortUtils.o cfcore/Clownfish/Util/Memory.o cfcore/Clownfish/Util/Atomic.o cfcore/Clownfish/TestHarness/TestUtils.o cfcore/Clownfish/TestHarness/TestSuiteRunner.o cfcore/Clownfish/TestHarness/TestSuite.o cfcore/Clownfish/TestHarness/TestFormatter.o cfcore/Clownfish/TestHarness/TestBatchRunner.o cfcore/Clownfish/Vector.o cfcore/Clownfish/String.o cfcore/Clownfish/PtrHash.o cfcore/Clownfish/Obj.o cfcore/Clownfish/Num.o cfcore/Clownfish/Method.o cfcore/Clownfish/LockFreeRegistry.o cfcore/Clownfish/HashIterator.o cfcore/Clownfish/Hash.o cfcore/Clownfish/Err.o cfcore/Clownfish/Class.o cfcore/Clownfish/CharBuf.o cfcore/Clownfish/ByteBuf.o cfcore/Clownfish/Boolean.o cfcore/Clownfish/Blob.o cfcore/Clownfish.o autogen/source/cfish_parcel.o xs/XSBind.o autogen/source/cfish_perl.o -l m make test_objects gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/Util/TestMemory.c -c -o cftest/Clownfish/Test/Util/TestMemory.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/Util/TestMemory.h:40, from cftest/Clownfish/Test/Util/TestMemory.c:22: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_Host’: autogen/include/Clownfish/Test/Util/TestMemory.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMemory *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMemory_To_Host_t method = (TESTCFISH_TestMemory_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Clone’: autogen/include/Clownfish/Test/Util/TestMemory.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMemory_Clone_t method = (TESTCFISH_TestMemory_Clone_t)cfish_obj_method(self, TESTCFISH_TestMemory_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Equals’: autogen/include/Clownfish/Test/Util/TestMemory.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMemory *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMemory_Equals_t method = (TESTCFISH_TestMemory_Equals_t)cfish_obj_method(self, TESTCFISH_TestMemory_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Compare_To’: autogen/include/Clownfish/Test/Util/TestMemory.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMemory *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMemory *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMemory_Compare_To_t method = (TESTCFISH_TestMemory_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMemory_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_String’: autogen/include/Clownfish/Test/Util/TestMemory.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMemory_To_String_t method = (TESTCFISH_TestMemory_To_String_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Run’: autogen/include/Clownfish/Test/Util/TestMemory.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMemory *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMemory_Run_t method = (TESTCFISH_TestMemory_Run_t)cfish_obj_method(self, TESTCFISH_TestMemory_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/Util/TestMemory.c:25: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cftest/Clownfish/Test/Util/TestMemory.c:27: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/Util/TestAtomic.c -c -o cftest/Clownfish/Test/Util/TestAtomic.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/Util/TestAtomic.h:40, from cftest/Clownfish/Test/Util/TestAtomic.c:20: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_Host’: autogen/include/Clownfish/Test/Util/TestAtomic.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestAtomic *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestAtomic_To_Host_t method = (TESTCFISH_TestAtomic_To_Host_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Clone’: autogen/include/Clownfish/Test/Util/TestAtomic.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestAtomic_Clone_t method = (TESTCFISH_TestAtomic_Clone_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Equals’: autogen/include/Clownfish/Test/Util/TestAtomic.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestAtomic *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestAtomic_Equals_t method = (TESTCFISH_TestAtomic_Equals_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Compare_To’: autogen/include/Clownfish/Test/Util/TestAtomic.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestAtomic *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestAtomic *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestAtomic_Compare_To_t method = (TESTCFISH_TestAtomic_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_String’: autogen/include/Clownfish/Test/Util/TestAtomic.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestAtomic_To_String_t method = (TESTCFISH_TestAtomic_To_String_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Run’: autogen/include/Clownfish/Test/Util/TestAtomic.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestAtomic *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestAtomic_Run_t method = (TESTCFISH_TestAtomic_Run_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/Util/TestAtomic.c:23: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cftest/Clownfish/Test/Util/TestAtomic.c:25: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestVector.c -c -o cftest/Clownfish/Test/TestVector.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestVector.h:40, from cftest/Clownfish/Test/TestVector.c:26: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_Host’: autogen/include/Clownfish/Test/TestVector.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestVector *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestVector_To_Host_t method = (TESTCFISH_TestVector_To_Host_t)cfish_obj_method(self, TESTCFISH_TestVector_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Clone’: autogen/include/Clownfish/Test/TestVector.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestVector_Clone_t method = (TESTCFISH_TestVector_Clone_t)cfish_obj_method(self, TESTCFISH_TestVector_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Equals’: autogen/include/Clownfish/Test/TestVector.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestVector *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestVector_Equals_t method = (TESTCFISH_TestVector_Equals_t)cfish_obj_method(self, TESTCFISH_TestVector_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Compare_To’: autogen/include/Clownfish/Test/TestVector.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestVector *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestVector *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestVector_Compare_To_t method = (TESTCFISH_TestVector_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestVector_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_String’: autogen/include/Clownfish/Test/TestVector.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestVector_To_String_t method = (TESTCFISH_TestVector_To_String_t)cfish_obj_method(self, TESTCFISH_TestVector_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Run’: autogen/include/Clownfish/Test/TestVector.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestVector *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestVector_Run_t method = (TESTCFISH_TestVector_Run_t)cfish_obj_method(self, TESTCFISH_TestVector_Run_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestVector.c:28: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestVector.c:29: autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_Host’: autogen/include/Clownfish/Boolean.h:159:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Boolean *, void *)’ [-Wcast-function-type] 159 | const CFISH_Bool_To_Host_t method = (CFISH_Bool_To_Host_t)cfish_obj_method(self, CFISH_Bool_To_Host_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Clone’: autogen/include/Clownfish/Boolean.h:170:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Boolean * (*)(cfish_Boolean *)’ [-Wcast-function-type] 170 | const CFISH_Bool_Clone_t method = (CFISH_Bool_Clone_t)cfish_obj_method(self, CFISH_Bool_Clone_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Equals’: autogen/include/Clownfish/Boolean.h:181:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *, cfish_Obj *)’ [-Wcast-function-type] 181 | const CFISH_Bool_Equals_t method = (CFISH_Bool_Equals_t)cfish_obj_method(self, CFISH_Bool_Equals_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Compare_To’: autogen/include/Clownfish/Boolean.h:192:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Boolean *, cfish_Obj *)’ {aka ‘int (*)(cfish_Boolean *, cfish_Obj *)’} [-Wcast-function-type] 192 | const CFISH_Bool_Compare_To_t method = (CFISH_Bool_Compare_To_t)cfish_obj_method(self, CFISH_Bool_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_String’: autogen/include/Clownfish/Boolean.h:214:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Boolean *)’ [-Wcast-function-type] 214 | const CFISH_Bool_To_String_t method = (CFISH_Bool_To_String_t)cfish_obj_method(self, CFISH_Bool_To_String_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Get_Value’: autogen/include/Clownfish/Boolean.h:225:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *)’ [-Wcast-function-type] 225 | const CFISH_Bool_Get_Value_t method = (CFISH_Bool_Get_Value_t)cfish_obj_method(self, CFISH_Bool_Get_Value_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestVector.c:31: autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_Host’: autogen/include/Clownfish/Num.h:162:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Float *, void *)’ [-Wcast-function-type] 162 | const CFISH_Float_To_Host_t method = (CFISH_Float_To_Host_t)cfish_obj_method(self, CFISH_Float_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Clone’: autogen/include/Clownfish/Num.h:173:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Float * (*)(cfish_Float *)’ [-Wcast-function-type] 173 | const CFISH_Float_Clone_t method = (CFISH_Float_Clone_t)cfish_obj_method(self, CFISH_Float_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Equals’: autogen/include/Clownfish/Num.h:184:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Float *, cfish_Obj *)’ [-Wcast-function-type] 184 | const CFISH_Float_Equals_t method = (CFISH_Float_Equals_t)cfish_obj_method(self, CFISH_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Compare_To’: autogen/include/Clownfish/Num.h:195:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Float *, cfish_Obj *)’ {aka ‘int (*)(cfish_Float *, cfish_Obj *)’} [-Wcast-function-type] 195 | const CFISH_Float_Compare_To_t method = (CFISH_Float_Compare_To_t)cfish_obj_method(self, CFISH_Float_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_String’: autogen/include/Clownfish/Num.h:217:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Float *)’ [-Wcast-function-type] 217 | const CFISH_Float_To_String_t method = (CFISH_Float_To_String_t)cfish_obj_method(self, CFISH_Float_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Get_Value’: autogen/include/Clownfish/Num.h:228:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Float *)’ [-Wcast-function-type] 228 | const CFISH_Float_Get_Value_t method = (CFISH_Float_Get_Value_t)cfish_obj_method(self, CFISH_Float_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_I64’: autogen/include/Clownfish/Num.h:239:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Float *)’ {aka ‘long int (*)(cfish_Float *)’} [-Wcast-function-type] 239 | const CFISH_Float_To_I64_t method = (CFISH_Float_To_I64_t)cfish_obj_method(self, CFISH_Float_To_I64_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_Host’: autogen/include/Clownfish/Num.h:417:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Integer *, void *)’ [-Wcast-function-type] 417 | const CFISH_Int_To_Host_t method = (CFISH_Int_To_Host_t)cfish_obj_method(self, CFISH_Int_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Clone’: autogen/include/Clownfish/Num.h:428:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Integer * (*)(cfish_Integer *)’ [-Wcast-function-type] 428 | const CFISH_Int_Clone_t method = (CFISH_Int_Clone_t)cfish_obj_method(self, CFISH_Int_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Equals’: autogen/include/Clownfish/Num.h:439:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Integer *, cfish_Obj *)’ [-Wcast-function-type] 439 | const CFISH_Int_Equals_t method = (CFISH_Int_Equals_t)cfish_obj_method(self, CFISH_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Compare_To’: autogen/include/Clownfish/Num.h:450:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Integer *, cfish_Obj *)’ {aka ‘int (*)(cfish_Integer *, cfish_Obj *)’} [-Wcast-function-type] 450 | const CFISH_Int_Compare_To_t method = (CFISH_Int_Compare_To_t)cfish_obj_method(self, CFISH_Int_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_String’: autogen/include/Clownfish/Num.h:472:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Integer *)’ [-Wcast-function-type] 472 | const CFISH_Int_To_String_t method = (CFISH_Int_To_String_t)cfish_obj_method(self, CFISH_Int_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Get_Value’: autogen/include/Clownfish/Num.h:483:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Integer *)’ {aka ‘long int (*)(cfish_Integer *)’} [-Wcast-function-type] 483 | const CFISH_Int_Get_Value_t method = (CFISH_Int_Get_Value_t)cfish_obj_method(self, CFISH_Int_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_F64’: autogen/include/Clownfish/Num.h:494:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Integer *)’ [-Wcast-function-type] 494 | const CFISH_Int_To_F64_t method = (CFISH_Int_To_F64_t)cfish_obj_method(self, CFISH_Int_To_F64_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestVector.c:33: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestVector.c:35: autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_Host’: autogen/include/Clownfish/Vector.h:245:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Vector *, void *)’ [-Wcast-function-type] 245 | const CFISH_Vec_To_Host_t method = (CFISH_Vec_To_Host_t)cfish_obj_method(self, CFISH_Vec_To_Host_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Clone’: autogen/include/Clownfish/Vector.h:256:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *)’ [-Wcast-function-type] 256 | const CFISH_Vec_Clone_t method = (CFISH_Vec_Clone_t)cfish_obj_method(self, CFISH_Vec_Clone_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Equals’: autogen/include/Clownfish/Vector.h:267:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 267 | const CFISH_Vec_Equals_t method = (CFISH_Vec_Equals_t)cfish_obj_method(self, CFISH_Vec_Equals_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Compare_To’: autogen/include/Clownfish/Vector.h:278:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Vector *, cfish_Obj *)’ {aka ‘int (*)(cfish_Vector *, cfish_Obj *)’} [-Wcast-function-type] 278 | const CFISH_Vec_Compare_To_t method = (CFISH_Vec_Compare_To_t)cfish_obj_method(self, CFISH_Vec_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_String’: autogen/include/Clownfish/Vector.h:300:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Vector *)’ [-Wcast-function-type] 300 | const CFISH_Vec_To_String_t method = (CFISH_Vec_To_String_t)cfish_obj_method(self, CFISH_Vec_To_String_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push’: autogen/include/Clownfish/Vector.h:311:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 311 | const CFISH_Vec_Push_t method = (CFISH_Vec_Push_t)cfish_obj_method(self, CFISH_Vec_Push_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push_All’: autogen/include/Clownfish/Vector.h:322:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Vector *)’ [-Wcast-function-type] 322 | const CFISH_Vec_Push_All_t method = (CFISH_Vec_Push_All_t)cfish_obj_method(self, CFISH_Vec_Push_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Pop’: autogen/include/Clownfish/Vector.h:333:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *)’ [-Wcast-function-type] 333 | const CFISH_Vec_Pop_t method = (CFISH_Vec_Pop_t)cfish_obj_method(self, CFISH_Vec_Pop_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert’: autogen/include/Clownfish/Vector.h:344:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 344 | const CFISH_Vec_Insert_t method = (CFISH_Vec_Insert_t)cfish_obj_method(self, CFISH_Vec_Insert_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert_All’: autogen/include/Clownfish/Vector.h:355:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Vector *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Vector *)’} [-Wcast-function-type] 355 | const CFISH_Vec_Insert_All_t method = (CFISH_Vec_Insert_All_t)cfish_obj_method(self, CFISH_Vec_Insert_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Grow’: autogen/include/Clownfish/Vector.h:366:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 366 | const CFISH_Vec_Grow_t method = (CFISH_Vec_Grow_t)cfish_obj_method(self, CFISH_Vec_Grow_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Fetch’: autogen/include/Clownfish/Vector.h:377:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 377 | const CFISH_Vec_Fetch_t method = (CFISH_Vec_Fetch_t)cfish_obj_method(self, CFISH_Vec_Fetch_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Store’: autogen/include/Clownfish/Vector.h:388:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 388 | const CFISH_Vec_Store_t method = (CFISH_Vec_Store_t)cfish_obj_method(self, CFISH_Vec_Store_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Delete’: autogen/include/Clownfish/Vector.h:399:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 399 | const CFISH_Vec_Delete_t method = (CFISH_Vec_Delete_t)cfish_obj_method(self, CFISH_Vec_Delete_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Excise’: autogen/include/Clownfish/Vector.h:410:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 410 | const CFISH_Vec_Excise_t method = (CFISH_Vec_Excise_t)cfish_obj_method(self, CFISH_Vec_Excise_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Resize’: autogen/include/Clownfish/Vector.h:432:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 432 | const CFISH_Vec_Resize_t method = (CFISH_Vec_Resize_t)cfish_obj_method(self, CFISH_Vec_Resize_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Size’: autogen/include/Clownfish/Vector.h:454:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 454 | const CFISH_Vec_Get_Size_t method = (CFISH_Vec_Get_Size_t)cfish_obj_method(self, CFISH_Vec_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Capacity’: autogen/include/Clownfish/Vector.h:465:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 465 | const CFISH_Vec_Get_Capacity_t method = (CFISH_Vec_Get_Capacity_t)cfish_obj_method(self, CFISH_Vec_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Slice’: autogen/include/Clownfish/Vector.h:476:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *, size_t, size_t)’ {aka ‘cfish_Vector * (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 476 | const CFISH_Vec_Slice_t method = (CFISH_Vec_Slice_t)cfish_obj_method(self, CFISH_Vec_Slice_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestString.c -c -o cftest/Clownfish/Test/TestString.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestString.h:40, from cftest/Clownfish/Test/TestString.c:23: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_Host’: autogen/include/Clownfish/Test/TestString.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestString *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestStr_To_Host_t method = (TESTCFISH_TestStr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestStr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Clone’: autogen/include/Clownfish/Test/TestString.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestString *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestStr_Clone_t method = (TESTCFISH_TestStr_Clone_t)cfish_obj_method(self, TESTCFISH_TestStr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Equals’: autogen/include/Clownfish/Test/TestString.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestString *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestStr_Equals_t method = (TESTCFISH_TestStr_Equals_t)cfish_obj_method(self, TESTCFISH_TestStr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Compare_To’: autogen/include/Clownfish/Test/TestString.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestString *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestString *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestStr_Compare_To_t method = (TESTCFISH_TestStr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestStr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_String’: autogen/include/Clownfish/Test/TestString.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestString *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestStr_To_String_t method = (TESTCFISH_TestStr_To_String_t)cfish_obj_method(self, TESTCFISH_TestStr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Run’: autogen/include/Clownfish/Test/TestString.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestString *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestStr_Run_t method = (TESTCFISH_TestStr_Run_t)cfish_obj_method(self, TESTCFISH_TestStr_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_Host’: autogen/include/Clownfish/Test/TestString.h:311:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_StringCallbackTest *, void *)’ [-Wcast-function-type] 311 | const TESTCFISH_StrCbTest_To_Host_t method = (TESTCFISH_StrCbTest_To_Host_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Clone’: autogen/include/Clownfish/Test/TestString.h:318:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 318 | const TESTCFISH_StrCbTest_Clone_t method = (TESTCFISH_StrCbTest_Clone_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Equals’: autogen/include/Clownfish/Test/TestString.h:325:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ [-Wcast-function-type] 325 | const TESTCFISH_StrCbTest_Equals_t method = (TESTCFISH_StrCbTest_Equals_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Compare_To’: autogen/include/Clownfish/Test/TestString.h:332:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ {aka ‘int (*)(testcfish_StringCallbackTest *, cfish_Obj *)’} [-Wcast-function-type] 332 | const TESTCFISH_StrCbTest_Compare_To_t method = (TESTCFISH_StrCbTest_Compare_To_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_String’: autogen/include/Clownfish/Test/TestString.h:346:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 346 | const TESTCFISH_StrCbTest_To_String_t method = (TESTCFISH_StrCbTest_To_String_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Unchanged_By_Callback’: autogen/include/Clownfish/Test/TestString.h:353:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_String *)’ [-Wcast-function-type] 353 | const TESTCFISH_StrCbTest_Unchanged_By_Callback_t method = (TESTCFISH_StrCbTest_Unchanged_By_Callback_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Unchanged_By_Callback_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestString.c:25: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestString.c:26: autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_Host’: autogen/include/Clownfish/Boolean.h:159:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Boolean *, void *)’ [-Wcast-function-type] 159 | const CFISH_Bool_To_Host_t method = (CFISH_Bool_To_Host_t)cfish_obj_method(self, CFISH_Bool_To_Host_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Clone’: autogen/include/Clownfish/Boolean.h:170:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Boolean * (*)(cfish_Boolean *)’ [-Wcast-function-type] 170 | const CFISH_Bool_Clone_t method = (CFISH_Bool_Clone_t)cfish_obj_method(self, CFISH_Bool_Clone_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Equals’: autogen/include/Clownfish/Boolean.h:181:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *, cfish_Obj *)’ [-Wcast-function-type] 181 | const CFISH_Bool_Equals_t method = (CFISH_Bool_Equals_t)cfish_obj_method(self, CFISH_Bool_Equals_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Compare_To’: autogen/include/Clownfish/Boolean.h:192:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Boolean *, cfish_Obj *)’ {aka ‘int (*)(cfish_Boolean *, cfish_Obj *)’} [-Wcast-function-type] 192 | const CFISH_Bool_Compare_To_t method = (CFISH_Bool_Compare_To_t)cfish_obj_method(self, CFISH_Bool_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_String’: autogen/include/Clownfish/Boolean.h:214:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Boolean *)’ [-Wcast-function-type] 214 | const CFISH_Bool_To_String_t method = (CFISH_Bool_To_String_t)cfish_obj_method(self, CFISH_Bool_To_String_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Get_Value’: autogen/include/Clownfish/Boolean.h:225:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *)’ [-Wcast-function-type] 225 | const CFISH_Bool_Get_Value_t method = (CFISH_Bool_Get_Value_t)cfish_obj_method(self, CFISH_Bool_Get_Value_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestString.c:27: autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_To_Host’: autogen/include/Clownfish/ByteBuf.h:230:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_ByteBuf *, void *)’ [-Wcast-function-type] 230 | const CFISH_BB_To_Host_t method = (CFISH_BB_To_Host_t)cfish_obj_method(self, CFISH_BB_To_Host_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Clone’: autogen/include/Clownfish/ByteBuf.h:241:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 241 | const CFISH_BB_Clone_t method = (CFISH_BB_Clone_t)cfish_obj_method(self, CFISH_BB_Clone_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Equals’: autogen/include/Clownfish/ByteBuf.h:252:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_ByteBuf *, cfish_Obj *)’ [-Wcast-function-type] 252 | const CFISH_BB_Equals_t method = (CFISH_BB_Equals_t)cfish_obj_method(self, CFISH_BB_Equals_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Compare_To’: autogen/include/Clownfish/ByteBuf.h:263:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_ByteBuf *, cfish_Obj *)’ {aka ‘int (*)(cfish_ByteBuf *, cfish_Obj *)’} [-Wcast-function-type] 263 | const CFISH_BB_Compare_To_t method = (CFISH_BB_Compare_To_t)cfish_obj_method(self, CFISH_BB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_To_String’: autogen/include/Clownfish/ByteBuf.h:285:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 285 | const CFISH_BB_To_String_t method = (CFISH_BB_To_String_t)cfish_obj_method(self, CFISH_BB_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Set_Size’: autogen/include/Clownfish/ByteBuf.h:296:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, long unsigned int)’} [-Wcast-function-type] 296 | const CFISH_BB_Set_Size_t method = (CFISH_BB_Set_Size_t)cfish_obj_method(self, CFISH_BB_Set_Size_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Size’: autogen/include/Clownfish/ByteBuf.h:307:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} [-Wcast-function-type] 307 | const CFISH_BB_Get_Size_t method = (CFISH_BB_Get_Size_t)cfish_obj_method(self, CFISH_BB_Get_Size_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Buf’: autogen/include/Clownfish/ByteBuf.h:318:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 318 | const CFISH_BB_Get_Buf_t method = (CFISH_BB_Get_Buf_t)cfish_obj_method(self, CFISH_BB_Get_Buf_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Capacity’: autogen/include/Clownfish/ByteBuf.h:329:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} [-Wcast-function-type] 329 | const CFISH_BB_Get_Capacity_t method = (CFISH_BB_Get_Capacity_t)cfish_obj_method(self, CFISH_BB_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Cat_Bytes’: autogen/include/Clownfish/ByteBuf.h:340:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, const void *, long unsigned int)’} [-Wcast-function-type] 340 | const CFISH_BB_Cat_Bytes_t method = (CFISH_BB_Cat_Bytes_t)cfish_obj_method(self, CFISH_BB_Cat_Bytes_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Cat’: autogen/include/Clownfish/ByteBuf.h:351:35: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, cfish_Blob *)’ [-Wcast-function-type] 351 | const CFISH_BB_Cat_t method = (CFISH_BB_Cat_t)cfish_obj_method(self, CFISH_BB_Cat_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Grow’: autogen/include/Clownfish/ByteBuf.h:362:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_ByteBuf *, size_t)’ {aka ‘char * (*)(cfish_ByteBuf *, long unsigned int)’} [-Wcast-function-type] 362 | const CFISH_BB_Grow_t method = (CFISH_BB_Grow_t)cfish_obj_method(self, CFISH_BB_Grow_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Yield_Blob’: autogen/include/Clownfish/ByteBuf.h:373:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Blob * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 373 | const CFISH_BB_Yield_Blob_t method = (CFISH_BB_Yield_Blob_t)cfish_obj_method(self, CFISH_BB_Yield_Blob_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Utf8_To_String’: autogen/include/Clownfish/ByteBuf.h:384:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 384 | const CFISH_BB_Utf8_To_String_t method = (CFISH_BB_Utf8_To_String_t)cfish_obj_method(self, CFISH_BB_Utf8_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Trusted_Utf8_To_String’: autogen/include/Clownfish/ByteBuf.h:395:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 395 | const CFISH_BB_Trusted_Utf8_To_String_t method = (CFISH_BB_Trusted_Utf8_To_String_t)cfish_obj_method(self, CFISH_BB_Trusted_Utf8_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Equals_Bytes’: autogen/include/Clownfish/ByteBuf.h:406:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_ByteBuf *, const void *, long unsigned int)’} [-Wcast-function-type] 406 | const CFISH_BB_Equals_Bytes_t method = (CFISH_BB_Equals_Bytes_t)cfish_obj_method(self, CFISH_BB_Equals_Bytes_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestString.c:28: autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_To_Host’: autogen/include/Clownfish/CharBuf.h:203:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_CharBuf *, void *)’ [-Wcast-function-type] 203 | const CFISH_CB_To_Host_t method = (CFISH_CB_To_Host_t)cfish_obj_method(self, CFISH_CB_To_Host_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Clone’: autogen/include/Clownfish/CharBuf.h:214:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_CharBuf * (*)(cfish_CharBuf *)’ [-Wcast-function-type] 214 | const CFISH_CB_Clone_t method = (CFISH_CB_Clone_t)cfish_obj_method(self, CFISH_CB_Clone_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Equals’: autogen/include/Clownfish/CharBuf.h:225:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_CharBuf *, cfish_Obj *)’ [-Wcast-function-type] 225 | const CFISH_CB_Equals_t method = (CFISH_CB_Equals_t)cfish_obj_method(self, CFISH_CB_Equals_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Compare_To’: autogen/include/Clownfish/CharBuf.h:236:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_CharBuf *, cfish_Obj *)’ {aka ‘int (*)(cfish_CharBuf *, cfish_Obj *)’} [-Wcast-function-type] 236 | const CFISH_CB_Compare_To_t method = (CFISH_CB_Compare_To_t)cfish_obj_method(self, CFISH_CB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_To_String’: autogen/include/Clownfish/CharBuf.h:258:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_CharBuf *)’ [-Wcast-function-type] 258 | const CFISH_CB_To_String_t method = (CFISH_CB_To_String_t)cfish_obj_method(self, CFISH_CB_To_String_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat_Utf8’: autogen/include/Clownfish/CharBuf.h:269:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, const char *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, const char *, long unsigned int)’} [-Wcast-function-type] 269 | const CFISH_CB_Cat_Utf8_t method = (CFISH_CB_Cat_Utf8_t)cfish_obj_method(self, CFISH_CB_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat_Trusted_Utf8’: autogen/include/Clownfish/CharBuf.h:280:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, const char *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, const char *, long unsigned int)’} [-Wcast-function-type] 280 | const CFISH_CB_Cat_Trusted_Utf8_t method = (CFISH_CB_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_CB_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat’: autogen/include/Clownfish/CharBuf.h:291:35: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, cfish_String *)’ [-Wcast-function-type] 291 | const CFISH_CB_Cat_t method = (CFISH_CB_Cat_t)cfish_obj_method(self, CFISH_CB_Cat_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_VCatF’: autogen/include/Clownfish/CharBuf.h:302:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, const char *, __va_list_tag *)’ [-Wcast-function-type] 302 | const CFISH_CB_VCatF_t method = (CFISH_CB_VCatF_t)cfish_obj_method(self, CFISH_CB_VCatF_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat_Char’: autogen/include/Clownfish/CharBuf.h:313:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, int32_t)’ {aka ‘void (*)(cfish_CharBuf *, int)’} [-Wcast-function-type] 313 | const CFISH_CB_Cat_Char_t method = (CFISH_CB_Cat_Char_t)cfish_obj_method(self, CFISH_CB_Cat_Char_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Grow’: autogen/include/Clownfish/CharBuf.h:324:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, long unsigned int)’} [-Wcast-function-type] 324 | const CFISH_CB_Grow_t method = (CFISH_CB_Grow_t)cfish_obj_method(self, CFISH_CB_Grow_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Get_Size’: autogen/include/Clownfish/CharBuf.h:346:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_CharBuf *)’ {aka ‘long unsigned int (*)(cfish_CharBuf *)’} [-Wcast-function-type] 346 | const CFISH_CB_Get_Size_t method = (CFISH_CB_Get_Size_t)cfish_obj_method(self, CFISH_CB_Get_Size_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Yield_String’: autogen/include/Clownfish/CharBuf.h:357:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_CharBuf *)’ [-Wcast-function-type] 357 | const CFISH_CB_Yield_String_t method = (CFISH_CB_Yield_String_t)cfish_obj_method(self, CFISH_CB_Yield_String_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestString.c:31: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestPtrHash.c -c -o cftest/Clownfish/Test/TestPtrHash.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestPtrHash.h:40, from cftest/Clownfish/Test/TestPtrHash.c:23: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_Host’: autogen/include/Clownfish/Test/TestPtrHash.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestPtrHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestPtrHash_To_Host_t method = (TESTCFISH_TestPtrHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Clone’: autogen/include/Clownfish/Test/TestPtrHash.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestPtrHash_Clone_t method = (TESTCFISH_TestPtrHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Equals’: autogen/include/Clownfish/Test/TestPtrHash.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestPtrHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestPtrHash_Equals_t method = (TESTCFISH_TestPtrHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Compare_To’: autogen/include/Clownfish/Test/TestPtrHash.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestPtrHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestPtrHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestPtrHash_Compare_To_t method = (TESTCFISH_TestPtrHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_String’: autogen/include/Clownfish/Test/TestPtrHash.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestPtrHash_To_String_t method = (TESTCFISH_TestPtrHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Run’: autogen/include/Clownfish/Test/TestPtrHash.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestPtrHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestPtrHash_Run_t method = (TESTCFISH_TestPtrHash_Run_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestPtrHash.c:24: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestPtrHash.c:26: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestObj.c -c -o cftest/Clownfish/Test/TestObj.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestObj.h:40, from cftest/Clownfish/Test/TestObj.c:24: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_Host’: autogen/include/Clownfish/Test/TestObj.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestObj *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestObj_To_Host_t method = (TESTCFISH_TestObj_To_Host_t)cfish_obj_method(self, TESTCFISH_TestObj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Clone’: autogen/include/Clownfish/Test/TestObj.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestObj_Clone_t method = (TESTCFISH_TestObj_Clone_t)cfish_obj_method(self, TESTCFISH_TestObj_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Equals’: autogen/include/Clownfish/Test/TestObj.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestObj *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestObj_Equals_t method = (TESTCFISH_TestObj_Equals_t)cfish_obj_method(self, TESTCFISH_TestObj_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Compare_To’: autogen/include/Clownfish/Test/TestObj.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestObj *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestObj *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestObj_Compare_To_t method = (TESTCFISH_TestObj_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestObj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_String’: autogen/include/Clownfish/Test/TestObj.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestObj_To_String_t method = (TESTCFISH_TestObj_To_String_t)cfish_obj_method(self, TESTCFISH_TestObj_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Run’: autogen/include/Clownfish/Test/TestObj.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestObj *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestObj_Run_t method = (TESTCFISH_TestObj_Run_t)cfish_obj_method(self, TESTCFISH_TestObj_Run_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestObj.c:26: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestObj.c:29: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestNum.c -c -o cftest/Clownfish/Test/TestNum.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestNum.h:40, from cftest/Clownfish/Test/TestNum.c:24: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_Host’: autogen/include/Clownfish/Test/TestNum.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestNum *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestNum_To_Host_t method = (TESTCFISH_TestNum_To_Host_t)cfish_obj_method(self, TESTCFISH_TestNum_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Clone’: autogen/include/Clownfish/Test/TestNum.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestNum_Clone_t method = (TESTCFISH_TestNum_Clone_t)cfish_obj_method(self, TESTCFISH_TestNum_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Equals’: autogen/include/Clownfish/Test/TestNum.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestNum *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestNum_Equals_t method = (TESTCFISH_TestNum_Equals_t)cfish_obj_method(self, TESTCFISH_TestNum_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Compare_To’: autogen/include/Clownfish/Test/TestNum.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestNum *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestNum *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestNum_Compare_To_t method = (TESTCFISH_TestNum_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestNum_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_String’: autogen/include/Clownfish/Test/TestNum.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestNum_To_String_t method = (TESTCFISH_TestNum_To_String_t)cfish_obj_method(self, TESTCFISH_TestNum_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Run’: autogen/include/Clownfish/Test/TestNum.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestNum *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestNum_Run_t method = (TESTCFISH_TestNum_Run_t)cfish_obj_method(self, TESTCFISH_TestNum_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestNum.c:26: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestNum.c:27: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestNum.c:28: autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_Host’: autogen/include/Clownfish/Num.h:162:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Float *, void *)’ [-Wcast-function-type] 162 | const CFISH_Float_To_Host_t method = (CFISH_Float_To_Host_t)cfish_obj_method(self, CFISH_Float_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Clone’: autogen/include/Clownfish/Num.h:173:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Float * (*)(cfish_Float *)’ [-Wcast-function-type] 173 | const CFISH_Float_Clone_t method = (CFISH_Float_Clone_t)cfish_obj_method(self, CFISH_Float_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Equals’: autogen/include/Clownfish/Num.h:184:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Float *, cfish_Obj *)’ [-Wcast-function-type] 184 | const CFISH_Float_Equals_t method = (CFISH_Float_Equals_t)cfish_obj_method(self, CFISH_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Compare_To’: autogen/include/Clownfish/Num.h:195:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Float *, cfish_Obj *)’ {aka ‘int (*)(cfish_Float *, cfish_Obj *)’} [-Wcast-function-type] 195 | const CFISH_Float_Compare_To_t method = (CFISH_Float_Compare_To_t)cfish_obj_method(self, CFISH_Float_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_String’: autogen/include/Clownfish/Num.h:217:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Float *)’ [-Wcast-function-type] 217 | const CFISH_Float_To_String_t method = (CFISH_Float_To_String_t)cfish_obj_method(self, CFISH_Float_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Get_Value’: autogen/include/Clownfish/Num.h:228:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Float *)’ [-Wcast-function-type] 228 | const CFISH_Float_Get_Value_t method = (CFISH_Float_Get_Value_t)cfish_obj_method(self, CFISH_Float_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_I64’: autogen/include/Clownfish/Num.h:239:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Float *)’ {aka ‘long int (*)(cfish_Float *)’} [-Wcast-function-type] 239 | const CFISH_Float_To_I64_t method = (CFISH_Float_To_I64_t)cfish_obj_method(self, CFISH_Float_To_I64_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_Host’: autogen/include/Clownfish/Num.h:417:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Integer *, void *)’ [-Wcast-function-type] 417 | const CFISH_Int_To_Host_t method = (CFISH_Int_To_Host_t)cfish_obj_method(self, CFISH_Int_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Clone’: autogen/include/Clownfish/Num.h:428:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Integer * (*)(cfish_Integer *)’ [-Wcast-function-type] 428 | const CFISH_Int_Clone_t method = (CFISH_Int_Clone_t)cfish_obj_method(self, CFISH_Int_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Equals’: autogen/include/Clownfish/Num.h:439:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Integer *, cfish_Obj *)’ [-Wcast-function-type] 439 | const CFISH_Int_Equals_t method = (CFISH_Int_Equals_t)cfish_obj_method(self, CFISH_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Compare_To’: autogen/include/Clownfish/Num.h:450:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Integer *, cfish_Obj *)’ {aka ‘int (*)(cfish_Integer *, cfish_Obj *)’} [-Wcast-function-type] 450 | const CFISH_Int_Compare_To_t method = (CFISH_Int_Compare_To_t)cfish_obj_method(self, CFISH_Int_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_String’: autogen/include/Clownfish/Num.h:472:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Integer *)’ [-Wcast-function-type] 472 | const CFISH_Int_To_String_t method = (CFISH_Int_To_String_t)cfish_obj_method(self, CFISH_Int_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Get_Value’: autogen/include/Clownfish/Num.h:483:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Integer *)’ {aka ‘long int (*)(cfish_Integer *)’} [-Wcast-function-type] 483 | const CFISH_Int_Get_Value_t method = (CFISH_Int_Get_Value_t)cfish_obj_method(self, CFISH_Int_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_F64’: autogen/include/Clownfish/Num.h:494:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Integer *)’ [-Wcast-function-type] 494 | const CFISH_Int_To_F64_t method = (CFISH_Int_To_F64_t)cfish_obj_method(self, CFISH_Int_To_F64_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestNum.c:30: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestMethod.c -c -o cftest/Clownfish/Test/TestMethod.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestMethod.h:40, from cftest/Clownfish/Test/TestMethod.c:20: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_Host’: autogen/include/Clownfish/Test/TestMethod.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMethod *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMethod_To_Host_t method = (TESTCFISH_TestMethod_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Clone’: autogen/include/Clownfish/Test/TestMethod.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMethod_Clone_t method = (TESTCFISH_TestMethod_Clone_t)cfish_obj_method(self, TESTCFISH_TestMethod_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Equals’: autogen/include/Clownfish/Test/TestMethod.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMethod *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMethod_Equals_t method = (TESTCFISH_TestMethod_Equals_t)cfish_obj_method(self, TESTCFISH_TestMethod_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Compare_To’: autogen/include/Clownfish/Test/TestMethod.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMethod *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMethod *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMethod_Compare_To_t method = (TESTCFISH_TestMethod_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMethod_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_String’: autogen/include/Clownfish/Test/TestMethod.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMethod_To_String_t method = (TESTCFISH_TestMethod_To_String_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Run’: autogen/include/Clownfish/Test/TestMethod.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMethod *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMethod_Run_t method = (TESTCFISH_TestMethod_Run_t)cfish_obj_method(self, TESTCFISH_TestMethod_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestMethod.c:22: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestMethod.c:23: autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_To_Host’: autogen/include/Clownfish/Method.h:177:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Method *, void *)’ [-Wcast-function-type] 177 | const CFISH_Method_To_Host_t method = (CFISH_Method_To_Host_t)cfish_obj_method(self, CFISH_Method_To_Host_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Clone’: autogen/include/Clownfish/Method.h:188:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Method *)’ [-Wcast-function-type] 188 | const CFISH_Method_Clone_t method = (CFISH_Method_Clone_t)cfish_obj_method(self, CFISH_Method_Clone_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Equals’: autogen/include/Clownfish/Method.h:199:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Method *, cfish_Obj *)’ [-Wcast-function-type] 199 | const CFISH_Method_Equals_t method = (CFISH_Method_Equals_t)cfish_obj_method(self, CFISH_Method_Equals_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Compare_To’: autogen/include/Clownfish/Method.h:210:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Method *, cfish_Obj *)’ {aka ‘int (*)(cfish_Method *, cfish_Obj *)’} [-Wcast-function-type] 210 | const CFISH_Method_Compare_To_t method = (CFISH_Method_Compare_To_t)cfish_obj_method(self, CFISH_Method_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_To_String’: autogen/include/Clownfish/Method.h:232:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 232 | const CFISH_Method_To_String_t method = (CFISH_Method_To_String_t)cfish_obj_method(self, CFISH_Method_To_String_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Get_Name’: autogen/include/Clownfish/Method.h:243:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 243 | const CFISH_Method_Get_Name_t method = (CFISH_Method_Get_Name_t)cfish_obj_method(self, CFISH_Method_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Set_Host_Alias’: autogen/include/Clownfish/Method.h:254:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Method *, cfish_String *)’ [-Wcast-function-type] 254 | const CFISH_Method_Set_Host_Alias_t method = (CFISH_Method_Set_Host_Alias_t)cfish_obj_method(self, CFISH_Method_Set_Host_Alias_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Get_Host_Alias’: autogen/include/Clownfish/Method.h:265:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 265 | const CFISH_Method_Get_Host_Alias_t method = (CFISH_Method_Get_Host_Alias_t)cfish_obj_method(self, CFISH_Method_Get_Host_Alias_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Is_Excluded_From_Host’: autogen/include/Clownfish/Method.h:276:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Method *)’ [-Wcast-function-type] 276 | const CFISH_Method_Is_Excluded_From_Host_t method = (CFISH_Method_Is_Excluded_From_Host_t)cfish_obj_method(self, CFISH_Method_Is_Excluded_From_Host_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Host_Name’: autogen/include/Clownfish/Method.h:287:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 287 | const CFISH_Method_Host_Name_t method = (CFISH_Method_Host_Name_t)cfish_obj_method(self, CFISH_Method_Host_Name_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestMethod.c:24: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestMethod.c:25: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestLockFreeRegistry.c -c -o cftest/Clownfish/Test/TestLockFreeRegistry.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestLockFreeRegistry.h:40, from cftest/Clownfish/Test/TestLockFreeRegistry.c:23: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_Host’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestLockFreeRegistry *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestLFReg_To_Host_t method = (TESTCFISH_TestLFReg_To_Host_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Clone’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestLFReg_Clone_t method = (TESTCFISH_TestLFReg_Clone_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Equals’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestLFReg_Equals_t method = (TESTCFISH_TestLFReg_Equals_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Compare_To’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestLFReg_Compare_To_t method = (TESTCFISH_TestLFReg_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_String’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestLFReg_To_String_t method = (TESTCFISH_TestLFReg_To_String_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Run’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestLockFreeRegistry *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestLFReg_Run_t method = (TESTCFISH_TestLFReg_Run_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestLockFreeRegistry.c:25: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cftest/Clownfish/Test/TestLockFreeRegistry.c:27: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestLockFreeRegistry.c:29: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestHost.c -c -o cftest/Clownfish/Test/TestHost.o In file included from autogen/include/Clownfish/Test/TestHost.h:40, from cftest/Clownfish/Test/TestHost.c:20: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_To_Host’: autogen/include/Clownfish/Test/TestHost.h:220:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHost *, void *)’ [-Wcast-function-type] 220 | const TESTCFISH_TestHost_To_Host_t method = (TESTCFISH_TestHost_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHost_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Clone’: autogen/include/Clownfish/Test/TestHost.h:227:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 227 | const TESTCFISH_TestHost_Clone_t method = (TESTCFISH_TestHost_Clone_t)cfish_obj_method(self, TESTCFISH_TestHost_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Equals’: autogen/include/Clownfish/Test/TestHost.h:234:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 234 | const TESTCFISH_TestHost_Equals_t method = (TESTCFISH_TestHost_Equals_t)cfish_obj_method(self, TESTCFISH_TestHost_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Compare_To’: autogen/include/Clownfish/Test/TestHost.h:241:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHost *, cfish_Obj *)’} [-Wcast-function-type] 241 | const TESTCFISH_TestHost_Compare_To_t method = (TESTCFISH_TestHost_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHost_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_To_String’: autogen/include/Clownfish/Test/TestHost.h:255:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 255 | const TESTCFISH_TestHost_To_String_t method = (TESTCFISH_TestHost_To_String_t)cfish_obj_method(self, TESTCFISH_TestHost_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:262:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 262 | const TESTCFISH_TestHost_Test_Obj_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Obj_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:269:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 269 | const TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:276:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ [-Wcast-function-type] 276 | const TESTCFISH_TestHost_Test_Obj_Label_Arg_t method = (TESTCFISH_TestHost_Test_Obj_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:283:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ [-Wcast-function-type] 283 | const TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:290:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} [-Wcast-function-type] 290 | const TESTCFISH_TestHost_Test_Int32_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Int32_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:297:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} [-Wcast-function-type] 297 | const TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:304:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} [-Wcast-function-type] 304 | const TESTCFISH_TestHost_Test_Int32_Label_Arg_t method = (TESTCFISH_TestHost_Test_Int32_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:311:66: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} [-Wcast-function-type] 311 | const TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:318:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool)’ [-Wcast-function-type] 318 | const TESTCFISH_TestHost_Test_Bool_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Bool_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:325:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool)’ [-Wcast-function-type] 325 | const TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:332:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ [-Wcast-function-type] 332 | const TESTCFISH_TestHost_Test_Bool_Label_Arg_t method = (TESTCFISH_TestHost_Test_Bool_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:339:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ [-Wcast-function-type] 339 | const TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Invalid_Callback’: autogen/include/Clownfish/Test/TestHost.h:346:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 346 | const TESTCFISH_TestHost_Invalid_Callback_t method = (TESTCFISH_TestHost_Invalid_Callback_t)cfish_obj_method(self, TESTCFISH_TestHost_Invalid_Callback_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Aliased’: autogen/include/Clownfish/Test/TestHost.h:360:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 360 | const TESTCFISH_TestHost_Aliased_t method = (TESTCFISH_TestHost_Aliased_t)cfish_obj_method(self, TESTCFISH_TestHost_Aliased_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Invoke_Aliased_From_C’: autogen/include/Clownfish/Test/TestHost.h:367:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 367 | const TESTCFISH_TestHost_Invoke_Aliased_From_C_t method = (TESTCFISH_TestHost_Invoke_Aliased_From_C_t)cfish_obj_method(self, TESTCFISH_TestHost_Invoke_Aliased_From_C_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHost.c:21: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cftest/Clownfish/Test/TestHost.c:22: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestHashIterator.c -c -o cftest/Clownfish/Test/TestHashIterator.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestHashIterator.h:40, from cftest/Clownfish/Test/TestHashIterator.c:23: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_Host’: autogen/include/Clownfish/Test/TestHashIterator.h:130:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHashIterator *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHashIterator_To_Host_t method = (TESTCFISH_TestHashIterator_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Clone’: autogen/include/Clownfish/Test/TestHashIterator.h:137:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHashIterator_Clone_t method = (TESTCFISH_TestHashIterator_Clone_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Equals’: autogen/include/Clownfish/Test/TestHashIterator.h:144:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHashIterator *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHashIterator_Equals_t method = (TESTCFISH_TestHashIterator_Equals_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Compare_To’: autogen/include/Clownfish/Test/TestHashIterator.h:151:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHashIterator *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHashIterator *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHashIterator_Compare_To_t method = (TESTCFISH_TestHashIterator_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_String’: autogen/include/Clownfish/Test/TestHashIterator.h:165:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHashIterator_To_String_t method = (TESTCFISH_TestHashIterator_To_String_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Run’: autogen/include/Clownfish/Test/TestHashIterator.h:172:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHashIterator *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHashIterator_Run_t method = (TESTCFISH_TestHashIterator_Run_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHashIterator.c:25: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestHashIterator.c:26: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHashIterator.c:27: autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_To_Host’: autogen/include/Clownfish/Hash.h:225:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Hash *, void *)’ [-Wcast-function-type] 225 | const CFISH_Hash_To_Host_t method = (CFISH_Hash_To_Host_t)cfish_obj_method(self, CFISH_Hash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Clone’: autogen/include/Clownfish/Hash.h:236:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *)’ [-Wcast-function-type] 236 | const CFISH_Hash_Clone_t method = (CFISH_Hash_Clone_t)cfish_obj_method(self, CFISH_Hash_Clone_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Equals’: autogen/include/Clownfish/Hash.h:247:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Hash *, cfish_Obj *)’ [-Wcast-function-type] 247 | const CFISH_Hash_Equals_t method = (CFISH_Hash_Equals_t)cfish_obj_method(self, CFISH_Hash_Equals_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Compare_To’: autogen/include/Clownfish/Hash.h:258:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Hash *, cfish_Obj *)’ {aka ‘int (*)(cfish_Hash *, cfish_Obj *)’} [-Wcast-function-type] 258 | const CFISH_Hash_Compare_To_t method = (CFISH_Hash_Compare_To_t)cfish_obj_method(self, CFISH_Hash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_To_String’: autogen/include/Clownfish/Hash.h:280:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Hash *)’ [-Wcast-function-type] 280 | const CFISH_Hash_To_String_t method = (CFISH_Hash_To_String_t)cfish_obj_method(self, CFISH_Hash_To_String_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Store’: autogen/include/Clownfish/Hash.h:302:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Hash *, cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 302 | const CFISH_Hash_Store_t method = (CFISH_Hash_Store_t)cfish_obj_method(self, CFISH_Hash_Store_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Store_Utf8’: autogen/include/Clownfish/Hash.h:313:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Hash *, const char *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Hash *, const char *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 313 | const CFISH_Hash_Store_Utf8_t method = (CFISH_Hash_Store_Utf8_t)cfish_obj_method(self, CFISH_Hash_Store_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Fetch’: autogen/include/Clownfish/Hash.h:324:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 324 | const CFISH_Hash_Fetch_t method = (CFISH_Hash_Fetch_t)cfish_obj_method(self, CFISH_Hash_Fetch_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Fetch_Utf8’: autogen/include/Clownfish/Hash.h:335:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} [-Wcast-function-type] 335 | const CFISH_Hash_Fetch_Utf8_t method = (CFISH_Hash_Fetch_Utf8_t)cfish_obj_method(self, CFISH_Hash_Fetch_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Delete’: autogen/include/Clownfish/Hash.h:346:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 346 | const CFISH_Hash_Delete_t method = (CFISH_Hash_Delete_t)cfish_obj_method(self, CFISH_Hash_Delete_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Delete_Utf8’: autogen/include/Clownfish/Hash.h:357:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} [-Wcast-function-type] 357 | const CFISH_Hash_Delete_Utf8_t method = (CFISH_Hash_Delete_Utf8_t)cfish_obj_method(self, CFISH_Hash_Delete_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Has_Key’: autogen/include/Clownfish/Hash.h:368:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 368 | const CFISH_Hash_Has_Key_t method = (CFISH_Hash_Has_Key_t)cfish_obj_method(self, CFISH_Hash_Has_Key_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Keys’: autogen/include/Clownfish/Hash.h:379:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Hash *)’ [-Wcast-function-type] 379 | const CFISH_Hash_Keys_t method = (CFISH_Hash_Keys_t)cfish_obj_method(self, CFISH_Hash_Keys_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Values’: autogen/include/Clownfish/Hash.h:390:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Hash *)’ [-Wcast-function-type] 390 | const CFISH_Hash_Values_t method = (CFISH_Hash_Values_t)cfish_obj_method(self, CFISH_Hash_Values_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Get_Capacity’: autogen/include/Clownfish/Hash.h:401:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} [-Wcast-function-type] 401 | const CFISH_Hash_Get_Capacity_t method = (CFISH_Hash_Get_Capacity_t)cfish_obj_method(self, CFISH_Hash_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Get_Size’: autogen/include/Clownfish/Hash.h:412:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} [-Wcast-function-type] 412 | const CFISH_Hash_Get_Size_t method = (CFISH_Hash_Get_Size_t)cfish_obj_method(self, CFISH_Hash_Get_Size_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHashIterator.c:28: autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_To_Host’: autogen/include/Clownfish/HashIterator.h:161:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_HashIterator *, void *)’ [-Wcast-function-type] 161 | const CFISH_HashIter_To_Host_t method = (CFISH_HashIter_To_Host_t)cfish_obj_method(self, CFISH_HashIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_Clone’: autogen/include/Clownfish/HashIterator.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_HashIterator *)’ [-Wcast-function-type] 172 | const CFISH_HashIter_Clone_t method = (CFISH_HashIter_Clone_t)cfish_obj_method(self, CFISH_HashIter_Clone_OFFSET); | ^ autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_Equals’: autogen/include/Clownfish/HashIterator.h:183:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_HashIterator *, cfish_Obj *)’ [-Wcast-function-type] 183 | const CFISH_HashIter_Equals_t method = (CFISH_HashIter_Equals_t)cfish_obj_method(self, CFISH_HashIter_Equals_OFFSET); | ^ autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_Compare_To’: autogen/include/Clownfish/HashIterator.h:194:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_HashIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_HashIterator *, cfish_Obj *)’} [-Wcast-function-type] 194 | const CFISH_HashIter_Compare_To_t method = (CFISH_HashIter_Compare_To_t)cfish_obj_method(self, CFISH_HashIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_To_String’: autogen/include/Clownfish/HashIterator.h:216:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_HashIterator *)’ [-Wcast-function-type] 216 | const CFISH_HashIter_To_String_t method = (CFISH_HashIter_To_String_t)cfish_obj_method(self, CFISH_HashIter_To_String_OFFSET); | ^ autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_Next’: autogen/include/Clownfish/HashIterator.h:227:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_HashIterator *)’ [-Wcast-function-type] 227 | const CFISH_HashIter_Next_t method = (CFISH_HashIter_Next_t)cfish_obj_method(self, CFISH_HashIter_Next_OFFSET); | ^ autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_Get_Key’: autogen/include/Clownfish/HashIterator.h:238:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_HashIterator *)’ [-Wcast-function-type] 238 | const CFISH_HashIter_Get_Key_t method = (CFISH_HashIter_Get_Key_t)cfish_obj_method(self, CFISH_HashIter_Get_Key_OFFSET); | ^ autogen/include/Clownfish/HashIterator.h: In function ‘CFISH_HashIter_Get_Value’: autogen/include/Clownfish/HashIterator.h:249:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_HashIterator *)’ [-Wcast-function-type] 249 | const CFISH_HashIter_Get_Value_t method = (CFISH_HashIter_Get_Value_t)cfish_obj_method(self, CFISH_HashIter_Get_Value_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHashIterator.c:30: autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_Host’: autogen/include/Clownfish/Vector.h:245:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Vector *, void *)’ [-Wcast-function-type] 245 | const CFISH_Vec_To_Host_t method = (CFISH_Vec_To_Host_t)cfish_obj_method(self, CFISH_Vec_To_Host_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Clone’: autogen/include/Clownfish/Vector.h:256:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *)’ [-Wcast-function-type] 256 | const CFISH_Vec_Clone_t method = (CFISH_Vec_Clone_t)cfish_obj_method(self, CFISH_Vec_Clone_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Equals’: autogen/include/Clownfish/Vector.h:267:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 267 | const CFISH_Vec_Equals_t method = (CFISH_Vec_Equals_t)cfish_obj_method(self, CFISH_Vec_Equals_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Compare_To’: autogen/include/Clownfish/Vector.h:278:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Vector *, cfish_Obj *)’ {aka ‘int (*)(cfish_Vector *, cfish_Obj *)’} [-Wcast-function-type] 278 | const CFISH_Vec_Compare_To_t method = (CFISH_Vec_Compare_To_t)cfish_obj_method(self, CFISH_Vec_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_String’: autogen/include/Clownfish/Vector.h:300:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Vector *)’ [-Wcast-function-type] 300 | const CFISH_Vec_To_String_t method = (CFISH_Vec_To_String_t)cfish_obj_method(self, CFISH_Vec_To_String_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push’: autogen/include/Clownfish/Vector.h:311:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 311 | const CFISH_Vec_Push_t method = (CFISH_Vec_Push_t)cfish_obj_method(self, CFISH_Vec_Push_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push_All’: autogen/include/Clownfish/Vector.h:322:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Vector *)’ [-Wcast-function-type] 322 | const CFISH_Vec_Push_All_t method = (CFISH_Vec_Push_All_t)cfish_obj_method(self, CFISH_Vec_Push_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Pop’: autogen/include/Clownfish/Vector.h:333:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *)’ [-Wcast-function-type] 333 | const CFISH_Vec_Pop_t method = (CFISH_Vec_Pop_t)cfish_obj_method(self, CFISH_Vec_Pop_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert’: autogen/include/Clownfish/Vector.h:344:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 344 | const CFISH_Vec_Insert_t method = (CFISH_Vec_Insert_t)cfish_obj_method(self, CFISH_Vec_Insert_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert_All’: autogen/include/Clownfish/Vector.h:355:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Vector *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Vector *)’} [-Wcast-function-type] 355 | const CFISH_Vec_Insert_All_t method = (CFISH_Vec_Insert_All_t)cfish_obj_method(self, CFISH_Vec_Insert_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Grow’: autogen/include/Clownfish/Vector.h:366:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 366 | const CFISH_Vec_Grow_t method = (CFISH_Vec_Grow_t)cfish_obj_method(self, CFISH_Vec_Grow_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Fetch’: autogen/include/Clownfish/Vector.h:377:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 377 | const CFISH_Vec_Fetch_t method = (CFISH_Vec_Fetch_t)cfish_obj_method(self, CFISH_Vec_Fetch_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Store’: autogen/include/Clownfish/Vector.h:388:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 388 | const CFISH_Vec_Store_t method = (CFISH_Vec_Store_t)cfish_obj_method(self, CFISH_Vec_Store_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Delete’: autogen/include/Clownfish/Vector.h:399:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 399 | const CFISH_Vec_Delete_t method = (CFISH_Vec_Delete_t)cfish_obj_method(self, CFISH_Vec_Delete_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Excise’: autogen/include/Clownfish/Vector.h:410:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 410 | const CFISH_Vec_Excise_t method = (CFISH_Vec_Excise_t)cfish_obj_method(self, CFISH_Vec_Excise_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Resize’: autogen/include/Clownfish/Vector.h:432:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 432 | const CFISH_Vec_Resize_t method = (CFISH_Vec_Resize_t)cfish_obj_method(self, CFISH_Vec_Resize_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Size’: autogen/include/Clownfish/Vector.h:454:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 454 | const CFISH_Vec_Get_Size_t method = (CFISH_Vec_Get_Size_t)cfish_obj_method(self, CFISH_Vec_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Capacity’: autogen/include/Clownfish/Vector.h:465:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 465 | const CFISH_Vec_Get_Capacity_t method = (CFISH_Vec_Get_Capacity_t)cfish_obj_method(self, CFISH_Vec_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Slice’: autogen/include/Clownfish/Vector.h:476:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *, size_t, size_t)’ {aka ‘cfish_Vector * (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 476 | const CFISH_Vec_Slice_t method = (CFISH_Vec_Slice_t)cfish_obj_method(self, CFISH_Vec_Slice_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHashIterator.c:31: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestHash.c -c -o cftest/Clownfish/Test/TestHash.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestHash.h:40, from cftest/Clownfish/Test/TestHash.c:24: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_Host’: autogen/include/Clownfish/Test/TestHash.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHash_To_Host_t method = (TESTCFISH_TestHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Clone’: autogen/include/Clownfish/Test/TestHash.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHash_Clone_t method = (TESTCFISH_TestHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Equals’: autogen/include/Clownfish/Test/TestHash.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHash_Equals_t method = (TESTCFISH_TestHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Compare_To’: autogen/include/Clownfish/Test/TestHash.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHash_Compare_To_t method = (TESTCFISH_TestHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_String’: autogen/include/Clownfish/Test/TestHash.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHash_To_String_t method = (TESTCFISH_TestHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Run’: autogen/include/Clownfish/Test/TestHash.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHash_Run_t method = (TESTCFISH_TestHash_Run_t)cfish_obj_method(self, TESTCFISH_TestHash_Run_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestHash.c:26: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHash.c:27: autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_Host’: autogen/include/Clownfish/Boolean.h:159:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Boolean *, void *)’ [-Wcast-function-type] 159 | const CFISH_Bool_To_Host_t method = (CFISH_Bool_To_Host_t)cfish_obj_method(self, CFISH_Bool_To_Host_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Clone’: autogen/include/Clownfish/Boolean.h:170:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Boolean * (*)(cfish_Boolean *)’ [-Wcast-function-type] 170 | const CFISH_Bool_Clone_t method = (CFISH_Bool_Clone_t)cfish_obj_method(self, CFISH_Bool_Clone_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Equals’: autogen/include/Clownfish/Boolean.h:181:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *, cfish_Obj *)’ [-Wcast-function-type] 181 | const CFISH_Bool_Equals_t method = (CFISH_Bool_Equals_t)cfish_obj_method(self, CFISH_Bool_Equals_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Compare_To’: autogen/include/Clownfish/Boolean.h:192:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Boolean *, cfish_Obj *)’ {aka ‘int (*)(cfish_Boolean *, cfish_Obj *)’} [-Wcast-function-type] 192 | const CFISH_Bool_Compare_To_t method = (CFISH_Bool_Compare_To_t)cfish_obj_method(self, CFISH_Bool_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_String’: autogen/include/Clownfish/Boolean.h:214:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Boolean *)’ [-Wcast-function-type] 214 | const CFISH_Bool_To_String_t method = (CFISH_Bool_To_String_t)cfish_obj_method(self, CFISH_Bool_To_String_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Get_Value’: autogen/include/Clownfish/Boolean.h:225:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *)’ [-Wcast-function-type] 225 | const CFISH_Bool_Get_Value_t method = (CFISH_Bool_Get_Value_t)cfish_obj_method(self, CFISH_Bool_Get_Value_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHash.c:28: autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_To_Host’: autogen/include/Clownfish/Hash.h:225:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Hash *, void *)’ [-Wcast-function-type] 225 | const CFISH_Hash_To_Host_t method = (CFISH_Hash_To_Host_t)cfish_obj_method(self, CFISH_Hash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Clone’: autogen/include/Clownfish/Hash.h:236:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *)’ [-Wcast-function-type] 236 | const CFISH_Hash_Clone_t method = (CFISH_Hash_Clone_t)cfish_obj_method(self, CFISH_Hash_Clone_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Equals’: autogen/include/Clownfish/Hash.h:247:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Hash *, cfish_Obj *)’ [-Wcast-function-type] 247 | const CFISH_Hash_Equals_t method = (CFISH_Hash_Equals_t)cfish_obj_method(self, CFISH_Hash_Equals_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Compare_To’: autogen/include/Clownfish/Hash.h:258:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Hash *, cfish_Obj *)’ {aka ‘int (*)(cfish_Hash *, cfish_Obj *)’} [-Wcast-function-type] 258 | const CFISH_Hash_Compare_To_t method = (CFISH_Hash_Compare_To_t)cfish_obj_method(self, CFISH_Hash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_To_String’: autogen/include/Clownfish/Hash.h:280:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Hash *)’ [-Wcast-function-type] 280 | const CFISH_Hash_To_String_t method = (CFISH_Hash_To_String_t)cfish_obj_method(self, CFISH_Hash_To_String_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Store’: autogen/include/Clownfish/Hash.h:302:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Hash *, cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 302 | const CFISH_Hash_Store_t method = (CFISH_Hash_Store_t)cfish_obj_method(self, CFISH_Hash_Store_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Store_Utf8’: autogen/include/Clownfish/Hash.h:313:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Hash *, const char *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Hash *, const char *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 313 | const CFISH_Hash_Store_Utf8_t method = (CFISH_Hash_Store_Utf8_t)cfish_obj_method(self, CFISH_Hash_Store_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Fetch’: autogen/include/Clownfish/Hash.h:324:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 324 | const CFISH_Hash_Fetch_t method = (CFISH_Hash_Fetch_t)cfish_obj_method(self, CFISH_Hash_Fetch_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Fetch_Utf8’: autogen/include/Clownfish/Hash.h:335:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} [-Wcast-function-type] 335 | const CFISH_Hash_Fetch_Utf8_t method = (CFISH_Hash_Fetch_Utf8_t)cfish_obj_method(self, CFISH_Hash_Fetch_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Delete’: autogen/include/Clownfish/Hash.h:346:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 346 | const CFISH_Hash_Delete_t method = (CFISH_Hash_Delete_t)cfish_obj_method(self, CFISH_Hash_Delete_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Delete_Utf8’: autogen/include/Clownfish/Hash.h:357:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} [-Wcast-function-type] 357 | const CFISH_Hash_Delete_Utf8_t method = (CFISH_Hash_Delete_Utf8_t)cfish_obj_method(self, CFISH_Hash_Delete_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Has_Key’: autogen/include/Clownfish/Hash.h:368:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 368 | const CFISH_Hash_Has_Key_t method = (CFISH_Hash_Has_Key_t)cfish_obj_method(self, CFISH_Hash_Has_Key_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Keys’: autogen/include/Clownfish/Hash.h:379:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Hash *)’ [-Wcast-function-type] 379 | const CFISH_Hash_Keys_t method = (CFISH_Hash_Keys_t)cfish_obj_method(self, CFISH_Hash_Keys_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Values’: autogen/include/Clownfish/Hash.h:390:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Hash *)’ [-Wcast-function-type] 390 | const CFISH_Hash_Values_t method = (CFISH_Hash_Values_t)cfish_obj_method(self, CFISH_Hash_Values_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Get_Capacity’: autogen/include/Clownfish/Hash.h:401:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} [-Wcast-function-type] 401 | const CFISH_Hash_Get_Capacity_t method = (CFISH_Hash_Get_Capacity_t)cfish_obj_method(self, CFISH_Hash_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Get_Size’: autogen/include/Clownfish/Hash.h:412:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} [-Wcast-function-type] 412 | const CFISH_Hash_Get_Size_t method = (CFISH_Hash_Get_Size_t)cfish_obj_method(self, CFISH_Hash_Get_Size_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHash.c:30: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestHash.c:32: autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_Host’: autogen/include/Clownfish/Vector.h:245:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Vector *, void *)’ [-Wcast-function-type] 245 | const CFISH_Vec_To_Host_t method = (CFISH_Vec_To_Host_t)cfish_obj_method(self, CFISH_Vec_To_Host_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Clone’: autogen/include/Clownfish/Vector.h:256:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *)’ [-Wcast-function-type] 256 | const CFISH_Vec_Clone_t method = (CFISH_Vec_Clone_t)cfish_obj_method(self, CFISH_Vec_Clone_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Equals’: autogen/include/Clownfish/Vector.h:267:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 267 | const CFISH_Vec_Equals_t method = (CFISH_Vec_Equals_t)cfish_obj_method(self, CFISH_Vec_Equals_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Compare_To’: autogen/include/Clownfish/Vector.h:278:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Vector *, cfish_Obj *)’ {aka ‘int (*)(cfish_Vector *, cfish_Obj *)’} [-Wcast-function-type] 278 | const CFISH_Vec_Compare_To_t method = (CFISH_Vec_Compare_To_t)cfish_obj_method(self, CFISH_Vec_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_String’: autogen/include/Clownfish/Vector.h:300:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Vector *)’ [-Wcast-function-type] 300 | const CFISH_Vec_To_String_t method = (CFISH_Vec_To_String_t)cfish_obj_method(self, CFISH_Vec_To_String_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push’: autogen/include/Clownfish/Vector.h:311:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 311 | const CFISH_Vec_Push_t method = (CFISH_Vec_Push_t)cfish_obj_method(self, CFISH_Vec_Push_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push_All’: autogen/include/Clownfish/Vector.h:322:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Vector *)’ [-Wcast-function-type] 322 | const CFISH_Vec_Push_All_t method = (CFISH_Vec_Push_All_t)cfish_obj_method(self, CFISH_Vec_Push_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Pop’: autogen/include/Clownfish/Vector.h:333:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *)’ [-Wcast-function-type] 333 | const CFISH_Vec_Pop_t method = (CFISH_Vec_Pop_t)cfish_obj_method(self, CFISH_Vec_Pop_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert’: autogen/include/Clownfish/Vector.h:344:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 344 | const CFISH_Vec_Insert_t method = (CFISH_Vec_Insert_t)cfish_obj_method(self, CFISH_Vec_Insert_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert_All’: autogen/include/Clownfish/Vector.h:355:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Vector *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Vector *)’} [-Wcast-function-type] 355 | const CFISH_Vec_Insert_All_t method = (CFISH_Vec_Insert_All_t)cfish_obj_method(self, CFISH_Vec_Insert_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Grow’: autogen/include/Clownfish/Vector.h:366:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 366 | const CFISH_Vec_Grow_t method = (CFISH_Vec_Grow_t)cfish_obj_method(self, CFISH_Vec_Grow_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Fetch’: autogen/include/Clownfish/Vector.h:377:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 377 | const CFISH_Vec_Fetch_t method = (CFISH_Vec_Fetch_t)cfish_obj_method(self, CFISH_Vec_Fetch_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Store’: autogen/include/Clownfish/Vector.h:388:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 388 | const CFISH_Vec_Store_t method = (CFISH_Vec_Store_t)cfish_obj_method(self, CFISH_Vec_Store_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Delete’: autogen/include/Clownfish/Vector.h:399:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 399 | const CFISH_Vec_Delete_t method = (CFISH_Vec_Delete_t)cfish_obj_method(self, CFISH_Vec_Delete_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Excise’: autogen/include/Clownfish/Vector.h:410:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 410 | const CFISH_Vec_Excise_t method = (CFISH_Vec_Excise_t)cfish_obj_method(self, CFISH_Vec_Excise_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Resize’: autogen/include/Clownfish/Vector.h:432:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 432 | const CFISH_Vec_Resize_t method = (CFISH_Vec_Resize_t)cfish_obj_method(self, CFISH_Vec_Resize_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Size’: autogen/include/Clownfish/Vector.h:454:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 454 | const CFISH_Vec_Get_Size_t method = (CFISH_Vec_Get_Size_t)cfish_obj_method(self, CFISH_Vec_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Capacity’: autogen/include/Clownfish/Vector.h:465:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 465 | const CFISH_Vec_Get_Capacity_t method = (CFISH_Vec_Get_Capacity_t)cfish_obj_method(self, CFISH_Vec_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Slice’: autogen/include/Clownfish/Vector.h:476:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *, size_t, size_t)’ {aka ‘cfish_Vector * (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 476 | const CFISH_Vec_Slice_t method = (CFISH_Vec_Slice_t)cfish_obj_method(self, CFISH_Vec_Slice_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestErr.c -c -o cftest/Clownfish/Test/TestErr.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestErr.h:40, from cftest/Clownfish/Test/TestErr.c:20: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_Host’: autogen/include/Clownfish/Test/TestErr.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestErr *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestErr_To_Host_t method = (TESTCFISH_TestErr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestErr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Clone’: autogen/include/Clownfish/Test/TestErr.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestErr_Clone_t method = (TESTCFISH_TestErr_Clone_t)cfish_obj_method(self, TESTCFISH_TestErr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Equals’: autogen/include/Clownfish/Test/TestErr.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestErr *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestErr_Equals_t method = (TESTCFISH_TestErr_Equals_t)cfish_obj_method(self, TESTCFISH_TestErr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Compare_To’: autogen/include/Clownfish/Test/TestErr.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestErr *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestErr *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestErr_Compare_To_t method = (TESTCFISH_TestErr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestErr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_String’: autogen/include/Clownfish/Test/TestErr.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestErr_To_String_t method = (TESTCFISH_TestErr_To_String_t)cfish_obj_method(self, TESTCFISH_TestErr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Run’: autogen/include/Clownfish/Test/TestErr.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestErr *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestErr_Run_t method = (TESTCFISH_TestErr_Run_t)cfish_obj_method(self, TESTCFISH_TestErr_Run_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestErr.c:22: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestErr.c:25: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestClass.c -c -o cftest/Clownfish/Test/TestClass.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestClass.h:40, from cftest/Clownfish/Test/TestClass.c:28: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_Host’: autogen/include/Clownfish/Test/TestClass.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestClass *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestClass_To_Host_t method = (TESTCFISH_TestClass_To_Host_t)cfish_obj_method(self, TESTCFISH_TestClass_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Clone’: autogen/include/Clownfish/Test/TestClass.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestClass_Clone_t method = (TESTCFISH_TestClass_Clone_t)cfish_obj_method(self, TESTCFISH_TestClass_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Equals’: autogen/include/Clownfish/Test/TestClass.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestClass *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestClass_Equals_t method = (TESTCFISH_TestClass_Equals_t)cfish_obj_method(self, TESTCFISH_TestClass_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Compare_To’: autogen/include/Clownfish/Test/TestClass.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestClass *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestClass *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestClass_Compare_To_t method = (TESTCFISH_TestClass_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestClass_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_String’: autogen/include/Clownfish/Test/TestClass.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestClass_To_String_t method = (TESTCFISH_TestClass_To_String_t)cfish_obj_method(self, TESTCFISH_TestClass_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Run’: autogen/include/Clownfish/Test/TestClass.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestClass *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestClass_Run_t method = (TESTCFISH_TestClass_Run_t)cfish_obj_method(self, TESTCFISH_TestClass_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestClass.c:30: autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_Host’: autogen/include/Clownfish/Boolean.h:159:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Boolean *, void *)’ [-Wcast-function-type] 159 | const CFISH_Bool_To_Host_t method = (CFISH_Bool_To_Host_t)cfish_obj_method(self, CFISH_Bool_To_Host_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Clone’: autogen/include/Clownfish/Boolean.h:170:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Boolean * (*)(cfish_Boolean *)’ [-Wcast-function-type] 170 | const CFISH_Bool_Clone_t method = (CFISH_Bool_Clone_t)cfish_obj_method(self, CFISH_Bool_Clone_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Equals’: autogen/include/Clownfish/Boolean.h:181:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *, cfish_Obj *)’ [-Wcast-function-type] 181 | const CFISH_Bool_Equals_t method = (CFISH_Bool_Equals_t)cfish_obj_method(self, CFISH_Bool_Equals_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Compare_To’: autogen/include/Clownfish/Boolean.h:192:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Boolean *, cfish_Obj *)’ {aka ‘int (*)(cfish_Boolean *, cfish_Obj *)’} [-Wcast-function-type] 192 | const CFISH_Bool_Compare_To_t method = (CFISH_Bool_Compare_To_t)cfish_obj_method(self, CFISH_Bool_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_String’: autogen/include/Clownfish/Boolean.h:214:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Boolean *)’ [-Wcast-function-type] 214 | const CFISH_Bool_To_String_t method = (CFISH_Bool_To_String_t)cfish_obj_method(self, CFISH_Bool_To_String_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Get_Value’: autogen/include/Clownfish/Boolean.h:225:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *)’ [-Wcast-function-type] 225 | const CFISH_Bool_Get_Value_t method = (CFISH_Bool_Get_Value_t)cfish_obj_method(self, CFISH_Bool_Get_Value_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestClass.c:31: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestClass.c:32: autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_To_Host’: autogen/include/Clownfish/Method.h:177:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Method *, void *)’ [-Wcast-function-type] 177 | const CFISH_Method_To_Host_t method = (CFISH_Method_To_Host_t)cfish_obj_method(self, CFISH_Method_To_Host_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Clone’: autogen/include/Clownfish/Method.h:188:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Method *)’ [-Wcast-function-type] 188 | const CFISH_Method_Clone_t method = (CFISH_Method_Clone_t)cfish_obj_method(self, CFISH_Method_Clone_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Equals’: autogen/include/Clownfish/Method.h:199:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Method *, cfish_Obj *)’ [-Wcast-function-type] 199 | const CFISH_Method_Equals_t method = (CFISH_Method_Equals_t)cfish_obj_method(self, CFISH_Method_Equals_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Compare_To’: autogen/include/Clownfish/Method.h:210:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Method *, cfish_Obj *)’ {aka ‘int (*)(cfish_Method *, cfish_Obj *)’} [-Wcast-function-type] 210 | const CFISH_Method_Compare_To_t method = (CFISH_Method_Compare_To_t)cfish_obj_method(self, CFISH_Method_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_To_String’: autogen/include/Clownfish/Method.h:232:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 232 | const CFISH_Method_To_String_t method = (CFISH_Method_To_String_t)cfish_obj_method(self, CFISH_Method_To_String_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Get_Name’: autogen/include/Clownfish/Method.h:243:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 243 | const CFISH_Method_Get_Name_t method = (CFISH_Method_Get_Name_t)cfish_obj_method(self, CFISH_Method_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Set_Host_Alias’: autogen/include/Clownfish/Method.h:254:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Method *, cfish_String *)’ [-Wcast-function-type] 254 | const CFISH_Method_Set_Host_Alias_t method = (CFISH_Method_Set_Host_Alias_t)cfish_obj_method(self, CFISH_Method_Set_Host_Alias_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Get_Host_Alias’: autogen/include/Clownfish/Method.h:265:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 265 | const CFISH_Method_Get_Host_Alias_t method = (CFISH_Method_Get_Host_Alias_t)cfish_obj_method(self, CFISH_Method_Get_Host_Alias_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Is_Excluded_From_Host’: autogen/include/Clownfish/Method.h:276:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Method *)’ [-Wcast-function-type] 276 | const CFISH_Method_Is_Excluded_From_Host_t method = (CFISH_Method_Is_Excluded_From_Host_t)cfish_obj_method(self, CFISH_Method_Is_Excluded_From_Host_OFFSET); | ^ autogen/include/Clownfish/Method.h: In function ‘CFISH_Method_Host_Name’: autogen/include/Clownfish/Method.h:287:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Method *)’ [-Wcast-function-type] 287 | const CFISH_Method_Host_Name_t method = (CFISH_Method_Host_Name_t)cfish_obj_method(self, CFISH_Method_Host_Name_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44, from cftest/Clownfish/Test/TestClass.c:33: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestClass.c:34: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestClass.c:36: autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_Host’: autogen/include/Clownfish/Vector.h:245:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Vector *, void *)’ [-Wcast-function-type] 245 | const CFISH_Vec_To_Host_t method = (CFISH_Vec_To_Host_t)cfish_obj_method(self, CFISH_Vec_To_Host_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Clone’: autogen/include/Clownfish/Vector.h:256:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *)’ [-Wcast-function-type] 256 | const CFISH_Vec_Clone_t method = (CFISH_Vec_Clone_t)cfish_obj_method(self, CFISH_Vec_Clone_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Equals’: autogen/include/Clownfish/Vector.h:267:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 267 | const CFISH_Vec_Equals_t method = (CFISH_Vec_Equals_t)cfish_obj_method(self, CFISH_Vec_Equals_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Compare_To’: autogen/include/Clownfish/Vector.h:278:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Vector *, cfish_Obj *)’ {aka ‘int (*)(cfish_Vector *, cfish_Obj *)’} [-Wcast-function-type] 278 | const CFISH_Vec_Compare_To_t method = (CFISH_Vec_Compare_To_t)cfish_obj_method(self, CFISH_Vec_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_String’: autogen/include/Clownfish/Vector.h:300:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Vector *)’ [-Wcast-function-type] 300 | const CFISH_Vec_To_String_t method = (CFISH_Vec_To_String_t)cfish_obj_method(self, CFISH_Vec_To_String_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push’: autogen/include/Clownfish/Vector.h:311:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 311 | const CFISH_Vec_Push_t method = (CFISH_Vec_Push_t)cfish_obj_method(self, CFISH_Vec_Push_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push_All’: autogen/include/Clownfish/Vector.h:322:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Vector *)’ [-Wcast-function-type] 322 | const CFISH_Vec_Push_All_t method = (CFISH_Vec_Push_All_t)cfish_obj_method(self, CFISH_Vec_Push_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Pop’: autogen/include/Clownfish/Vector.h:333:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *)’ [-Wcast-function-type] 333 | const CFISH_Vec_Pop_t method = (CFISH_Vec_Pop_t)cfish_obj_method(self, CFISH_Vec_Pop_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert’: autogen/include/Clownfish/Vector.h:344:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 344 | const CFISH_Vec_Insert_t method = (CFISH_Vec_Insert_t)cfish_obj_method(self, CFISH_Vec_Insert_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert_All’: autogen/include/Clownfish/Vector.h:355:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Vector *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Vector *)’} [-Wcast-function-type] 355 | const CFISH_Vec_Insert_All_t method = (CFISH_Vec_Insert_All_t)cfish_obj_method(self, CFISH_Vec_Insert_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Grow’: autogen/include/Clownfish/Vector.h:366:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 366 | const CFISH_Vec_Grow_t method = (CFISH_Vec_Grow_t)cfish_obj_method(self, CFISH_Vec_Grow_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Fetch’: autogen/include/Clownfish/Vector.h:377:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 377 | const CFISH_Vec_Fetch_t method = (CFISH_Vec_Fetch_t)cfish_obj_method(self, CFISH_Vec_Fetch_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Store’: autogen/include/Clownfish/Vector.h:388:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 388 | const CFISH_Vec_Store_t method = (CFISH_Vec_Store_t)cfish_obj_method(self, CFISH_Vec_Store_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Delete’: autogen/include/Clownfish/Vector.h:399:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 399 | const CFISH_Vec_Delete_t method = (CFISH_Vec_Delete_t)cfish_obj_method(self, CFISH_Vec_Delete_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Excise’: autogen/include/Clownfish/Vector.h:410:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 410 | const CFISH_Vec_Excise_t method = (CFISH_Vec_Excise_t)cfish_obj_method(self, CFISH_Vec_Excise_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Resize’: autogen/include/Clownfish/Vector.h:432:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 432 | const CFISH_Vec_Resize_t method = (CFISH_Vec_Resize_t)cfish_obj_method(self, CFISH_Vec_Resize_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Size’: autogen/include/Clownfish/Vector.h:454:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 454 | const CFISH_Vec_Get_Size_t method = (CFISH_Vec_Get_Size_t)cfish_obj_method(self, CFISH_Vec_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Capacity’: autogen/include/Clownfish/Vector.h:465:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 465 | const CFISH_Vec_Get_Capacity_t method = (CFISH_Vec_Get_Capacity_t)cfish_obj_method(self, CFISH_Vec_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Slice’: autogen/include/Clownfish/Vector.h:476:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *, size_t, size_t)’ {aka ‘cfish_Vector * (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 476 | const CFISH_Vec_Slice_t method = (CFISH_Vec_Slice_t)cfish_obj_method(self, CFISH_Vec_Slice_OFFSET); | ^ cftest/Clownfish/Test/TestClass.c: In function ‘test_simple_subclass’: cftest/Clownfish/Test/TestClass.c:115:30: warning: cast between incompatible function types from ‘cfish_String * (*)(cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 115 | Class_Override(subclass, (cfish_method_t)MyObj_To_String_IMP, | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestCharBuf.c -c -o cftest/Clownfish/Test/TestCharBuf.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestCharBuf.h:40, from cftest/Clownfish/Test/TestCharBuf.c:26: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_Host’: autogen/include/Clownfish/Test/TestCharBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestCharBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestCB_To_Host_t method = (TESTCFISH_TestCB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestCB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Clone’: autogen/include/Clownfish/Test/TestCharBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestCB_Clone_t method = (TESTCFISH_TestCB_Clone_t)cfish_obj_method(self, TESTCFISH_TestCB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Equals’: autogen/include/Clownfish/Test/TestCharBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestCharBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestCB_Equals_t method = (TESTCFISH_TestCB_Equals_t)cfish_obj_method(self, TESTCFISH_TestCB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Compare_To’: autogen/include/Clownfish/Test/TestCharBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestCharBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestCharBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestCB_Compare_To_t method = (TESTCFISH_TestCB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestCB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_String’: autogen/include/Clownfish/Test/TestCharBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestCB_To_String_t method = (TESTCFISH_TestCB_To_String_t)cfish_obj_method(self, TESTCFISH_TestCB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Run’: autogen/include/Clownfish/Test/TestCharBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestCharBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestCB_Run_t method = (TESTCFISH_TestCB_Run_t)cfish_obj_method(self, TESTCFISH_TestCB_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestCharBuf.c:28: autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_To_Host’: autogen/include/Clownfish/CharBuf.h:203:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_CharBuf *, void *)’ [-Wcast-function-type] 203 | const CFISH_CB_To_Host_t method = (CFISH_CB_To_Host_t)cfish_obj_method(self, CFISH_CB_To_Host_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Clone’: autogen/include/Clownfish/CharBuf.h:214:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_CharBuf * (*)(cfish_CharBuf *)’ [-Wcast-function-type] 214 | const CFISH_CB_Clone_t method = (CFISH_CB_Clone_t)cfish_obj_method(self, CFISH_CB_Clone_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Equals’: autogen/include/Clownfish/CharBuf.h:225:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_CharBuf *, cfish_Obj *)’ [-Wcast-function-type] 225 | const CFISH_CB_Equals_t method = (CFISH_CB_Equals_t)cfish_obj_method(self, CFISH_CB_Equals_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Compare_To’: autogen/include/Clownfish/CharBuf.h:236:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_CharBuf *, cfish_Obj *)’ {aka ‘int (*)(cfish_CharBuf *, cfish_Obj *)’} [-Wcast-function-type] 236 | const CFISH_CB_Compare_To_t method = (CFISH_CB_Compare_To_t)cfish_obj_method(self, CFISH_CB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_To_String’: autogen/include/Clownfish/CharBuf.h:258:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_CharBuf *)’ [-Wcast-function-type] 258 | const CFISH_CB_To_String_t method = (CFISH_CB_To_String_t)cfish_obj_method(self, CFISH_CB_To_String_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat_Utf8’: autogen/include/Clownfish/CharBuf.h:269:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, const char *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, const char *, long unsigned int)’} [-Wcast-function-type] 269 | const CFISH_CB_Cat_Utf8_t method = (CFISH_CB_Cat_Utf8_t)cfish_obj_method(self, CFISH_CB_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat_Trusted_Utf8’: autogen/include/Clownfish/CharBuf.h:280:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, const char *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, const char *, long unsigned int)’} [-Wcast-function-type] 280 | const CFISH_CB_Cat_Trusted_Utf8_t method = (CFISH_CB_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_CB_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat’: autogen/include/Clownfish/CharBuf.h:291:35: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, cfish_String *)’ [-Wcast-function-type] 291 | const CFISH_CB_Cat_t method = (CFISH_CB_Cat_t)cfish_obj_method(self, CFISH_CB_Cat_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_VCatF’: autogen/include/Clownfish/CharBuf.h:302:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, const char *, __va_list_tag *)’ [-Wcast-function-type] 302 | const CFISH_CB_VCatF_t method = (CFISH_CB_VCatF_t)cfish_obj_method(self, CFISH_CB_VCatF_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Cat_Char’: autogen/include/Clownfish/CharBuf.h:313:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, int32_t)’ {aka ‘void (*)(cfish_CharBuf *, int)’} [-Wcast-function-type] 313 | const CFISH_CB_Cat_Char_t method = (CFISH_CB_Cat_Char_t)cfish_obj_method(self, CFISH_CB_Cat_Char_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Grow’: autogen/include/Clownfish/CharBuf.h:324:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_CharBuf *, size_t)’ {aka ‘void (*)(cfish_CharBuf *, long unsigned int)’} [-Wcast-function-type] 324 | const CFISH_CB_Grow_t method = (CFISH_CB_Grow_t)cfish_obj_method(self, CFISH_CB_Grow_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Get_Size’: autogen/include/Clownfish/CharBuf.h:346:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_CharBuf *)’ {aka ‘long unsigned int (*)(cfish_CharBuf *)’} [-Wcast-function-type] 346 | const CFISH_CB_Get_Size_t method = (CFISH_CB_Get_Size_t)cfish_obj_method(self, CFISH_CB_Get_Size_OFFSET); | ^ autogen/include/Clownfish/CharBuf.h: In function ‘CFISH_CB_Yield_String’: autogen/include/Clownfish/CharBuf.h:357:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_CharBuf *)’ [-Wcast-function-type] 357 | const CFISH_CB_Yield_String_t method = (CFISH_CB_Yield_String_t)cfish_obj_method(self, CFISH_CB_Yield_String_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestCharBuf.c:29: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestCharBuf.c:30: autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_Host’: autogen/include/Clownfish/Num.h:162:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Float *, void *)’ [-Wcast-function-type] 162 | const CFISH_Float_To_Host_t method = (CFISH_Float_To_Host_t)cfish_obj_method(self, CFISH_Float_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Clone’: autogen/include/Clownfish/Num.h:173:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Float * (*)(cfish_Float *)’ [-Wcast-function-type] 173 | const CFISH_Float_Clone_t method = (CFISH_Float_Clone_t)cfish_obj_method(self, CFISH_Float_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Equals’: autogen/include/Clownfish/Num.h:184:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Float *, cfish_Obj *)’ [-Wcast-function-type] 184 | const CFISH_Float_Equals_t method = (CFISH_Float_Equals_t)cfish_obj_method(self, CFISH_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Compare_To’: autogen/include/Clownfish/Num.h:195:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Float *, cfish_Obj *)’ {aka ‘int (*)(cfish_Float *, cfish_Obj *)’} [-Wcast-function-type] 195 | const CFISH_Float_Compare_To_t method = (CFISH_Float_Compare_To_t)cfish_obj_method(self, CFISH_Float_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_String’: autogen/include/Clownfish/Num.h:217:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Float *)’ [-Wcast-function-type] 217 | const CFISH_Float_To_String_t method = (CFISH_Float_To_String_t)cfish_obj_method(self, CFISH_Float_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Get_Value’: autogen/include/Clownfish/Num.h:228:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Float *)’ [-Wcast-function-type] 228 | const CFISH_Float_Get_Value_t method = (CFISH_Float_Get_Value_t)cfish_obj_method(self, CFISH_Float_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_I64’: autogen/include/Clownfish/Num.h:239:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Float *)’ {aka ‘long int (*)(cfish_Float *)’} [-Wcast-function-type] 239 | const CFISH_Float_To_I64_t method = (CFISH_Float_To_I64_t)cfish_obj_method(self, CFISH_Float_To_I64_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_Host’: autogen/include/Clownfish/Num.h:417:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Integer *, void *)’ [-Wcast-function-type] 417 | const CFISH_Int_To_Host_t method = (CFISH_Int_To_Host_t)cfish_obj_method(self, CFISH_Int_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Clone’: autogen/include/Clownfish/Num.h:428:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Integer * (*)(cfish_Integer *)’ [-Wcast-function-type] 428 | const CFISH_Int_Clone_t method = (CFISH_Int_Clone_t)cfish_obj_method(self, CFISH_Int_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Equals’: autogen/include/Clownfish/Num.h:439:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Integer *, cfish_Obj *)’ [-Wcast-function-type] 439 | const CFISH_Int_Equals_t method = (CFISH_Int_Equals_t)cfish_obj_method(self, CFISH_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Compare_To’: autogen/include/Clownfish/Num.h:450:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Integer *, cfish_Obj *)’ {aka ‘int (*)(cfish_Integer *, cfish_Obj *)’} [-Wcast-function-type] 450 | const CFISH_Int_Compare_To_t method = (CFISH_Int_Compare_To_t)cfish_obj_method(self, CFISH_Int_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_String’: autogen/include/Clownfish/Num.h:472:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Integer *)’ [-Wcast-function-type] 472 | const CFISH_Int_To_String_t method = (CFISH_Int_To_String_t)cfish_obj_method(self, CFISH_Int_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Get_Value’: autogen/include/Clownfish/Num.h:483:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Integer *)’ {aka ‘long int (*)(cfish_Integer *)’} [-Wcast-function-type] 483 | const CFISH_Int_Get_Value_t method = (CFISH_Int_Get_Value_t)cfish_obj_method(self, CFISH_Int_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_F64’: autogen/include/Clownfish/Num.h:494:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Integer *)’ [-Wcast-function-type] 494 | const CFISH_Int_To_F64_t method = (CFISH_Int_To_F64_t)cfish_obj_method(self, CFISH_Int_To_F64_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestCharBuf.c:31: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestCharBuf.c:33: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestByteBuf.c -c -o cftest/Clownfish/Test/TestByteBuf.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestByteBuf.h:40, from cftest/Clownfish/Test/TestByteBuf.c:22: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_Host’: autogen/include/Clownfish/Test/TestByteBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestByteBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBB_To_Host_t method = (TESTCFISH_TestBB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Clone’: autogen/include/Clownfish/Test/TestByteBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBB_Clone_t method = (TESTCFISH_TestBB_Clone_t)cfish_obj_method(self, TESTCFISH_TestBB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Equals’: autogen/include/Clownfish/Test/TestByteBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestByteBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBB_Equals_t method = (TESTCFISH_TestBB_Equals_t)cfish_obj_method(self, TESTCFISH_TestBB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Compare_To’: autogen/include/Clownfish/Test/TestByteBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestByteBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestByteBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBB_Compare_To_t method = (TESTCFISH_TestBB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_String’: autogen/include/Clownfish/Test/TestByteBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBB_To_String_t method = (TESTCFISH_TestBB_To_String_t)cfish_obj_method(self, TESTCFISH_TestBB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Run’: autogen/include/Clownfish/Test/TestByteBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestByteBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBB_Run_t method = (TESTCFISH_TestBB_Run_t)cfish_obj_method(self, TESTCFISH_TestBB_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestByteBuf.c:24: autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_To_Host’: autogen/include/Clownfish/ByteBuf.h:230:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_ByteBuf *, void *)’ [-Wcast-function-type] 230 | const CFISH_BB_To_Host_t method = (CFISH_BB_To_Host_t)cfish_obj_method(self, CFISH_BB_To_Host_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Clone’: autogen/include/Clownfish/ByteBuf.h:241:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 241 | const CFISH_BB_Clone_t method = (CFISH_BB_Clone_t)cfish_obj_method(self, CFISH_BB_Clone_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Equals’: autogen/include/Clownfish/ByteBuf.h:252:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_ByteBuf *, cfish_Obj *)’ [-Wcast-function-type] 252 | const CFISH_BB_Equals_t method = (CFISH_BB_Equals_t)cfish_obj_method(self, CFISH_BB_Equals_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Compare_To’: autogen/include/Clownfish/ByteBuf.h:263:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_ByteBuf *, cfish_Obj *)’ {aka ‘int (*)(cfish_ByteBuf *, cfish_Obj *)’} [-Wcast-function-type] 263 | const CFISH_BB_Compare_To_t method = (CFISH_BB_Compare_To_t)cfish_obj_method(self, CFISH_BB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_To_String’: autogen/include/Clownfish/ByteBuf.h:285:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 285 | const CFISH_BB_To_String_t method = (CFISH_BB_To_String_t)cfish_obj_method(self, CFISH_BB_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Set_Size’: autogen/include/Clownfish/ByteBuf.h:296:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, long unsigned int)’} [-Wcast-function-type] 296 | const CFISH_BB_Set_Size_t method = (CFISH_BB_Set_Size_t)cfish_obj_method(self, CFISH_BB_Set_Size_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Size’: autogen/include/Clownfish/ByteBuf.h:307:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} [-Wcast-function-type] 307 | const CFISH_BB_Get_Size_t method = (CFISH_BB_Get_Size_t)cfish_obj_method(self, CFISH_BB_Get_Size_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Buf’: autogen/include/Clownfish/ByteBuf.h:318:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 318 | const CFISH_BB_Get_Buf_t method = (CFISH_BB_Get_Buf_t)cfish_obj_method(self, CFISH_BB_Get_Buf_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Capacity’: autogen/include/Clownfish/ByteBuf.h:329:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} [-Wcast-function-type] 329 | const CFISH_BB_Get_Capacity_t method = (CFISH_BB_Get_Capacity_t)cfish_obj_method(self, CFISH_BB_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Cat_Bytes’: autogen/include/Clownfish/ByteBuf.h:340:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, const void *, long unsigned int)’} [-Wcast-function-type] 340 | const CFISH_BB_Cat_Bytes_t method = (CFISH_BB_Cat_Bytes_t)cfish_obj_method(self, CFISH_BB_Cat_Bytes_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Cat’: autogen/include/Clownfish/ByteBuf.h:351:35: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, cfish_Blob *)’ [-Wcast-function-type] 351 | const CFISH_BB_Cat_t method = (CFISH_BB_Cat_t)cfish_obj_method(self, CFISH_BB_Cat_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Grow’: autogen/include/Clownfish/ByteBuf.h:362:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_ByteBuf *, size_t)’ {aka ‘char * (*)(cfish_ByteBuf *, long unsigned int)’} [-Wcast-function-type] 362 | const CFISH_BB_Grow_t method = (CFISH_BB_Grow_t)cfish_obj_method(self, CFISH_BB_Grow_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Yield_Blob’: autogen/include/Clownfish/ByteBuf.h:373:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Blob * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 373 | const CFISH_BB_Yield_Blob_t method = (CFISH_BB_Yield_Blob_t)cfish_obj_method(self, CFISH_BB_Yield_Blob_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Utf8_To_String’: autogen/include/Clownfish/ByteBuf.h:384:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 384 | const CFISH_BB_Utf8_To_String_t method = (CFISH_BB_Utf8_To_String_t)cfish_obj_method(self, CFISH_BB_Utf8_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Trusted_Utf8_To_String’: autogen/include/Clownfish/ByteBuf.h:395:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 395 | const CFISH_BB_Trusted_Utf8_To_String_t method = (CFISH_BB_Trusted_Utf8_To_String_t)cfish_obj_method(self, CFISH_BB_Trusted_Utf8_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Equals_Bytes’: autogen/include/Clownfish/ByteBuf.h:406:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_ByteBuf *, const void *, long unsigned int)’} [-Wcast-function-type] 406 | const CFISH_BB_Equals_Bytes_t method = (CFISH_BB_Equals_Bytes_t)cfish_obj_method(self, CFISH_BB_Equals_Bytes_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestByteBuf.c:26: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestByteBuf.c:28: autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_To_Host’: autogen/include/Clownfish/Blob.h:182:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Blob *, void *)’ [-Wcast-function-type] 182 | const CFISH_Blob_To_Host_t method = (CFISH_Blob_To_Host_t)cfish_obj_method(self, CFISH_Blob_To_Host_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Clone’: autogen/include/Clownfish/Blob.h:193:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Blob * (*)(cfish_Blob *)’ [-Wcast-function-type] 193 | const CFISH_Blob_Clone_t method = (CFISH_Blob_Clone_t)cfish_obj_method(self, CFISH_Blob_Clone_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Equals’: autogen/include/Clownfish/Blob.h:204:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Blob *, cfish_Obj *)’ [-Wcast-function-type] 204 | const CFISH_Blob_Equals_t method = (CFISH_Blob_Equals_t)cfish_obj_method(self, CFISH_Blob_Equals_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Compare_To’: autogen/include/Clownfish/Blob.h:215:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Blob *, cfish_Obj *)’ {aka ‘int (*)(cfish_Blob *, cfish_Obj *)’} [-Wcast-function-type] 215 | const CFISH_Blob_Compare_To_t method = (CFISH_Blob_Compare_To_t)cfish_obj_method(self, CFISH_Blob_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_To_String’: autogen/include/Clownfish/Blob.h:237:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Blob *)’ [-Wcast-function-type] 237 | const CFISH_Blob_To_String_t method = (CFISH_Blob_To_String_t)cfish_obj_method(self, CFISH_Blob_To_String_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Get_Size’: autogen/include/Clownfish/Blob.h:248:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Blob *)’ {aka ‘long unsigned int (*)(cfish_Blob *)’} [-Wcast-function-type] 248 | const CFISH_Blob_Get_Size_t method = (CFISH_Blob_Get_Size_t)cfish_obj_method(self, CFISH_Blob_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Get_Buf’: autogen/include/Clownfish/Blob.h:259:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_Blob *)’ [-Wcast-function-type] 259 | const CFISH_Blob_Get_Buf_t method = (CFISH_Blob_Get_Buf_t)cfish_obj_method(self, CFISH_Blob_Get_Buf_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Equals_Bytes’: autogen/include/Clownfish/Blob.h:270:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Blob *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_Blob *, const void *, long unsigned int)’} [-Wcast-function-type] 270 | const CFISH_Blob_Equals_Bytes_t method = (CFISH_Blob_Equals_Bytes_t)cfish_obj_method(self, CFISH_Blob_Equals_Bytes_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestByteBuf.c:29: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestByteBuf.c:30: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestByteBuf.c:31: autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestBoolean.c -c -o cftest/Clownfish/Test/TestBoolean.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestBoolean.h:40, from cftest/Clownfish/Test/TestBoolean.c:20: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_Host’: autogen/include/Clownfish/Test/TestBoolean.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBoolean *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBoolean_To_Host_t method = (TESTCFISH_TestBoolean_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Clone’: autogen/include/Clownfish/Test/TestBoolean.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBoolean_Clone_t method = (TESTCFISH_TestBoolean_Clone_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Equals’: autogen/include/Clownfish/Test/TestBoolean.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBoolean *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBoolean_Equals_t method = (TESTCFISH_TestBoolean_Equals_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Compare_To’: autogen/include/Clownfish/Test/TestBoolean.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBoolean *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBoolean *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBoolean_Compare_To_t method = (TESTCFISH_TestBoolean_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_String’: autogen/include/Clownfish/Test/TestBoolean.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBoolean_To_String_t method = (TESTCFISH_TestBoolean_To_String_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Run’: autogen/include/Clownfish/Test/TestBoolean.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBoolean *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBoolean_Run_t method = (TESTCFISH_TestBoolean_Run_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Run_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from cftest/Clownfish/Test/TestBoolean.c:22: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestBoolean.c:23: autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_Host’: autogen/include/Clownfish/Boolean.h:159:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Boolean *, void *)’ [-Wcast-function-type] 159 | const CFISH_Bool_To_Host_t method = (CFISH_Bool_To_Host_t)cfish_obj_method(self, CFISH_Bool_To_Host_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Clone’: autogen/include/Clownfish/Boolean.h:170:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Boolean * (*)(cfish_Boolean *)’ [-Wcast-function-type] 170 | const CFISH_Bool_Clone_t method = (CFISH_Bool_Clone_t)cfish_obj_method(self, CFISH_Bool_Clone_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Equals’: autogen/include/Clownfish/Boolean.h:181:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *, cfish_Obj *)’ [-Wcast-function-type] 181 | const CFISH_Bool_Equals_t method = (CFISH_Bool_Equals_t)cfish_obj_method(self, CFISH_Bool_Equals_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Compare_To’: autogen/include/Clownfish/Boolean.h:192:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Boolean *, cfish_Obj *)’ {aka ‘int (*)(cfish_Boolean *, cfish_Obj *)’} [-Wcast-function-type] 192 | const CFISH_Bool_Compare_To_t method = (CFISH_Bool_Compare_To_t)cfish_obj_method(self, CFISH_Bool_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_To_String’: autogen/include/Clownfish/Boolean.h:214:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Boolean *)’ [-Wcast-function-type] 214 | const CFISH_Bool_To_String_t method = (CFISH_Bool_To_String_t)cfish_obj_method(self, CFISH_Bool_To_String_OFFSET); | ^ autogen/include/Clownfish/Boolean.h: In function ‘CFISH_Bool_Get_Value’: autogen/include/Clownfish/Boolean.h:225:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Boolean *)’ [-Wcast-function-type] 225 | const CFISH_Bool_Get_Value_t method = (CFISH_Bool_Get_Value_t)cfish_obj_method(self, CFISH_Bool_Get_Value_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestBoolean.c:25: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test/TestBlob.c -c -o cftest/Clownfish/Test/TestBlob.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from autogen/include/Clownfish/Test/TestBlob.h:40, from cftest/Clownfish/Test/TestBlob.c:20: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_Host’: autogen/include/Clownfish/Test/TestBlob.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBlob *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBlob_To_Host_t method = (TESTCFISH_TestBlob_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Clone’: autogen/include/Clownfish/Test/TestBlob.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBlob_Clone_t method = (TESTCFISH_TestBlob_Clone_t)cfish_obj_method(self, TESTCFISH_TestBlob_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Equals’: autogen/include/Clownfish/Test/TestBlob.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBlob *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBlob_Equals_t method = (TESTCFISH_TestBlob_Equals_t)cfish_obj_method(self, TESTCFISH_TestBlob_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Compare_To’: autogen/include/Clownfish/Test/TestBlob.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBlob *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBlob *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBlob_Compare_To_t method = (TESTCFISH_TestBlob_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBlob_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_String’: autogen/include/Clownfish/Test/TestBlob.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBlob_To_String_t method = (TESTCFISH_TestBlob_To_String_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Run’: autogen/include/Clownfish/Test/TestBlob.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBlob *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBlob_Run_t method = (TESTCFISH_TestBlob_Run_t)cfish_obj_method(self, TESTCFISH_TestBlob_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestBlob.c:22: autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_To_Host’: autogen/include/Clownfish/Blob.h:182:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Blob *, void *)’ [-Wcast-function-type] 182 | const CFISH_Blob_To_Host_t method = (CFISH_Blob_To_Host_t)cfish_obj_method(self, CFISH_Blob_To_Host_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Clone’: autogen/include/Clownfish/Blob.h:193:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Blob * (*)(cfish_Blob *)’ [-Wcast-function-type] 193 | const CFISH_Blob_Clone_t method = (CFISH_Blob_Clone_t)cfish_obj_method(self, CFISH_Blob_Clone_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Equals’: autogen/include/Clownfish/Blob.h:204:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Blob *, cfish_Obj *)’ [-Wcast-function-type] 204 | const CFISH_Blob_Equals_t method = (CFISH_Blob_Equals_t)cfish_obj_method(self, CFISH_Blob_Equals_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Compare_To’: autogen/include/Clownfish/Blob.h:215:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Blob *, cfish_Obj *)’ {aka ‘int (*)(cfish_Blob *, cfish_Obj *)’} [-Wcast-function-type] 215 | const CFISH_Blob_Compare_To_t method = (CFISH_Blob_Compare_To_t)cfish_obj_method(self, CFISH_Blob_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_To_String’: autogen/include/Clownfish/Blob.h:237:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Blob *)’ [-Wcast-function-type] 237 | const CFISH_Blob_To_String_t method = (CFISH_Blob_To_String_t)cfish_obj_method(self, CFISH_Blob_To_String_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Get_Size’: autogen/include/Clownfish/Blob.h:248:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Blob *)’ {aka ‘long unsigned int (*)(cfish_Blob *)’} [-Wcast-function-type] 248 | const CFISH_Blob_Get_Size_t method = (CFISH_Blob_Get_Size_t)cfish_obj_method(self, CFISH_Blob_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Get_Buf’: autogen/include/Clownfish/Blob.h:259:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_Blob *)’ [-Wcast-function-type] 259 | const CFISH_Blob_Get_Buf_t method = (CFISH_Blob_Get_Buf_t)cfish_obj_method(self, CFISH_Blob_Get_Buf_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Equals_Bytes’: autogen/include/Clownfish/Blob.h:270:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Blob *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_Blob *, const void *, long unsigned int)’} [-Wcast-function-type] 270 | const CFISH_Blob_Equals_Bytes_t method = (CFISH_Blob_Equals_Bytes_t)cfish_obj_method(self, CFISH_Blob_Equals_Bytes_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestBlob.c:24: autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_Host’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:251:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatchRunner *, void *)’ [-Wcast-function-type] 251 | const CFISH_TestBatchRunner_To_Host_t method = (CFISH_TestBatchRunner_To_Host_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Clone’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:258:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 258 | const CFISH_TestBatchRunner_Clone_t method = (CFISH_TestBatchRunner_Clone_t)cfish_obj_method(self, CFISH_TestBatchRunner_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:265:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_Obj *)’ [-Wcast-function-type] 265 | const CFISH_TestBatchRunner_Equals_t method = (CFISH_TestBatchRunner_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:272:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatchRunner *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatchRunner *, cfish_Obj *)’} [-Wcast-function-type] 272 | const CFISH_TestBatchRunner_Compare_To_t method = (CFISH_TestBatchRunner_Compare_To_t)cfish_obj_method(self, CFISH_TestBatchRunner_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_To_String’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:286:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatchRunner *)’ [-Wcast-function-type] 286 | const CFISH_TestBatchRunner_To_String_t method = (CFISH_TestBatchRunner_To_String_t)cfish_obj_method(self, CFISH_TestBatchRunner_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Run_Batch’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:293:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, cfish_TestBatch *)’ [-Wcast-function-type] 293 | const CFISH_TestBatchRunner_Run_Batch_t method = (CFISH_TestBatchRunner_Run_Batch_t)cfish_obj_method(self, CFISH_TestBatchRunner_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Plan’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:300:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, uint32_t)’ {aka ‘void (*)(cfish_TestBatchRunner *, cfish_TestBatch *, unsigned int)’} [-Wcast-function-type] 300 | const CFISH_TestBatchRunner_Plan_t method = (CFISH_TestBatchRunner_Plan_t)cfish_obj_method(self, CFISH_TestBatchRunner_Plan_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Planned’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:307:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 307 | const CFISH_TestBatchRunner_Get_Num_Planned_t method = (CFISH_TestBatchRunner_Get_Num_Planned_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Planned_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Tests’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:314:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 314 | const CFISH_TestBatchRunner_Get_Num_Tests_t method = (CFISH_TestBatchRunner_Get_Num_Tests_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Tests_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_Get_Num_Failed’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:321:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_TestBatchRunner *)’ {aka ‘unsigned int (*)(cfish_TestBatchRunner *)’} [-Wcast-function-type] 321 | const CFISH_TestBatchRunner_Get_Num_Failed_t method = (CFISH_TestBatchRunner_Get_Num_Failed_t)cfish_obj_method(self, CFISH_TestBatchRunner_Get_Num_Failed_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_True’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:328:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 328 | const CFISH_TestBatchRunner_VTest_True_t method = (CFISH_TestBatchRunner_VTest_True_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_True_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_False’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:335:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, _Bool, const char *, __va_list_tag *)’ [-Wcast-function-type] 335 | const CFISH_TestBatchRunner_VTest_False_t method = (CFISH_TestBatchRunner_VTest_False_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_False_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Int_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:342:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, int64_t, int64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long int, long int, const char *, __va_list_tag *)’} [-Wcast-function-type] 342 | const CFISH_TestBatchRunner_VTest_Int_Equals_t method = (CFISH_TestBatchRunner_VTest_Int_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_UInt_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:349:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, uint64_t, uint64_t, const char *, __va_list_tag *)’ {aka ‘_Bool (*)(cfish_TestBatchRunner *, long unsigned int, long unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 349 | const CFISH_TestBatchRunner_VTest_UInt_Equals_t method = (CFISH_TestBatchRunner_VTest_UInt_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_UInt_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_Float_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:356:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, double, double, const char *, __va_list_tag *)’ [-Wcast-function-type] 356 | const CFISH_TestBatchRunner_VTest_Float_Equals_t method = (CFISH_TestBatchRunner_VTest_Float_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VTest_String_Equals’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:363:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, const char *, const char *, __va_list_tag *)’ [-Wcast-function-type] 363 | const CFISH_TestBatchRunner_VTest_String_Equals_t method = (CFISH_TestBatchRunner_VTest_String_Equals_t)cfish_obj_method(self, CFISH_TestBatchRunner_VTest_String_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VPass’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:370:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 370 | const CFISH_TestBatchRunner_VPass_t method = (CFISH_TestBatchRunner_VPass_t)cfish_obj_method(self, CFISH_TestBatchRunner_VPass_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VFail’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:377:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatchRunner *, const char *, __va_list_tag *)’ [-Wcast-function-type] 377 | const CFISH_TestBatchRunner_VFail_t method = (CFISH_TestBatchRunner_VFail_t)cfish_obj_method(self, CFISH_TestBatchRunner_VFail_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatchRunner.h: In function ‘CFISH_TestBatchRunner_VSkip’: autogen/include/Clownfish/TestHarness/TestBatchRunner.h:384:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatchRunner *, uint32_t, const char *, __va_list_tag *)’ {aka ‘void (*)(cfish_TestBatchRunner *, unsigned int, const char *, __va_list_tag *)’} [-Wcast-function-type] 384 | const CFISH_TestBatchRunner_VSkip_t method = (CFISH_TestBatchRunner_VSkip_t)cfish_obj_method(self, CFISH_TestBatchRunner_VSkip_OFFSET); | ^ In file included from cftest/Clownfish/Test/TestBlob.c:26: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/Clownfish/Test.c -c -o cftest/Clownfish/Test.o In file included from autogen/include/Clownfish/TestHarness/TestBatch.h:40, from cftest/Clownfish/Test.c:22: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:23: autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_Host’: autogen/include/Clownfish/TestHarness/TestSuite.h:153:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestSuite *, void *)’ [-Wcast-function-type] 153 | const CFISH_TestSuite_To_Host_t method = (CFISH_TestSuite_To_Host_t)cfish_obj_method(self, CFISH_TestSuite_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Clone’: autogen/include/Clownfish/TestHarness/TestSuite.h:160:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 160 | const CFISH_TestSuite_Clone_t method = (CFISH_TestSuite_Clone_t)cfish_obj_method(self, CFISH_TestSuite_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Equals’: autogen/include/Clownfish/TestHarness/TestSuite.h:167:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_Obj *)’ [-Wcast-function-type] 167 | const CFISH_TestSuite_Equals_t method = (CFISH_TestSuite_Equals_t)cfish_obj_method(self, CFISH_TestSuite_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Compare_To’: autogen/include/Clownfish/TestHarness/TestSuite.h:174:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestSuite *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestSuite *, cfish_Obj *)’} [-Wcast-function-type] 174 | const CFISH_TestSuite_Compare_To_t method = (CFISH_TestSuite_Compare_To_t)cfish_obj_method(self, CFISH_TestSuite_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_To_String’: autogen/include/Clownfish/TestHarness/TestSuite.h:188:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestSuite *)’ [-Wcast-function-type] 188 | const CFISH_TestSuite_To_String_t method = (CFISH_TestSuite_To_String_t)cfish_obj_method(self, CFISH_TestSuite_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Add_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:195:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestSuite *, cfish_TestBatch *)’ [-Wcast-function-type] 195 | const CFISH_TestSuite_Add_Batch_t method = (CFISH_TestSuite_Add_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Add_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_Batch’: autogen/include/Clownfish/TestHarness/TestSuite.h:202:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_String *, cfish_TestFormatter *)’ [-Wcast-function-type] 202 | const CFISH_TestSuite_Run_Batch_t method = (CFISH_TestSuite_Run_Batch_t)cfish_obj_method(self, CFISH_TestSuite_Run_Batch_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestSuite.h: In function ‘CFISH_TestSuite_Run_All_Batches’: autogen/include/Clownfish/TestHarness/TestSuite.h:209:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestSuite *, cfish_TestFormatter *)’ [-Wcast-function-type] 209 | const CFISH_TestSuite_Run_All_Batches_t method = (CFISH_TestSuite_Run_All_Batches_t)cfish_obj_method(self, CFISH_TestSuite_Run_All_Batches_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:25: autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_Host’: autogen/include/Clownfish/Test/TestBlob.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBlob *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBlob_To_Host_t method = (TESTCFISH_TestBlob_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Clone’: autogen/include/Clownfish/Test/TestBlob.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBlob_Clone_t method = (TESTCFISH_TestBlob_Clone_t)cfish_obj_method(self, TESTCFISH_TestBlob_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Equals’: autogen/include/Clownfish/Test/TestBlob.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBlob *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBlob_Equals_t method = (TESTCFISH_TestBlob_Equals_t)cfish_obj_method(self, TESTCFISH_TestBlob_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Compare_To’: autogen/include/Clownfish/Test/TestBlob.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBlob *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBlob *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBlob_Compare_To_t method = (TESTCFISH_TestBlob_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBlob_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_String’: autogen/include/Clownfish/Test/TestBlob.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBlob_To_String_t method = (TESTCFISH_TestBlob_To_String_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Run’: autogen/include/Clownfish/Test/TestBlob.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBlob *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBlob_Run_t method = (TESTCFISH_TestBlob_Run_t)cfish_obj_method(self, TESTCFISH_TestBlob_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:26: autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_Host’: autogen/include/Clownfish/Test/TestBoolean.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBoolean *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBoolean_To_Host_t method = (TESTCFISH_TestBoolean_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Clone’: autogen/include/Clownfish/Test/TestBoolean.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBoolean_Clone_t method = (TESTCFISH_TestBoolean_Clone_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Equals’: autogen/include/Clownfish/Test/TestBoolean.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBoolean *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBoolean_Equals_t method = (TESTCFISH_TestBoolean_Equals_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Compare_To’: autogen/include/Clownfish/Test/TestBoolean.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBoolean *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBoolean *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBoolean_Compare_To_t method = (TESTCFISH_TestBoolean_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_String’: autogen/include/Clownfish/Test/TestBoolean.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBoolean_To_String_t method = (TESTCFISH_TestBoolean_To_String_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Run’: autogen/include/Clownfish/Test/TestBoolean.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBoolean *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBoolean_Run_t method = (TESTCFISH_TestBoolean_Run_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:27: autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_Host’: autogen/include/Clownfish/Test/TestByteBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestByteBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBB_To_Host_t method = (TESTCFISH_TestBB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Clone’: autogen/include/Clownfish/Test/TestByteBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBB_Clone_t method = (TESTCFISH_TestBB_Clone_t)cfish_obj_method(self, TESTCFISH_TestBB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Equals’: autogen/include/Clownfish/Test/TestByteBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestByteBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBB_Equals_t method = (TESTCFISH_TestBB_Equals_t)cfish_obj_method(self, TESTCFISH_TestBB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Compare_To’: autogen/include/Clownfish/Test/TestByteBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestByteBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestByteBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBB_Compare_To_t method = (TESTCFISH_TestBB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_String’: autogen/include/Clownfish/Test/TestByteBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBB_To_String_t method = (TESTCFISH_TestBB_To_String_t)cfish_obj_method(self, TESTCFISH_TestBB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Run’: autogen/include/Clownfish/Test/TestByteBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestByteBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBB_Run_t method = (TESTCFISH_TestBB_Run_t)cfish_obj_method(self, TESTCFISH_TestBB_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:28: autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_Host’: autogen/include/Clownfish/Test/TestString.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestString *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestStr_To_Host_t method = (TESTCFISH_TestStr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestStr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Clone’: autogen/include/Clownfish/Test/TestString.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestString *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestStr_Clone_t method = (TESTCFISH_TestStr_Clone_t)cfish_obj_method(self, TESTCFISH_TestStr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Equals’: autogen/include/Clownfish/Test/TestString.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestString *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestStr_Equals_t method = (TESTCFISH_TestStr_Equals_t)cfish_obj_method(self, TESTCFISH_TestStr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Compare_To’: autogen/include/Clownfish/Test/TestString.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestString *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestString *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestStr_Compare_To_t method = (TESTCFISH_TestStr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestStr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_String’: autogen/include/Clownfish/Test/TestString.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestString *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestStr_To_String_t method = (TESTCFISH_TestStr_To_String_t)cfish_obj_method(self, TESTCFISH_TestStr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Run’: autogen/include/Clownfish/Test/TestString.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestString *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestStr_Run_t method = (TESTCFISH_TestStr_Run_t)cfish_obj_method(self, TESTCFISH_TestStr_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_Host’: autogen/include/Clownfish/Test/TestString.h:311:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_StringCallbackTest *, void *)’ [-Wcast-function-type] 311 | const TESTCFISH_StrCbTest_To_Host_t method = (TESTCFISH_StrCbTest_To_Host_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Clone’: autogen/include/Clownfish/Test/TestString.h:318:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 318 | const TESTCFISH_StrCbTest_Clone_t method = (TESTCFISH_StrCbTest_Clone_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Equals’: autogen/include/Clownfish/Test/TestString.h:325:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ [-Wcast-function-type] 325 | const TESTCFISH_StrCbTest_Equals_t method = (TESTCFISH_StrCbTest_Equals_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Compare_To’: autogen/include/Clownfish/Test/TestString.h:332:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ {aka ‘int (*)(testcfish_StringCallbackTest *, cfish_Obj *)’} [-Wcast-function-type] 332 | const TESTCFISH_StrCbTest_Compare_To_t method = (TESTCFISH_StrCbTest_Compare_To_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_String’: autogen/include/Clownfish/Test/TestString.h:346:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 346 | const TESTCFISH_StrCbTest_To_String_t method = (TESTCFISH_StrCbTest_To_String_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Unchanged_By_Callback’: autogen/include/Clownfish/Test/TestString.h:353:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_String *)’ [-Wcast-function-type] 353 | const TESTCFISH_StrCbTest_Unchanged_By_Callback_t method = (TESTCFISH_StrCbTest_Unchanged_By_Callback_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Unchanged_By_Callback_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:29: autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_Host’: autogen/include/Clownfish/Test/TestCharBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestCharBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestCB_To_Host_t method = (TESTCFISH_TestCB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestCB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Clone’: autogen/include/Clownfish/Test/TestCharBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestCB_Clone_t method = (TESTCFISH_TestCB_Clone_t)cfish_obj_method(self, TESTCFISH_TestCB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Equals’: autogen/include/Clownfish/Test/TestCharBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestCharBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestCB_Equals_t method = (TESTCFISH_TestCB_Equals_t)cfish_obj_method(self, TESTCFISH_TestCB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Compare_To’: autogen/include/Clownfish/Test/TestCharBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestCharBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestCharBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestCB_Compare_To_t method = (TESTCFISH_TestCB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestCB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_String’: autogen/include/Clownfish/Test/TestCharBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestCB_To_String_t method = (TESTCFISH_TestCB_To_String_t)cfish_obj_method(self, TESTCFISH_TestCB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Run’: autogen/include/Clownfish/Test/TestCharBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestCharBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestCB_Run_t method = (TESTCFISH_TestCB_Run_t)cfish_obj_method(self, TESTCFISH_TestCB_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:30: autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_Host’: autogen/include/Clownfish/Test/TestClass.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestClass *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestClass_To_Host_t method = (TESTCFISH_TestClass_To_Host_t)cfish_obj_method(self, TESTCFISH_TestClass_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Clone’: autogen/include/Clownfish/Test/TestClass.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestClass_Clone_t method = (TESTCFISH_TestClass_Clone_t)cfish_obj_method(self, TESTCFISH_TestClass_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Equals’: autogen/include/Clownfish/Test/TestClass.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestClass *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestClass_Equals_t method = (TESTCFISH_TestClass_Equals_t)cfish_obj_method(self, TESTCFISH_TestClass_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Compare_To’: autogen/include/Clownfish/Test/TestClass.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestClass *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestClass *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestClass_Compare_To_t method = (TESTCFISH_TestClass_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestClass_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_String’: autogen/include/Clownfish/Test/TestClass.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestClass_To_String_t method = (TESTCFISH_TestClass_To_String_t)cfish_obj_method(self, TESTCFISH_TestClass_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Run’: autogen/include/Clownfish/Test/TestClass.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestClass *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestClass_Run_t method = (TESTCFISH_TestClass_Run_t)cfish_obj_method(self, TESTCFISH_TestClass_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:31: autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_Host’: autogen/include/Clownfish/Test/TestErr.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestErr *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestErr_To_Host_t method = (TESTCFISH_TestErr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestErr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Clone’: autogen/include/Clownfish/Test/TestErr.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestErr_Clone_t method = (TESTCFISH_TestErr_Clone_t)cfish_obj_method(self, TESTCFISH_TestErr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Equals’: autogen/include/Clownfish/Test/TestErr.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestErr *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestErr_Equals_t method = (TESTCFISH_TestErr_Equals_t)cfish_obj_method(self, TESTCFISH_TestErr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Compare_To’: autogen/include/Clownfish/Test/TestErr.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestErr *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestErr *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestErr_Compare_To_t method = (TESTCFISH_TestErr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestErr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_String’: autogen/include/Clownfish/Test/TestErr.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestErr_To_String_t method = (TESTCFISH_TestErr_To_String_t)cfish_obj_method(self, TESTCFISH_TestErr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Run’: autogen/include/Clownfish/Test/TestErr.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestErr *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestErr_Run_t method = (TESTCFISH_TestErr_Run_t)cfish_obj_method(self, TESTCFISH_TestErr_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:32: autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_Host’: autogen/include/Clownfish/Test/TestHash.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHash_To_Host_t method = (TESTCFISH_TestHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Clone’: autogen/include/Clownfish/Test/TestHash.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHash_Clone_t method = (TESTCFISH_TestHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Equals’: autogen/include/Clownfish/Test/TestHash.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHash_Equals_t method = (TESTCFISH_TestHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Compare_To’: autogen/include/Clownfish/Test/TestHash.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHash_Compare_To_t method = (TESTCFISH_TestHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_String’: autogen/include/Clownfish/Test/TestHash.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHash_To_String_t method = (TESTCFISH_TestHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Run’: autogen/include/Clownfish/Test/TestHash.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHash_Run_t method = (TESTCFISH_TestHash_Run_t)cfish_obj_method(self, TESTCFISH_TestHash_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:33: autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_Host’: autogen/include/Clownfish/Test/TestHashIterator.h:130:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHashIterator *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHashIterator_To_Host_t method = (TESTCFISH_TestHashIterator_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Clone’: autogen/include/Clownfish/Test/TestHashIterator.h:137:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHashIterator_Clone_t method = (TESTCFISH_TestHashIterator_Clone_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Equals’: autogen/include/Clownfish/Test/TestHashIterator.h:144:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHashIterator *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHashIterator_Equals_t method = (TESTCFISH_TestHashIterator_Equals_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Compare_To’: autogen/include/Clownfish/Test/TestHashIterator.h:151:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHashIterator *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHashIterator *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHashIterator_Compare_To_t method = (TESTCFISH_TestHashIterator_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_String’: autogen/include/Clownfish/Test/TestHashIterator.h:165:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHashIterator_To_String_t method = (TESTCFISH_TestHashIterator_To_String_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Run’: autogen/include/Clownfish/Test/TestHashIterator.h:172:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHashIterator *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHashIterator_Run_t method = (TESTCFISH_TestHashIterator_Run_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:34: autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_Host’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestLockFreeRegistry *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestLFReg_To_Host_t method = (TESTCFISH_TestLFReg_To_Host_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Clone’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestLFReg_Clone_t method = (TESTCFISH_TestLFReg_Clone_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Equals’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestLFReg_Equals_t method = (TESTCFISH_TestLFReg_Equals_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Compare_To’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestLFReg_Compare_To_t method = (TESTCFISH_TestLFReg_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_String’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestLFReg_To_String_t method = (TESTCFISH_TestLFReg_To_String_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Run’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestLockFreeRegistry *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestLFReg_Run_t method = (TESTCFISH_TestLFReg_Run_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:35: autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_Host’: autogen/include/Clownfish/Test/TestMethod.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMethod *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMethod_To_Host_t method = (TESTCFISH_TestMethod_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Clone’: autogen/include/Clownfish/Test/TestMethod.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMethod_Clone_t method = (TESTCFISH_TestMethod_Clone_t)cfish_obj_method(self, TESTCFISH_TestMethod_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Equals’: autogen/include/Clownfish/Test/TestMethod.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMethod *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMethod_Equals_t method = (TESTCFISH_TestMethod_Equals_t)cfish_obj_method(self, TESTCFISH_TestMethod_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Compare_To’: autogen/include/Clownfish/Test/TestMethod.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMethod *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMethod *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMethod_Compare_To_t method = (TESTCFISH_TestMethod_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMethod_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_String’: autogen/include/Clownfish/Test/TestMethod.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMethod_To_String_t method = (TESTCFISH_TestMethod_To_String_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Run’: autogen/include/Clownfish/Test/TestMethod.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMethod *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMethod_Run_t method = (TESTCFISH_TestMethod_Run_t)cfish_obj_method(self, TESTCFISH_TestMethod_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:36: autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_Host’: autogen/include/Clownfish/Test/TestNum.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestNum *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestNum_To_Host_t method = (TESTCFISH_TestNum_To_Host_t)cfish_obj_method(self, TESTCFISH_TestNum_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Clone’: autogen/include/Clownfish/Test/TestNum.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestNum_Clone_t method = (TESTCFISH_TestNum_Clone_t)cfish_obj_method(self, TESTCFISH_TestNum_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Equals’: autogen/include/Clownfish/Test/TestNum.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestNum *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestNum_Equals_t method = (TESTCFISH_TestNum_Equals_t)cfish_obj_method(self, TESTCFISH_TestNum_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Compare_To’: autogen/include/Clownfish/Test/TestNum.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestNum *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestNum *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestNum_Compare_To_t method = (TESTCFISH_TestNum_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestNum_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_String’: autogen/include/Clownfish/Test/TestNum.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestNum_To_String_t method = (TESTCFISH_TestNum_To_String_t)cfish_obj_method(self, TESTCFISH_TestNum_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Run’: autogen/include/Clownfish/Test/TestNum.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestNum *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestNum_Run_t method = (TESTCFISH_TestNum_Run_t)cfish_obj_method(self, TESTCFISH_TestNum_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:37: autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_Host’: autogen/include/Clownfish/Test/TestObj.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestObj *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestObj_To_Host_t method = (TESTCFISH_TestObj_To_Host_t)cfish_obj_method(self, TESTCFISH_TestObj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Clone’: autogen/include/Clownfish/Test/TestObj.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestObj_Clone_t method = (TESTCFISH_TestObj_Clone_t)cfish_obj_method(self, TESTCFISH_TestObj_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Equals’: autogen/include/Clownfish/Test/TestObj.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestObj *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestObj_Equals_t method = (TESTCFISH_TestObj_Equals_t)cfish_obj_method(self, TESTCFISH_TestObj_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Compare_To’: autogen/include/Clownfish/Test/TestObj.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestObj *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestObj *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestObj_Compare_To_t method = (TESTCFISH_TestObj_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestObj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_String’: autogen/include/Clownfish/Test/TestObj.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestObj_To_String_t method = (TESTCFISH_TestObj_To_String_t)cfish_obj_method(self, TESTCFISH_TestObj_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Run’: autogen/include/Clownfish/Test/TestObj.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestObj *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestObj_Run_t method = (TESTCFISH_TestObj_Run_t)cfish_obj_method(self, TESTCFISH_TestObj_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:38: autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_Host’: autogen/include/Clownfish/Test/TestPtrHash.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestPtrHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestPtrHash_To_Host_t method = (TESTCFISH_TestPtrHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Clone’: autogen/include/Clownfish/Test/TestPtrHash.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestPtrHash_Clone_t method = (TESTCFISH_TestPtrHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Equals’: autogen/include/Clownfish/Test/TestPtrHash.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestPtrHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestPtrHash_Equals_t method = (TESTCFISH_TestPtrHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Compare_To’: autogen/include/Clownfish/Test/TestPtrHash.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestPtrHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestPtrHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestPtrHash_Compare_To_t method = (TESTCFISH_TestPtrHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_String’: autogen/include/Clownfish/Test/TestPtrHash.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestPtrHash_To_String_t method = (TESTCFISH_TestPtrHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Run’: autogen/include/Clownfish/Test/TestPtrHash.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestPtrHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestPtrHash_Run_t method = (TESTCFISH_TestPtrHash_Run_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:39: autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_Host’: autogen/include/Clownfish/Test/TestVector.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestVector *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestVector_To_Host_t method = (TESTCFISH_TestVector_To_Host_t)cfish_obj_method(self, TESTCFISH_TestVector_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Clone’: autogen/include/Clownfish/Test/TestVector.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestVector_Clone_t method = (TESTCFISH_TestVector_Clone_t)cfish_obj_method(self, TESTCFISH_TestVector_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Equals’: autogen/include/Clownfish/Test/TestVector.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestVector *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestVector_Equals_t method = (TESTCFISH_TestVector_Equals_t)cfish_obj_method(self, TESTCFISH_TestVector_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Compare_To’: autogen/include/Clownfish/Test/TestVector.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestVector *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestVector *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestVector_Compare_To_t method = (TESTCFISH_TestVector_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestVector_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_String’: autogen/include/Clownfish/Test/TestVector.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestVector_To_String_t method = (TESTCFISH_TestVector_To_String_t)cfish_obj_method(self, TESTCFISH_TestVector_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Run’: autogen/include/Clownfish/Test/TestVector.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestVector *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestVector_Run_t method = (TESTCFISH_TestVector_Run_t)cfish_obj_method(self, TESTCFISH_TestVector_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:40: autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_Host’: autogen/include/Clownfish/Test/Util/TestAtomic.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestAtomic *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestAtomic_To_Host_t method = (TESTCFISH_TestAtomic_To_Host_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Clone’: autogen/include/Clownfish/Test/Util/TestAtomic.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestAtomic_Clone_t method = (TESTCFISH_TestAtomic_Clone_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Equals’: autogen/include/Clownfish/Test/Util/TestAtomic.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestAtomic *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestAtomic_Equals_t method = (TESTCFISH_TestAtomic_Equals_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Compare_To’: autogen/include/Clownfish/Test/Util/TestAtomic.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestAtomic *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestAtomic *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestAtomic_Compare_To_t method = (TESTCFISH_TestAtomic_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_String’: autogen/include/Clownfish/Test/Util/TestAtomic.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestAtomic_To_String_t method = (TESTCFISH_TestAtomic_To_String_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Run’: autogen/include/Clownfish/Test/Util/TestAtomic.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestAtomic *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestAtomic_Run_t method = (TESTCFISH_TestAtomic_Run_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Run_OFFSET); | ^ In file included from cftest/Clownfish/Test.c:41: autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_Host’: autogen/include/Clownfish/Test/Util/TestMemory.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMemory *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMemory_To_Host_t method = (TESTCFISH_TestMemory_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Clone’: autogen/include/Clownfish/Test/Util/TestMemory.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMemory_Clone_t method = (TESTCFISH_TestMemory_Clone_t)cfish_obj_method(self, TESTCFISH_TestMemory_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Equals’: autogen/include/Clownfish/Test/Util/TestMemory.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMemory *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMemory_Equals_t method = (TESTCFISH_TestMemory_Equals_t)cfish_obj_method(self, TESTCFISH_TestMemory_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Compare_To’: autogen/include/Clownfish/Test/Util/TestMemory.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMemory *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMemory *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMemory_Compare_To_t method = (TESTCFISH_TestMemory_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMemory_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_String’: autogen/include/Clownfish/Test/Util/TestMemory.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMemory_To_String_t method = (TESTCFISH_TestMemory_To_String_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Run’: autogen/include/Clownfish/Test/Util/TestMemory.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMemory *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMemory_Run_t method = (TESTCFISH_TestMemory_Run_t)cfish_obj_method(self, TESTCFISH_TestMemory_Run_OFFSET); | ^ gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH cftest/TestClownfish.c -c -o cftest/TestClownfish.o gcc -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC -std=gnu99 -D_GNU_SOURCE -fvisibility=hidden -O2 -g -fno-strict-aliasing -I . -I cfcore -I autogen/include -D_REENTRANT -D_GNU_SOURCE -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -fPIC -D CFP_TESTCFISH autogen/source/testcfish_parcel.c -c -o autogen/source/testcfish_parcel.o In file included from autogen/include/Clownfish/Class.h:40, from autogen/source/testcfish_parcel.c:51: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:52: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ In file included from autogen/include/Clownfish/Test/Util/TestMemory.h:40, from autogen/source/testcfish_parcel.c:53: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_Host’: autogen/include/Clownfish/Test/Util/TestMemory.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMemory *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMemory_To_Host_t method = (TESTCFISH_TestMemory_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Clone’: autogen/include/Clownfish/Test/Util/TestMemory.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMemory_Clone_t method = (TESTCFISH_TestMemory_Clone_t)cfish_obj_method(self, TESTCFISH_TestMemory_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Equals’: autogen/include/Clownfish/Test/Util/TestMemory.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMemory *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMemory_Equals_t method = (TESTCFISH_TestMemory_Equals_t)cfish_obj_method(self, TESTCFISH_TestMemory_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Compare_To’: autogen/include/Clownfish/Test/Util/TestMemory.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMemory *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMemory *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMemory_Compare_To_t method = (TESTCFISH_TestMemory_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMemory_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_String’: autogen/include/Clownfish/Test/Util/TestMemory.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMemory_To_String_t method = (TESTCFISH_TestMemory_To_String_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Run’: autogen/include/Clownfish/Test/Util/TestMemory.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMemory *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMemory_Run_t method = (TESTCFISH_TestMemory_Run_t)cfish_obj_method(self, TESTCFISH_TestMemory_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:54: autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_Host’: autogen/include/Clownfish/Test/Util/TestAtomic.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestAtomic *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestAtomic_To_Host_t method = (TESTCFISH_TestAtomic_To_Host_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Clone’: autogen/include/Clownfish/Test/Util/TestAtomic.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestAtomic_Clone_t method = (TESTCFISH_TestAtomic_Clone_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Equals’: autogen/include/Clownfish/Test/Util/TestAtomic.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestAtomic *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestAtomic_Equals_t method = (TESTCFISH_TestAtomic_Equals_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Compare_To’: autogen/include/Clownfish/Test/Util/TestAtomic.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestAtomic *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestAtomic *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestAtomic_Compare_To_t method = (TESTCFISH_TestAtomic_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_String’: autogen/include/Clownfish/Test/Util/TestAtomic.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestAtomic_To_String_t method = (TESTCFISH_TestAtomic_To_String_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Run’: autogen/include/Clownfish/Test/Util/TestAtomic.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestAtomic *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestAtomic_Run_t method = (TESTCFISH_TestAtomic_Run_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:55: autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_Host’: autogen/include/Clownfish/Test/TestVector.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestVector *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestVector_To_Host_t method = (TESTCFISH_TestVector_To_Host_t)cfish_obj_method(self, TESTCFISH_TestVector_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Clone’: autogen/include/Clownfish/Test/TestVector.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestVector_Clone_t method = (TESTCFISH_TestVector_Clone_t)cfish_obj_method(self, TESTCFISH_TestVector_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Equals’: autogen/include/Clownfish/Test/TestVector.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestVector *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestVector_Equals_t method = (TESTCFISH_TestVector_Equals_t)cfish_obj_method(self, TESTCFISH_TestVector_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Compare_To’: autogen/include/Clownfish/Test/TestVector.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestVector *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestVector *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestVector_Compare_To_t method = (TESTCFISH_TestVector_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestVector_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_String’: autogen/include/Clownfish/Test/TestVector.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestVector_To_String_t method = (TESTCFISH_TestVector_To_String_t)cfish_obj_method(self, TESTCFISH_TestVector_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Run’: autogen/include/Clownfish/Test/TestVector.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestVector *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestVector_Run_t method = (TESTCFISH_TestVector_Run_t)cfish_obj_method(self, TESTCFISH_TestVector_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:56: autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_Host’: autogen/include/Clownfish/Test/TestString.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestString *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestStr_To_Host_t method = (TESTCFISH_TestStr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestStr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Clone’: autogen/include/Clownfish/Test/TestString.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestString *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestStr_Clone_t method = (TESTCFISH_TestStr_Clone_t)cfish_obj_method(self, TESTCFISH_TestStr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Equals’: autogen/include/Clownfish/Test/TestString.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestString *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestStr_Equals_t method = (TESTCFISH_TestStr_Equals_t)cfish_obj_method(self, TESTCFISH_TestStr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Compare_To’: autogen/include/Clownfish/Test/TestString.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestString *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestString *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestStr_Compare_To_t method = (TESTCFISH_TestStr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestStr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_String’: autogen/include/Clownfish/Test/TestString.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestString *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestStr_To_String_t method = (TESTCFISH_TestStr_To_String_t)cfish_obj_method(self, TESTCFISH_TestStr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Run’: autogen/include/Clownfish/Test/TestString.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestString *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestStr_Run_t method = (TESTCFISH_TestStr_Run_t)cfish_obj_method(self, TESTCFISH_TestStr_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_Host’: autogen/include/Clownfish/Test/TestString.h:311:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_StringCallbackTest *, void *)’ [-Wcast-function-type] 311 | const TESTCFISH_StrCbTest_To_Host_t method = (TESTCFISH_StrCbTest_To_Host_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Clone’: autogen/include/Clownfish/Test/TestString.h:318:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 318 | const TESTCFISH_StrCbTest_Clone_t method = (TESTCFISH_StrCbTest_Clone_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Equals’: autogen/include/Clownfish/Test/TestString.h:325:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ [-Wcast-function-type] 325 | const TESTCFISH_StrCbTest_Equals_t method = (TESTCFISH_StrCbTest_Equals_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Compare_To’: autogen/include/Clownfish/Test/TestString.h:332:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ {aka ‘int (*)(testcfish_StringCallbackTest *, cfish_Obj *)’} [-Wcast-function-type] 332 | const TESTCFISH_StrCbTest_Compare_To_t method = (TESTCFISH_StrCbTest_Compare_To_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_String’: autogen/include/Clownfish/Test/TestString.h:346:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 346 | const TESTCFISH_StrCbTest_To_String_t method = (TESTCFISH_StrCbTest_To_String_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Unchanged_By_Callback’: autogen/include/Clownfish/Test/TestString.h:353:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_String *)’ [-Wcast-function-type] 353 | const TESTCFISH_StrCbTest_Unchanged_By_Callback_t method = (TESTCFISH_StrCbTest_Unchanged_By_Callback_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Unchanged_By_Callback_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:57: autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_Host’: autogen/include/Clownfish/Test/TestPtrHash.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestPtrHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestPtrHash_To_Host_t method = (TESTCFISH_TestPtrHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Clone’: autogen/include/Clownfish/Test/TestPtrHash.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestPtrHash_Clone_t method = (TESTCFISH_TestPtrHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Equals’: autogen/include/Clownfish/Test/TestPtrHash.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestPtrHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestPtrHash_Equals_t method = (TESTCFISH_TestPtrHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Compare_To’: autogen/include/Clownfish/Test/TestPtrHash.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestPtrHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestPtrHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestPtrHash_Compare_To_t method = (TESTCFISH_TestPtrHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_String’: autogen/include/Clownfish/Test/TestPtrHash.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestPtrHash_To_String_t method = (TESTCFISH_TestPtrHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Run’: autogen/include/Clownfish/Test/TestPtrHash.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestPtrHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestPtrHash_Run_t method = (TESTCFISH_TestPtrHash_Run_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:58: autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_Host’: autogen/include/Clownfish/Test/TestObj.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestObj *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestObj_To_Host_t method = (TESTCFISH_TestObj_To_Host_t)cfish_obj_method(self, TESTCFISH_TestObj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Clone’: autogen/include/Clownfish/Test/TestObj.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestObj_Clone_t method = (TESTCFISH_TestObj_Clone_t)cfish_obj_method(self, TESTCFISH_TestObj_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Equals’: autogen/include/Clownfish/Test/TestObj.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestObj *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestObj_Equals_t method = (TESTCFISH_TestObj_Equals_t)cfish_obj_method(self, TESTCFISH_TestObj_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Compare_To’: autogen/include/Clownfish/Test/TestObj.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestObj *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestObj *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestObj_Compare_To_t method = (TESTCFISH_TestObj_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestObj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_String’: autogen/include/Clownfish/Test/TestObj.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestObj_To_String_t method = (TESTCFISH_TestObj_To_String_t)cfish_obj_method(self, TESTCFISH_TestObj_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Run’: autogen/include/Clownfish/Test/TestObj.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestObj *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestObj_Run_t method = (TESTCFISH_TestObj_Run_t)cfish_obj_method(self, TESTCFISH_TestObj_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:59: autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_Host’: autogen/include/Clownfish/Test/TestNum.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestNum *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestNum_To_Host_t method = (TESTCFISH_TestNum_To_Host_t)cfish_obj_method(self, TESTCFISH_TestNum_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Clone’: autogen/include/Clownfish/Test/TestNum.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestNum_Clone_t method = (TESTCFISH_TestNum_Clone_t)cfish_obj_method(self, TESTCFISH_TestNum_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Equals’: autogen/include/Clownfish/Test/TestNum.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestNum *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestNum_Equals_t method = (TESTCFISH_TestNum_Equals_t)cfish_obj_method(self, TESTCFISH_TestNum_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Compare_To’: autogen/include/Clownfish/Test/TestNum.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestNum *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestNum *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestNum_Compare_To_t method = (TESTCFISH_TestNum_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestNum_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_String’: autogen/include/Clownfish/Test/TestNum.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestNum_To_String_t method = (TESTCFISH_TestNum_To_String_t)cfish_obj_method(self, TESTCFISH_TestNum_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Run’: autogen/include/Clownfish/Test/TestNum.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestNum *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestNum_Run_t method = (TESTCFISH_TestNum_Run_t)cfish_obj_method(self, TESTCFISH_TestNum_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:60: autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_Host’: autogen/include/Clownfish/Test/TestMethod.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMethod *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMethod_To_Host_t method = (TESTCFISH_TestMethod_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Clone’: autogen/include/Clownfish/Test/TestMethod.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMethod_Clone_t method = (TESTCFISH_TestMethod_Clone_t)cfish_obj_method(self, TESTCFISH_TestMethod_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Equals’: autogen/include/Clownfish/Test/TestMethod.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMethod *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMethod_Equals_t method = (TESTCFISH_TestMethod_Equals_t)cfish_obj_method(self, TESTCFISH_TestMethod_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Compare_To’: autogen/include/Clownfish/Test/TestMethod.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMethod *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMethod *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMethod_Compare_To_t method = (TESTCFISH_TestMethod_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMethod_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_String’: autogen/include/Clownfish/Test/TestMethod.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMethod_To_String_t method = (TESTCFISH_TestMethod_To_String_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Run’: autogen/include/Clownfish/Test/TestMethod.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMethod *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMethod_Run_t method = (TESTCFISH_TestMethod_Run_t)cfish_obj_method(self, TESTCFISH_TestMethod_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:61: autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_Host’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestLockFreeRegistry *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestLFReg_To_Host_t method = (TESTCFISH_TestLFReg_To_Host_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Clone’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestLFReg_Clone_t method = (TESTCFISH_TestLFReg_Clone_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Equals’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestLFReg_Equals_t method = (TESTCFISH_TestLFReg_Equals_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Compare_To’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestLFReg_Compare_To_t method = (TESTCFISH_TestLFReg_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_String’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestLFReg_To_String_t method = (TESTCFISH_TestLFReg_To_String_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Run’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestLockFreeRegistry *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestLFReg_Run_t method = (TESTCFISH_TestLFReg_Run_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:62: autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_Host’: autogen/include/Clownfish/Test/TestHashIterator.h:130:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHashIterator *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHashIterator_To_Host_t method = (TESTCFISH_TestHashIterator_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Clone’: autogen/include/Clownfish/Test/TestHashIterator.h:137:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHashIterator_Clone_t method = (TESTCFISH_TestHashIterator_Clone_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Equals’: autogen/include/Clownfish/Test/TestHashIterator.h:144:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHashIterator *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHashIterator_Equals_t method = (TESTCFISH_TestHashIterator_Equals_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Compare_To’: autogen/include/Clownfish/Test/TestHashIterator.h:151:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHashIterator *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHashIterator *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHashIterator_Compare_To_t method = (TESTCFISH_TestHashIterator_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_String’: autogen/include/Clownfish/Test/TestHashIterator.h:165:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHashIterator_To_String_t method = (TESTCFISH_TestHashIterator_To_String_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Run’: autogen/include/Clownfish/Test/TestHashIterator.h:172:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHashIterator *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHashIterator_Run_t method = (TESTCFISH_TestHashIterator_Run_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:63: autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_Host’: autogen/include/Clownfish/Test/TestHash.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHash_To_Host_t method = (TESTCFISH_TestHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Clone’: autogen/include/Clownfish/Test/TestHash.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHash_Clone_t method = (TESTCFISH_TestHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Equals’: autogen/include/Clownfish/Test/TestHash.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHash_Equals_t method = (TESTCFISH_TestHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Compare_To’: autogen/include/Clownfish/Test/TestHash.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHash_Compare_To_t method = (TESTCFISH_TestHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_String’: autogen/include/Clownfish/Test/TestHash.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHash_To_String_t method = (TESTCFISH_TestHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Run’: autogen/include/Clownfish/Test/TestHash.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHash_Run_t method = (TESTCFISH_TestHash_Run_t)cfish_obj_method(self, TESTCFISH_TestHash_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:64: autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_Host’: autogen/include/Clownfish/Test/TestErr.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestErr *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestErr_To_Host_t method = (TESTCFISH_TestErr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestErr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Clone’: autogen/include/Clownfish/Test/TestErr.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestErr_Clone_t method = (TESTCFISH_TestErr_Clone_t)cfish_obj_method(self, TESTCFISH_TestErr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Equals’: autogen/include/Clownfish/Test/TestErr.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestErr *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestErr_Equals_t method = (TESTCFISH_TestErr_Equals_t)cfish_obj_method(self, TESTCFISH_TestErr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Compare_To’: autogen/include/Clownfish/Test/TestErr.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestErr *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestErr *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestErr_Compare_To_t method = (TESTCFISH_TestErr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestErr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_String’: autogen/include/Clownfish/Test/TestErr.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestErr_To_String_t method = (TESTCFISH_TestErr_To_String_t)cfish_obj_method(self, TESTCFISH_TestErr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Run’: autogen/include/Clownfish/Test/TestErr.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestErr *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestErr_Run_t method = (TESTCFISH_TestErr_Run_t)cfish_obj_method(self, TESTCFISH_TestErr_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:65: autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_Host’: autogen/include/Clownfish/Test/TestClass.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestClass *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestClass_To_Host_t method = (TESTCFISH_TestClass_To_Host_t)cfish_obj_method(self, TESTCFISH_TestClass_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Clone’: autogen/include/Clownfish/Test/TestClass.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestClass_Clone_t method = (TESTCFISH_TestClass_Clone_t)cfish_obj_method(self, TESTCFISH_TestClass_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Equals’: autogen/include/Clownfish/Test/TestClass.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestClass *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestClass_Equals_t method = (TESTCFISH_TestClass_Equals_t)cfish_obj_method(self, TESTCFISH_TestClass_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Compare_To’: autogen/include/Clownfish/Test/TestClass.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestClass *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestClass *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestClass_Compare_To_t method = (TESTCFISH_TestClass_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestClass_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_String’: autogen/include/Clownfish/Test/TestClass.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestClass_To_String_t method = (TESTCFISH_TestClass_To_String_t)cfish_obj_method(self, TESTCFISH_TestClass_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Run’: autogen/include/Clownfish/Test/TestClass.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestClass *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestClass_Run_t method = (TESTCFISH_TestClass_Run_t)cfish_obj_method(self, TESTCFISH_TestClass_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:66: autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_Host’: autogen/include/Clownfish/Test/TestCharBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestCharBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestCB_To_Host_t method = (TESTCFISH_TestCB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestCB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Clone’: autogen/include/Clownfish/Test/TestCharBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestCB_Clone_t method = (TESTCFISH_TestCB_Clone_t)cfish_obj_method(self, TESTCFISH_TestCB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Equals’: autogen/include/Clownfish/Test/TestCharBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestCharBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestCB_Equals_t method = (TESTCFISH_TestCB_Equals_t)cfish_obj_method(self, TESTCFISH_TestCB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Compare_To’: autogen/include/Clownfish/Test/TestCharBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestCharBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestCharBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestCB_Compare_To_t method = (TESTCFISH_TestCB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestCB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_String’: autogen/include/Clownfish/Test/TestCharBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestCB_To_String_t method = (TESTCFISH_TestCB_To_String_t)cfish_obj_method(self, TESTCFISH_TestCB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Run’: autogen/include/Clownfish/Test/TestCharBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestCharBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestCB_Run_t method = (TESTCFISH_TestCB_Run_t)cfish_obj_method(self, TESTCFISH_TestCB_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:67: autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_Host’: autogen/include/Clownfish/Test/TestByteBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestByteBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBB_To_Host_t method = (TESTCFISH_TestBB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Clone’: autogen/include/Clownfish/Test/TestByteBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBB_Clone_t method = (TESTCFISH_TestBB_Clone_t)cfish_obj_method(self, TESTCFISH_TestBB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Equals’: autogen/include/Clownfish/Test/TestByteBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestByteBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBB_Equals_t method = (TESTCFISH_TestBB_Equals_t)cfish_obj_method(self, TESTCFISH_TestBB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Compare_To’: autogen/include/Clownfish/Test/TestByteBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestByteBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestByteBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBB_Compare_To_t method = (TESTCFISH_TestBB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_String’: autogen/include/Clownfish/Test/TestByteBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBB_To_String_t method = (TESTCFISH_TestBB_To_String_t)cfish_obj_method(self, TESTCFISH_TestBB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Run’: autogen/include/Clownfish/Test/TestByteBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestByteBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBB_Run_t method = (TESTCFISH_TestBB_Run_t)cfish_obj_method(self, TESTCFISH_TestBB_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:68: autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_Host’: autogen/include/Clownfish/Test/TestBoolean.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBoolean *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBoolean_To_Host_t method = (TESTCFISH_TestBoolean_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Clone’: autogen/include/Clownfish/Test/TestBoolean.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBoolean_Clone_t method = (TESTCFISH_TestBoolean_Clone_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Equals’: autogen/include/Clownfish/Test/TestBoolean.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBoolean *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBoolean_Equals_t method = (TESTCFISH_TestBoolean_Equals_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Compare_To’: autogen/include/Clownfish/Test/TestBoolean.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBoolean *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBoolean *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBoolean_Compare_To_t method = (TESTCFISH_TestBoolean_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_String’: autogen/include/Clownfish/Test/TestBoolean.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBoolean_To_String_t method = (TESTCFISH_TestBoolean_To_String_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Run’: autogen/include/Clownfish/Test/TestBoolean.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBoolean *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBoolean_Run_t method = (TESTCFISH_TestBoolean_Run_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:69: autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_Host’: autogen/include/Clownfish/Test/TestBlob.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBlob *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBlob_To_Host_t method = (TESTCFISH_TestBlob_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Clone’: autogen/include/Clownfish/Test/TestBlob.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBlob_Clone_t method = (TESTCFISH_TestBlob_Clone_t)cfish_obj_method(self, TESTCFISH_TestBlob_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Equals’: autogen/include/Clownfish/Test/TestBlob.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBlob *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBlob_Equals_t method = (TESTCFISH_TestBlob_Equals_t)cfish_obj_method(self, TESTCFISH_TestBlob_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Compare_To’: autogen/include/Clownfish/Test/TestBlob.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBlob *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBlob *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBlob_Compare_To_t method = (TESTCFISH_TestBlob_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBlob_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_String’: autogen/include/Clownfish/Test/TestBlob.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBlob_To_String_t method = (TESTCFISH_TestBlob_To_String_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Run’: autogen/include/Clownfish/Test/TestBlob.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBlob *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBlob_Run_t method = (TESTCFISH_TestBlob_Run_t)cfish_obj_method(self, TESTCFISH_TestBlob_Run_OFFSET); | ^ In file included from autogen/source/testcfish_parcel.c:71: autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_To_Host’: autogen/include/Clownfish/Test/TestHost.h:220:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHost *, void *)’ [-Wcast-function-type] 220 | const TESTCFISH_TestHost_To_Host_t method = (TESTCFISH_TestHost_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHost_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Clone’: autogen/include/Clownfish/Test/TestHost.h:227:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 227 | const TESTCFISH_TestHost_Clone_t method = (TESTCFISH_TestHost_Clone_t)cfish_obj_method(self, TESTCFISH_TestHost_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Equals’: autogen/include/Clownfish/Test/TestHost.h:234:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 234 | const TESTCFISH_TestHost_Equals_t method = (TESTCFISH_TestHost_Equals_t)cfish_obj_method(self, TESTCFISH_TestHost_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Compare_To’: autogen/include/Clownfish/Test/TestHost.h:241:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHost *, cfish_Obj *)’} [-Wcast-function-type] 241 | const TESTCFISH_TestHost_Compare_To_t method = (TESTCFISH_TestHost_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHost_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_To_String’: autogen/include/Clownfish/Test/TestHost.h:255:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 255 | const TESTCFISH_TestHost_To_String_t method = (TESTCFISH_TestHost_To_String_t)cfish_obj_method(self, TESTCFISH_TestHost_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:262:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 262 | const TESTCFISH_TestHost_Test_Obj_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Obj_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:269:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 269 | const TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:276:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ [-Wcast-function-type] 276 | const TESTCFISH_TestHost_Test_Obj_Label_Arg_t method = (TESTCFISH_TestHost_Test_Obj_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:283:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ [-Wcast-function-type] 283 | const TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:290:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} [-Wcast-function-type] 290 | const TESTCFISH_TestHost_Test_Int32_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Int32_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:297:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} [-Wcast-function-type] 297 | const TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:304:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} [-Wcast-function-type] 304 | const TESTCFISH_TestHost_Test_Int32_Label_Arg_t method = (TESTCFISH_TestHost_Test_Int32_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:311:66: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} [-Wcast-function-type] 311 | const TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:318:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool)’ [-Wcast-function-type] 318 | const TESTCFISH_TestHost_Test_Bool_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Bool_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:325:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool)’ [-Wcast-function-type] 325 | const TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:332:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ [-Wcast-function-type] 332 | const TESTCFISH_TestHost_Test_Bool_Label_Arg_t method = (TESTCFISH_TestHost_Test_Bool_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:339:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ [-Wcast-function-type] 339 | const TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Invalid_Callback’: autogen/include/Clownfish/Test/TestHost.h:346:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 346 | const TESTCFISH_TestHost_Invalid_Callback_t method = (TESTCFISH_TestHost_Invalid_Callback_t)cfish_obj_method(self, TESTCFISH_TestHost_Invalid_Callback_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Aliased’: autogen/include/Clownfish/Test/TestHost.h:360:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 360 | const TESTCFISH_TestHost_Aliased_t method = (TESTCFISH_TestHost_Aliased_t)cfish_obj_method(self, TESTCFISH_TestHost_Aliased_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Invoke_Aliased_From_C’: autogen/include/Clownfish/Test/TestHost.h:367:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 367 | const TESTCFISH_TestHost_Invoke_Aliased_From_C_t method = (TESTCFISH_TestHost_Invoke_Aliased_From_C_t)cfish_obj_method(self, TESTCFISH_TestHost_Invoke_Aliased_From_C_OFFSET); | ^ autogen/source/testcfish_parcel.c: At top level: autogen/source/testcfish_parcel.c:682:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 682 | (cfish_method_t)TESTCFISH_StrCbTest_Unchanged_By_Callback_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:683:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_String *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 683 | (cfish_method_t)TestCfish_StrCbTest_Unchanged_By_Callback_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:694:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 694 | (cfish_method_t)TESTCFISH_TestHost_Test_Obj_Pos_Arg_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:695:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 695 | (cfish_method_t)TestCfish_TestHost_Test_Obj_Pos_Arg_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:700:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 700 | (cfish_method_t)TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:701:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 701 | (cfish_method_t)TestCfish_TestHost_Test_Obj_Pos_Arg_Def_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:706:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 706 | (cfish_method_t)TESTCFISH_TestHost_Test_Obj_Label_Arg_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:707:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 707 | (cfish_method_t)TestCfish_TestHost_Test_Obj_Label_Arg_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:712:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 712 | (cfish_method_t)TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:713:9: warning: cast between incompatible function types from ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 713 | (cfish_method_t)TestCfish_TestHost_Test_Obj_Label_Arg_Def_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:718:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 718 | (cfish_method_t)TESTCFISH_TestHost_Test_Int32_Pos_Arg_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:719:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 719 | (cfish_method_t)TestCfish_TestHost_Test_Int32_Pos_Arg_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:724:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 724 | (cfish_method_t)TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:725:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 725 | (cfish_method_t)TestCfish_TestHost_Test_Int32_Pos_Arg_Def_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:730:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 730 | (cfish_method_t)TESTCFISH_TestHost_Test_Int32_Label_Arg_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:731:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 731 | (cfish_method_t)TestCfish_TestHost_Test_Int32_Label_Arg_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:736:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 736 | (cfish_method_t)TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:737:9: warning: cast between incompatible function types from ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} to ‘void (*)(const void *)’ [-Wcast-function-type] 737 | (cfish_method_t)TestCfish_TestHost_Test_Int32_Label_Arg_Def_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:742:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 742 | (cfish_method_t)TESTCFISH_TestHost_Test_Bool_Pos_Arg_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:743:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 743 | (cfish_method_t)TestCfish_TestHost_Test_Bool_Pos_Arg_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:748:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 748 | (cfish_method_t)TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:749:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 749 | (cfish_method_t)TestCfish_TestHost_Test_Bool_Pos_Arg_Def_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:754:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 754 | (cfish_method_t)TESTCFISH_TestHost_Test_Bool_Label_Arg_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:755:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 755 | (cfish_method_t)TestCfish_TestHost_Test_Bool_Label_Arg_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:760:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 760 | (cfish_method_t)TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:761:9: warning: cast between incompatible function types from ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 761 | (cfish_method_t)TestCfish_TestHost_Test_Bool_Label_Arg_Def_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:766:9: warning: cast between incompatible function types from ‘void * (*)(testcfish_TestHost *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 766 | (cfish_method_t)TESTCFISH_TestHost_Invalid_Callback_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:767:9: warning: cast between incompatible function types from ‘void * (*)(testcfish_TestHost *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 767 | (cfish_method_t)TestCfish_TestHost_Invalid_Callback_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:778:9: warning: cast between incompatible function types from ‘cfish_String * (*)(testcfish_TestHost *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 778 | (cfish_method_t)TESTCFISH_TestHost_Aliased_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:779:9: warning: cast between incompatible function types from ‘cfish_String * (*)(testcfish_TestHost *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 779 | (cfish_method_t)TestCfish_TestHost_Aliased_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:784:9: warning: cast between incompatible function types from ‘cfish_String * (*)(testcfish_TestHost *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 784 | (cfish_method_t)TESTCFISH_TestHost_Invoke_Aliased_From_C_IMP, /* func */ | ^ autogen/source/testcfish_parcel.c:785:9: warning: cast between incompatible function types from ‘cfish_String * (*)(testcfish_TestHost *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 785 | (cfish_method_t)TestCfish_TestHost_Invoke_Aliased_From_C_OVERRIDE /* callback_func */ | ^ autogen/source/testcfish_parcel.c:793:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestMemory *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 793 | (cfish_method_t)TESTCFISH_TestMemory_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:798:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestAtomic *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 798 | (cfish_method_t)TESTCFISH_TestAtomic_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:803:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestVector *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 803 | (cfish_method_t)TESTCFISH_TestVector_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:808:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestString *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 808 | (cfish_method_t)TESTCFISH_TestStr_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:813:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestPtrHash *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 813 | (cfish_method_t)TESTCFISH_TestPtrHash_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:818:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestObj *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 818 | (cfish_method_t)TESTCFISH_TestObj_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:823:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestNum *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 823 | (cfish_method_t)TESTCFISH_TestNum_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:828:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestMethod *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 828 | (cfish_method_t)TESTCFISH_TestMethod_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:833:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestLockFreeRegistry *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 833 | (cfish_method_t)TESTCFISH_TestLFReg_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:838:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestHashIterator *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 838 | (cfish_method_t)TESTCFISH_TestHashIterator_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:843:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestHash *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 843 | (cfish_method_t)TESTCFISH_TestHash_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:848:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestErr *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 848 | (cfish_method_t)TESTCFISH_TestErr_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:853:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestClass *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 853 | (cfish_method_t)TESTCFISH_TestClass_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:858:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestCharBuf *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 858 | (cfish_method_t)TESTCFISH_TestCB_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:863:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestByteBuf *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 863 | (cfish_method_t)TESTCFISH_TestBB_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:868:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestBoolean *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 868 | (cfish_method_t)TESTCFISH_TestBoolean_Run_IMP /* func */ | ^ autogen/source/testcfish_parcel.c:873:9: warning: cast between incompatible function types from ‘void (*)(testcfish_TestBlob *, cfish_TestBatchRunner *)’ to ‘void (*)(const void *)’ [-Wcast-function-type] 873 | (cfish_method_t)TESTCFISH_TestBlob_Run_IMP /* func */ | ^ gcc -Icfcore -Ixs -I. -Iautogen/include -I/usr/lib64/perl5/CORE -fPIC -pedantic -Wall -Wextra -Wno-variadic-macros -DPERL_GCC_PEDANTIC '-std=gnu99' -D_GNU_SOURCE '-fvisibility=hidden' -c -D_REENTRANT -D_GNU_SOURCE -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE '-D_FILE_OFFSET_BITS=64' -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -o autogen/source/testcfish_perl.o autogen/source/testcfish_perl.c In file included from xs/XSBind.h:23, from autogen/source/testcfish_perl.c:29: autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_Host’: autogen/include/Clownfish/Obj.h:141:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Obj *, void *)’ [-Wcast-function-type] 141 | const CFISH_Obj_To_Host_t method = (CFISH_Obj_To_Host_t)cfish_obj_method(self, CFISH_Obj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Clone’: autogen/include/Clownfish/Obj.h:148:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Obj *)’ [-Wcast-function-type] 148 | const CFISH_Obj_Clone_t method = (CFISH_Obj_Clone_t)cfish_obj_method(self, CFISH_Obj_Clone_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Equals’: autogen/include/Clownfish/Obj.h:155:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Obj *, cfish_Obj *)’ [-Wcast-function-type] 155 | const CFISH_Obj_Equals_t method = (CFISH_Obj_Equals_t)cfish_obj_method(self, CFISH_Obj_Equals_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_Compare_To’: autogen/include/Clownfish/Obj.h:162:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Obj *, cfish_Obj *)’ {aka ‘int (*)(cfish_Obj *, cfish_Obj *)’} [-Wcast-function-type] 162 | const CFISH_Obj_Compare_To_t method = (CFISH_Obj_Compare_To_t)cfish_obj_method(self, CFISH_Obj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Obj.h: In function ‘CFISH_Obj_To_String’: autogen/include/Clownfish/Obj.h:176:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Obj *)’ [-Wcast-function-type] 176 | const CFISH_Obj_To_String_t method = (CFISH_Obj_To_String_t)cfish_obj_method(self, CFISH_Obj_To_String_OFFSET); | ^ In file included from xs/XSBind.h:24: autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_To_Host’: autogen/include/Clownfish/Blob.h:182:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Blob *, void *)’ [-Wcast-function-type] 182 | const CFISH_Blob_To_Host_t method = (CFISH_Blob_To_Host_t)cfish_obj_method(self, CFISH_Blob_To_Host_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Clone’: autogen/include/Clownfish/Blob.h:193:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Blob * (*)(cfish_Blob *)’ [-Wcast-function-type] 193 | const CFISH_Blob_Clone_t method = (CFISH_Blob_Clone_t)cfish_obj_method(self, CFISH_Blob_Clone_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Equals’: autogen/include/Clownfish/Blob.h:204:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Blob *, cfish_Obj *)’ [-Wcast-function-type] 204 | const CFISH_Blob_Equals_t method = (CFISH_Blob_Equals_t)cfish_obj_method(self, CFISH_Blob_Equals_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Compare_To’: autogen/include/Clownfish/Blob.h:215:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Blob *, cfish_Obj *)’ {aka ‘int (*)(cfish_Blob *, cfish_Obj *)’} [-Wcast-function-type] 215 | const CFISH_Blob_Compare_To_t method = (CFISH_Blob_Compare_To_t)cfish_obj_method(self, CFISH_Blob_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_To_String’: autogen/include/Clownfish/Blob.h:237:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Blob *)’ [-Wcast-function-type] 237 | const CFISH_Blob_To_String_t method = (CFISH_Blob_To_String_t)cfish_obj_method(self, CFISH_Blob_To_String_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Get_Size’: autogen/include/Clownfish/Blob.h:248:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Blob *)’ {aka ‘long unsigned int (*)(cfish_Blob *)’} [-Wcast-function-type] 248 | const CFISH_Blob_Get_Size_t method = (CFISH_Blob_Get_Size_t)cfish_obj_method(self, CFISH_Blob_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Get_Buf’: autogen/include/Clownfish/Blob.h:259:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_Blob *)’ [-Wcast-function-type] 259 | const CFISH_Blob_Get_Buf_t method = (CFISH_Blob_Get_Buf_t)cfish_obj_method(self, CFISH_Blob_Get_Buf_OFFSET); | ^ autogen/include/Clownfish/Blob.h: In function ‘CFISH_Blob_Equals_Bytes’: autogen/include/Clownfish/Blob.h:270:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Blob *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_Blob *, const void *, long unsigned int)’} [-Wcast-function-type] 270 | const CFISH_Blob_Equals_Bytes_t method = (CFISH_Blob_Equals_Bytes_t)cfish_obj_method(self, CFISH_Blob_Equals_Bytes_OFFSET); | ^ In file included from xs/XSBind.h:25: autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_To_Host’: autogen/include/Clownfish/ByteBuf.h:230:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_ByteBuf *, void *)’ [-Wcast-function-type] 230 | const CFISH_BB_To_Host_t method = (CFISH_BB_To_Host_t)cfish_obj_method(self, CFISH_BB_To_Host_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Clone’: autogen/include/Clownfish/ByteBuf.h:241:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 241 | const CFISH_BB_Clone_t method = (CFISH_BB_Clone_t)cfish_obj_method(self, CFISH_BB_Clone_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Equals’: autogen/include/Clownfish/ByteBuf.h:252:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_ByteBuf *, cfish_Obj *)’ [-Wcast-function-type] 252 | const CFISH_BB_Equals_t method = (CFISH_BB_Equals_t)cfish_obj_method(self, CFISH_BB_Equals_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Compare_To’: autogen/include/Clownfish/ByteBuf.h:263:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_ByteBuf *, cfish_Obj *)’ {aka ‘int (*)(cfish_ByteBuf *, cfish_Obj *)’} [-Wcast-function-type] 263 | const CFISH_BB_Compare_To_t method = (CFISH_BB_Compare_To_t)cfish_obj_method(self, CFISH_BB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_To_String’: autogen/include/Clownfish/ByteBuf.h:285:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 285 | const CFISH_BB_To_String_t method = (CFISH_BB_To_String_t)cfish_obj_method(self, CFISH_BB_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Set_Size’: autogen/include/Clownfish/ByteBuf.h:296:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, long unsigned int)’} [-Wcast-function-type] 296 | const CFISH_BB_Set_Size_t method = (CFISH_BB_Set_Size_t)cfish_obj_method(self, CFISH_BB_Set_Size_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Size’: autogen/include/Clownfish/ByteBuf.h:307:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} [-Wcast-function-type] 307 | const CFISH_BB_Get_Size_t method = (CFISH_BB_Get_Size_t)cfish_obj_method(self, CFISH_BB_Get_Size_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Buf’: autogen/include/Clownfish/ByteBuf.h:318:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 318 | const CFISH_BB_Get_Buf_t method = (CFISH_BB_Get_Buf_t)cfish_obj_method(self, CFISH_BB_Get_Buf_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Get_Capacity’: autogen/include/Clownfish/ByteBuf.h:329:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_ByteBuf *)’ {aka ‘long unsigned int (*)(cfish_ByteBuf *)’} [-Wcast-function-type] 329 | const CFISH_BB_Get_Capacity_t method = (CFISH_BB_Get_Capacity_t)cfish_obj_method(self, CFISH_BB_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Cat_Bytes’: autogen/include/Clownfish/ByteBuf.h:340:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘void (*)(cfish_ByteBuf *, const void *, long unsigned int)’} [-Wcast-function-type] 340 | const CFISH_BB_Cat_Bytes_t method = (CFISH_BB_Cat_Bytes_t)cfish_obj_method(self, CFISH_BB_Cat_Bytes_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Cat’: autogen/include/Clownfish/ByteBuf.h:351:35: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_ByteBuf *, cfish_Blob *)’ [-Wcast-function-type] 351 | const CFISH_BB_Cat_t method = (CFISH_BB_Cat_t)cfish_obj_method(self, CFISH_BB_Cat_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Grow’: autogen/include/Clownfish/ByteBuf.h:362:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_ByteBuf *, size_t)’ {aka ‘char * (*)(cfish_ByteBuf *, long unsigned int)’} [-Wcast-function-type] 362 | const CFISH_BB_Grow_t method = (CFISH_BB_Grow_t)cfish_obj_method(self, CFISH_BB_Grow_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Yield_Blob’: autogen/include/Clownfish/ByteBuf.h:373:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Blob * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 373 | const CFISH_BB_Yield_Blob_t method = (CFISH_BB_Yield_Blob_t)cfish_obj_method(self, CFISH_BB_Yield_Blob_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Utf8_To_String’: autogen/include/Clownfish/ByteBuf.h:384:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 384 | const CFISH_BB_Utf8_To_String_t method = (CFISH_BB_Utf8_To_String_t)cfish_obj_method(self, CFISH_BB_Utf8_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Trusted_Utf8_To_String’: autogen/include/Clownfish/ByteBuf.h:395:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_ByteBuf *)’ [-Wcast-function-type] 395 | const CFISH_BB_Trusted_Utf8_To_String_t method = (CFISH_BB_Trusted_Utf8_To_String_t)cfish_obj_method(self, CFISH_BB_Trusted_Utf8_To_String_OFFSET); | ^ autogen/include/Clownfish/ByteBuf.h: In function ‘CFISH_BB_Equals_Bytes’: autogen/include/Clownfish/ByteBuf.h:406:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_ByteBuf *, const void *, size_t)’ {aka ‘_Bool (*)(cfish_ByteBuf *, const void *, long unsigned int)’} [-Wcast-function-type] 406 | const CFISH_BB_Equals_Bytes_t method = (CFISH_BB_Equals_Bytes_t)cfish_obj_method(self, CFISH_BB_Equals_Bytes_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:41, from xs/XSBind.h:26: autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_Host’: autogen/include/Clownfish/Class.h:223:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 223 | const CFISH_Class_To_Host_t method = (CFISH_Class_To_Host_t)cfish_obj_method(self, CFISH_Class_To_Host_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Clone’: autogen/include/Clownfish/Class.h:234:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 234 | const CFISH_Class_Clone_t method = (CFISH_Class_Clone_t)cfish_obj_method(self, CFISH_Class_Clone_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Equals’: autogen/include/Clownfish/Class.h:245:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Class *, cfish_Obj *)’ [-Wcast-function-type] 245 | const CFISH_Class_Equals_t method = (CFISH_Class_Equals_t)cfish_obj_method(self, CFISH_Class_Equals_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Compare_To’: autogen/include/Clownfish/Class.h:256:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Class *, cfish_Obj *)’ {aka ‘int (*)(cfish_Class *, cfish_Obj *)’} [-Wcast-function-type] 256 | const CFISH_Class_Compare_To_t method = (CFISH_Class_Compare_To_t)cfish_obj_method(self, CFISH_Class_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_To_String’: autogen/include/Clownfish/Class.h:278:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 278 | const CFISH_Class_To_String_t method = (CFISH_Class_To_String_t)cfish_obj_method(self, CFISH_Class_To_String_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Override’: autogen/include/Clownfish/Class.h:289:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, void (*)(const void *), uint32_t)’ {aka ‘void (*)(cfish_Class *, void (*)(const void *), unsigned int)’} [-Wcast-function-type] 289 | const CFISH_Class_Override_t method = (CFISH_Class_Override_t)cfish_obj_method(self, CFISH_Class_Override_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Make_Obj’: autogen/include/Clownfish/Class.h:300:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *)’ [-Wcast-function-type] 300 | const CFISH_Class_Make_Obj_t method = (CFISH_Class_Make_Obj_t)cfish_obj_method(self, CFISH_Class_Make_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Init_Obj’: autogen/include/Clownfish/Class.h:311:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Class *, void *)’ [-Wcast-function-type] 311 | const CFISH_Class_Init_Obj_t method = (CFISH_Class_Init_Obj_t)cfish_obj_method(self, CFISH_Class_Init_Obj_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Add_Host_Method_Alias’: autogen/include/Clownfish/Class.h:322:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *, const char *)’ [-Wcast-function-type] 322 | const CFISH_Class_Add_Host_Method_Alias_t method = (CFISH_Class_Add_Host_Method_Alias_t)cfish_obj_method(self, CFISH_Class_Add_Host_Method_Alias_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Exclude_Host_Method’: autogen/include/Clownfish/Class.h:333:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Class *, const char *)’ [-Wcast-function-type] 333 | const CFISH_Class_Exclude_Host_Method_t method = (CFISH_Class_Exclude_Host_Method_t)cfish_obj_method(self, CFISH_Class_Exclude_Host_Method_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Name’: autogen/include/Clownfish/Class.h:344:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Class *)’ [-Wcast-function-type] 344 | const CFISH_Class_Get_Name_t method = (CFISH_Class_Get_Name_t)cfish_obj_method(self, CFISH_Class_Get_Name_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Parent’: autogen/include/Clownfish/Class.h:355:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Class * (*)(cfish_Class *)’ [-Wcast-function-type] 355 | const CFISH_Class_Get_Parent_t method = (CFISH_Class_Get_Parent_t)cfish_obj_method(self, CFISH_Class_Get_Parent_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Obj_Alloc_Size’: autogen/include/Clownfish/Class.h:366:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘uint32_t (*)(cfish_Class *)’ {aka ‘unsigned int (*)(cfish_Class *)’} [-Wcast-function-type] 366 | const CFISH_Class_Get_Obj_Alloc_Size_t method = (CFISH_Class_Get_Obj_Alloc_Size_t)cfish_obj_method(self, CFISH_Class_Get_Obj_Alloc_Size_OFFSET); | ^ autogen/include/Clownfish/Class.h: In function ‘CFISH_Class_Get_Methods’: autogen/include/Clownfish/Class.h:377:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Class *)’ [-Wcast-function-type] 377 | const CFISH_Class_Get_Methods_t method = (CFISH_Class_Get_Methods_t)cfish_obj_method(self, CFISH_Class_Get_Methods_OFFSET); | ^ In file included from autogen/include/Clownfish/String.h:44: autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_Host’: autogen/include/Clownfish/Err.h:214:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Err *, void *)’ [-Wcast-function-type] 214 | const CFISH_Err_To_Host_t method = (CFISH_Err_To_Host_t)cfish_obj_method(self, CFISH_Err_To_Host_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Clone’: autogen/include/Clownfish/Err.h:221:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Err *)’ [-Wcast-function-type] 221 | const CFISH_Err_Clone_t method = (CFISH_Err_Clone_t)cfish_obj_method(self, CFISH_Err_Clone_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Equals’: autogen/include/Clownfish/Err.h:228:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Err *, cfish_Obj *)’ [-Wcast-function-type] 228 | const CFISH_Err_Equals_t method = (CFISH_Err_Equals_t)cfish_obj_method(self, CFISH_Err_Equals_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Compare_To’: autogen/include/Clownfish/Err.h:235:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Err *, cfish_Obj *)’ {aka ‘int (*)(cfish_Err *, cfish_Obj *)’} [-Wcast-function-type] 235 | const CFISH_Err_Compare_To_t method = (CFISH_Err_Compare_To_t)cfish_obj_method(self, CFISH_Err_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_To_String’: autogen/include/Clownfish/Err.h:249:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 249 | const CFISH_Err_To_String_t method = (CFISH_Err_To_String_t)cfish_obj_method(self, CFISH_Err_To_String_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Cat_Mess’: autogen/include/Clownfish/Err.h:256:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, cfish_String *)’ [-Wcast-function-type] 256 | const CFISH_Err_Cat_Mess_t method = (CFISH_Err_Cat_Mess_t)cfish_obj_method(self, CFISH_Err_Cat_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Get_Mess’: autogen/include/Clownfish/Err.h:263:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Err *)’ [-Wcast-function-type] 263 | const CFISH_Err_Get_Mess_t method = (CFISH_Err_Get_Mess_t)cfish_obj_method(self, CFISH_Err_Get_Mess_OFFSET); | ^ autogen/include/Clownfish/Err.h: In function ‘CFISH_Err_Add_Frame’: autogen/include/Clownfish/Err.h:270:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Err *, const char *, int, const char *)’ [-Wcast-function-type] 270 | const CFISH_Err_Add_Frame_t method = (CFISH_Err_Add_Frame_t)cfish_obj_method(self, CFISH_Err_Add_Frame_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Host’: autogen/include/Clownfish/String.h:387:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_String *, void *)’ [-Wcast-function-type] 387 | const CFISH_Str_To_Host_t method = (CFISH_Str_To_Host_t)cfish_obj_method(self, CFISH_Str_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Clone’: autogen/include/Clownfish/String.h:398:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 398 | const CFISH_Str_Clone_t method = (CFISH_Str_Clone_t)cfish_obj_method(self, CFISH_Str_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals’: autogen/include/Clownfish/String.h:409:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 409 | const CFISH_Str_Equals_t method = (CFISH_Str_Equals_t)cfish_obj_method(self, CFISH_Str_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Compare_To’: autogen/include/Clownfish/String.h:420:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, cfish_Obj *)’ {aka ‘int (*)(cfish_String *, cfish_Obj *)’} [-Wcast-function-type] 420 | const CFISH_Str_Compare_To_t method = (CFISH_Str_Compare_To_t)cfish_obj_method(self, CFISH_Str_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_String’: autogen/include/Clownfish/String.h:442:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 442 | const CFISH_Str_To_String_t method = (CFISH_Str_To_String_t)cfish_obj_method(self, CFISH_Str_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat’: autogen/include/Clownfish/String.h:453:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 453 | const CFISH_Str_Cat_t method = (CFISH_Str_Cat_t)cfish_obj_method(self, CFISH_Str_Cat_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Utf8’: autogen/include/Clownfish/String.h:464:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 464 | const CFISH_Str_Cat_Utf8_t method = (CFISH_Str_Cat_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Cat_Trusted_Utf8’: autogen/include/Clownfish/String.h:475:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 475 | const CFISH_Str_Cat_Trusted_Utf8_t method = (CFISH_Str_Cat_Trusted_Utf8_t)cfish_obj_method(self, CFISH_Str_Cat_Trusted_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_I64’: autogen/include/Clownfish/String.h:486:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *)’ {aka ‘long int (*)(cfish_String *)’} [-Wcast-function-type] 486 | const CFISH_Str_To_I64_t method = (CFISH_Str_To_I64_t)cfish_obj_method(self, CFISH_Str_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_BaseX_To_I64’: autogen/include/Clownfish/String.h:497:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_String *, uint32_t)’ {aka ‘long int (*)(cfish_String *, unsigned int)’} [-Wcast-function-type] 497 | const CFISH_Str_BaseX_To_I64_t method = (CFISH_Str_BaseX_To_I64_t)cfish_obj_method(self, CFISH_Str_BaseX_To_I64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_F64’: autogen/include/Clownfish/String.h:508:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_String *)’ [-Wcast-function-type] 508 | const CFISH_Str_To_F64_t method = (CFISH_Str_To_F64_t)cfish_obj_method(self, CFISH_Str_To_F64_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With’: autogen/include/Clownfish/String.h:519:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 519 | const CFISH_Str_Starts_With_t method = (CFISH_Str_Starts_With_t)cfish_obj_method(self, CFISH_Str_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Starts_With_Utf8’: autogen/include/Clownfish/String.h:530:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 530 | const CFISH_Str_Starts_With_Utf8_t method = (CFISH_Str_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With’: autogen/include/Clownfish/String.h:541:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 541 | const CFISH_Str_Ends_With_t method = (CFISH_Str_Ends_With_t)cfish_obj_method(self, CFISH_Str_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Ends_With_Utf8’: autogen/include/Clownfish/String.h:552:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 552 | const CFISH_Str_Ends_With_Utf8_t method = (CFISH_Str_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_Str_Ends_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains’: autogen/include/Clownfish/String.h:563:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 563 | const CFISH_Str_Contains_t method = (CFISH_Str_Contains_t)cfish_obj_method(self, CFISH_Str_Contains_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Contains_Utf8’: autogen/include/Clownfish/String.h:574:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 574 | const CFISH_Str_Contains_Utf8_t method = (CFISH_Str_Contains_Utf8_t)cfish_obj_method(self, CFISH_Str_Contains_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find’: autogen/include/Clownfish/String.h:585:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, cfish_String *)’ [-Wcast-function-type] 585 | const CFISH_Str_Find_t method = (CFISH_Str_Find_t)cfish_obj_method(self, CFISH_Str_Find_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Find_Utf8’: autogen/include/Clownfish/String.h:596:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *, const char *, size_t)’ {aka ‘cfish_StringIterator * (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 596 | const CFISH_Str_Find_Utf8_t method = (CFISH_Str_Find_Utf8_t)cfish_obj_method(self, CFISH_Str_Find_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Equals_Utf8’: autogen/include/Clownfish/String.h:607:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_String *, const char *, long unsigned int)’} [-Wcast-function-type] 607 | const CFISH_Str_Equals_Utf8_t method = (CFISH_Str_Equals_Utf8_t)cfish_obj_method(self, CFISH_Str_Equals_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Length’: autogen/include/Clownfish/String.h:618:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 618 | const CFISH_Str_Length_t method = (CFISH_Str_Length_t)cfish_obj_method(self, CFISH_Str_Length_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Size’: autogen/include/Clownfish/String.h:629:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 629 | const CFISH_Str_Get_Size_t method = (CFISH_Str_Get_Size_t)cfish_obj_method(self, CFISH_Str_Get_Size_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Get_Ptr8’: autogen/include/Clownfish/String.h:640:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘const char * (*)(cfish_String *)’ [-Wcast-function-type] 640 | const CFISH_Str_Get_Ptr8_t method = (CFISH_Str_Get_Ptr8_t)cfish_obj_method(self, CFISH_Str_Get_Ptr8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_Utf8’: autogen/include/Clownfish/String.h:651:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘char * (*)(cfish_String *)’ [-Wcast-function-type] 651 | const CFISH_Str_To_Utf8_t method = (CFISH_Str_To_Utf8_t)cfish_obj_method(self, CFISH_Str_To_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_To_ByteBuf’: autogen/include/Clownfish/String.h:662:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_ByteBuf * (*)(cfish_String *)’ [-Wcast-function-type] 662 | const CFISH_Str_To_ByteBuf_t method = (CFISH_Str_To_ByteBuf_t)cfish_obj_method(self, CFISH_Str_To_ByteBuf_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Is_Copy_On_IncRef’: autogen/include/Clownfish/String.h:673:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_String *)’ [-Wcast-function-type] 673 | const CFISH_Str_Is_Copy_On_IncRef_t method = (CFISH_Str_Is_Copy_On_IncRef_t)cfish_obj_method(self, CFISH_Str_Is_Copy_On_IncRef_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Hash_Sum’: autogen/include/Clownfish/String.h:684:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_String *)’ {aka ‘long unsigned int (*)(cfish_String *)’} [-Wcast-function-type] 684 | const CFISH_Str_Hash_Sum_t method = (CFISH_Str_Hash_Sum_t)cfish_obj_method(self, CFISH_Str_Hash_Sum_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim’: autogen/include/Clownfish/String.h:695:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 695 | const CFISH_Str_Trim_t method = (CFISH_Str_Trim_t)cfish_obj_method(self, CFISH_Str_Trim_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Top’: autogen/include/Clownfish/String.h:706:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 706 | const CFISH_Str_Trim_Top_t method = (CFISH_Str_Trim_Top_t)cfish_obj_method(self, CFISH_Str_Trim_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Trim_Tail’: autogen/include/Clownfish/String.h:717:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *)’ [-Wcast-function-type] 717 | const CFISH_Str_Trim_Tail_t method = (CFISH_Str_Trim_Tail_t)cfish_obj_method(self, CFISH_Str_Trim_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_At’: autogen/include/Clownfish/String.h:728:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 728 | const CFISH_Str_Code_Point_At_t method = (CFISH_Str_Code_Point_At_t)cfish_obj_method(self, CFISH_Str_Code_Point_At_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Code_Point_From’: autogen/include/Clownfish/String.h:739:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_String *, size_t)’ {aka ‘int (*)(cfish_String *, long unsigned int)’} [-Wcast-function-type] 739 | const CFISH_Str_Code_Point_From_t method = (CFISH_Str_Code_Point_From_t)cfish_obj_method(self, CFISH_Str_Code_Point_From_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_SubString’: autogen/include/Clownfish/String.h:750:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_String *, size_t, size_t)’ {aka ‘cfish_String * (*)(cfish_String *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 750 | const CFISH_Str_SubString_t method = (CFISH_Str_SubString_t)cfish_obj_method(self, CFISH_Str_SubString_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Top’: autogen/include/Clownfish/String.h:761:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 761 | const CFISH_Str_Top_t method = (CFISH_Str_Top_t)cfish_obj_method(self, CFISH_Str_Top_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_Str_Tail’: autogen/include/Clownfish/String.h:772:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_String *)’ [-Wcast-function-type] 772 | const CFISH_Str_Tail_t method = (CFISH_Str_Tail_t)cfish_obj_method(self, CFISH_Str_Tail_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_Host’: autogen/include/Clownfish/String.h:1113:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_StringIterator *, void *)’ [-Wcast-function-type] 1113 | const CFISH_StrIter_To_Host_t method = (CFISH_StrIter_To_Host_t)cfish_obj_method(self, CFISH_StrIter_To_Host_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Clone’: autogen/include/Clownfish/String.h:1124:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_StringIterator * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1124 | const CFISH_StrIter_Clone_t method = (CFISH_StrIter_Clone_t)cfish_obj_method(self, CFISH_StrIter_Clone_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Equals’: autogen/include/Clownfish/String.h:1135:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_Obj *)’ [-Wcast-function-type] 1135 | const CFISH_StrIter_Equals_t method = (CFISH_StrIter_Equals_t)cfish_obj_method(self, CFISH_StrIter_Equals_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Compare_To’: autogen/include/Clownfish/String.h:1146:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *, cfish_Obj *)’ {aka ‘int (*)(cfish_StringIterator *, cfish_Obj *)’} [-Wcast-function-type] 1146 | const CFISH_StrIter_Compare_To_t method = (CFISH_StrIter_Compare_To_t)cfish_obj_method(self, CFISH_StrIter_Compare_To_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_To_String’: autogen/include/Clownfish/String.h:1168:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1168 | const CFISH_StrIter_To_String_t method = (CFISH_StrIter_To_String_t)cfish_obj_method(self, CFISH_StrIter_To_String_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Assign’: autogen/include/Clownfish/String.h:1179:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_StringIterator *, cfish_StringIterator *)’ [-Wcast-function-type] 1179 | const CFISH_StrIter_Assign_t method = (CFISH_StrIter_Assign_t)cfish_obj_method(self, CFISH_StrIter_Assign_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Next’: autogen/include/Clownfish/String.h:1190:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1190 | const CFISH_StrIter_Has_Next_t method = (CFISH_StrIter_Has_Next_t)cfish_obj_method(self, CFISH_StrIter_Has_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Has_Prev’: autogen/include/Clownfish/String.h:1201:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *)’ [-Wcast-function-type] 1201 | const CFISH_StrIter_Has_Prev_t method = (CFISH_StrIter_Has_Prev_t)cfish_obj_method(self, CFISH_StrIter_Has_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Next’: autogen/include/Clownfish/String.h:1212:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1212 | const CFISH_StrIter_Next_t method = (CFISH_StrIter_Next_t)cfish_obj_method(self, CFISH_StrIter_Next_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Prev’: autogen/include/Clownfish/String.h:1223:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_StringIterator *)’ {aka ‘int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1223 | const CFISH_StrIter_Prev_t method = (CFISH_StrIter_Prev_t)cfish_obj_method(self, CFISH_StrIter_Prev_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Advance’: autogen/include/Clownfish/String.h:1234:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1234 | const CFISH_StrIter_Advance_t method = (CFISH_StrIter_Advance_t)cfish_obj_method(self, CFISH_StrIter_Advance_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Recede’: autogen/include/Clownfish/String.h:1245:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *, size_t)’ {aka ‘long unsigned int (*)(cfish_StringIterator *, long unsigned int)’} [-Wcast-function-type] 1245 | const CFISH_StrIter_Recede_t method = (CFISH_StrIter_Recede_t)cfish_obj_method(self, CFISH_StrIter_Recede_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace’: autogen/include/Clownfish/String.h:1256:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1256 | const CFISH_StrIter_Skip_Whitespace_t method = (CFISH_StrIter_Skip_Whitespace_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Skip_Whitespace_Back’: autogen/include/Clownfish/String.h:1267:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_StringIterator *)’ {aka ‘long unsigned int (*)(cfish_StringIterator *)’} [-Wcast-function-type] 1267 | const CFISH_StrIter_Skip_Whitespace_Back_t method = (CFISH_StrIter_Skip_Whitespace_Back_t)cfish_obj_method(self, CFISH_StrIter_Skip_Whitespace_Back_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With’: autogen/include/Clownfish/String.h:1278:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1278 | const CFISH_StrIter_Starts_With_t method = (CFISH_StrIter_Starts_With_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Starts_With_Utf8’: autogen/include/Clownfish/String.h:1289:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1289 | const CFISH_StrIter_Starts_With_Utf8_t method = (CFISH_StrIter_Starts_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Starts_With_Utf8_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With’: autogen/include/Clownfish/String.h:1300:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, cfish_String *)’ [-Wcast-function-type] 1300 | const CFISH_StrIter_Ends_With_t method = (CFISH_StrIter_Ends_With_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_OFFSET); | ^ autogen/include/Clownfish/String.h: In function ‘CFISH_StrIter_Ends_With_Utf8’: autogen/include/Clownfish/String.h:1311:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_StringIterator *, const char *, size_t)’ {aka ‘_Bool (*)(cfish_StringIterator *, const char *, long unsigned int)’} [-Wcast-function-type] 1311 | const CFISH_StrIter_Ends_With_Utf8_t method = (CFISH_StrIter_Ends_With_Utf8_t)cfish_obj_method(self, CFISH_StrIter_Ends_With_Utf8_OFFSET); | ^ In file included from xs/XSBind.h:28: autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_To_Host’: autogen/include/Clownfish/Hash.h:225:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Hash *, void *)’ [-Wcast-function-type] 225 | const CFISH_Hash_To_Host_t method = (CFISH_Hash_To_Host_t)cfish_obj_method(self, CFISH_Hash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Clone’: autogen/include/Clownfish/Hash.h:236:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *)’ [-Wcast-function-type] 236 | const CFISH_Hash_Clone_t method = (CFISH_Hash_Clone_t)cfish_obj_method(self, CFISH_Hash_Clone_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Equals’: autogen/include/Clownfish/Hash.h:247:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Hash *, cfish_Obj *)’ [-Wcast-function-type] 247 | const CFISH_Hash_Equals_t method = (CFISH_Hash_Equals_t)cfish_obj_method(self, CFISH_Hash_Equals_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Compare_To’: autogen/include/Clownfish/Hash.h:258:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Hash *, cfish_Obj *)’ {aka ‘int (*)(cfish_Hash *, cfish_Obj *)’} [-Wcast-function-type] 258 | const CFISH_Hash_Compare_To_t method = (CFISH_Hash_Compare_To_t)cfish_obj_method(self, CFISH_Hash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_To_String’: autogen/include/Clownfish/Hash.h:280:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Hash *)’ [-Wcast-function-type] 280 | const CFISH_Hash_To_String_t method = (CFISH_Hash_To_String_t)cfish_obj_method(self, CFISH_Hash_To_String_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Store’: autogen/include/Clownfish/Hash.h:302:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Hash *, cfish_String *, cfish_Obj *)’ [-Wcast-function-type] 302 | const CFISH_Hash_Store_t method = (CFISH_Hash_Store_t)cfish_obj_method(self, CFISH_Hash_Store_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Store_Utf8’: autogen/include/Clownfish/Hash.h:313:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Hash *, const char *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Hash *, const char *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 313 | const CFISH_Hash_Store_Utf8_t method = (CFISH_Hash_Store_Utf8_t)cfish_obj_method(self, CFISH_Hash_Store_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Fetch’: autogen/include/Clownfish/Hash.h:324:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 324 | const CFISH_Hash_Fetch_t method = (CFISH_Hash_Fetch_t)cfish_obj_method(self, CFISH_Hash_Fetch_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Fetch_Utf8’: autogen/include/Clownfish/Hash.h:335:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} [-Wcast-function-type] 335 | const CFISH_Hash_Fetch_Utf8_t method = (CFISH_Hash_Fetch_Utf8_t)cfish_obj_method(self, CFISH_Hash_Fetch_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Delete’: autogen/include/Clownfish/Hash.h:346:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 346 | const CFISH_Hash_Delete_t method = (CFISH_Hash_Delete_t)cfish_obj_method(self, CFISH_Hash_Delete_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Delete_Utf8’: autogen/include/Clownfish/Hash.h:357:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Hash *, const char *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Hash *, const char *, long unsigned int)’} [-Wcast-function-type] 357 | const CFISH_Hash_Delete_Utf8_t method = (CFISH_Hash_Delete_Utf8_t)cfish_obj_method(self, CFISH_Hash_Delete_Utf8_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Has_Key’: autogen/include/Clownfish/Hash.h:368:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Hash *, cfish_String *)’ [-Wcast-function-type] 368 | const CFISH_Hash_Has_Key_t method = (CFISH_Hash_Has_Key_t)cfish_obj_method(self, CFISH_Hash_Has_Key_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Keys’: autogen/include/Clownfish/Hash.h:379:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Hash *)’ [-Wcast-function-type] 379 | const CFISH_Hash_Keys_t method = (CFISH_Hash_Keys_t)cfish_obj_method(self, CFISH_Hash_Keys_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Values’: autogen/include/Clownfish/Hash.h:390:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Hash *)’ [-Wcast-function-type] 390 | const CFISH_Hash_Values_t method = (CFISH_Hash_Values_t)cfish_obj_method(self, CFISH_Hash_Values_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Get_Capacity’: autogen/include/Clownfish/Hash.h:401:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} [-Wcast-function-type] 401 | const CFISH_Hash_Get_Capacity_t method = (CFISH_Hash_Get_Capacity_t)cfish_obj_method(self, CFISH_Hash_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Hash.h: In function ‘CFISH_Hash_Get_Size’: autogen/include/Clownfish/Hash.h:412:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Hash *)’ {aka ‘long unsigned int (*)(cfish_Hash *)’} [-Wcast-function-type] 412 | const CFISH_Hash_Get_Size_t method = (CFISH_Hash_Get_Size_t)cfish_obj_method(self, CFISH_Hash_Get_Size_OFFSET); | ^ In file included from xs/XSBind.h:29: autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_Host’: autogen/include/Clownfish/Num.h:162:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Float *, void *)’ [-Wcast-function-type] 162 | const CFISH_Float_To_Host_t method = (CFISH_Float_To_Host_t)cfish_obj_method(self, CFISH_Float_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Clone’: autogen/include/Clownfish/Num.h:173:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Float * (*)(cfish_Float *)’ [-Wcast-function-type] 173 | const CFISH_Float_Clone_t method = (CFISH_Float_Clone_t)cfish_obj_method(self, CFISH_Float_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Equals’: autogen/include/Clownfish/Num.h:184:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Float *, cfish_Obj *)’ [-Wcast-function-type] 184 | const CFISH_Float_Equals_t method = (CFISH_Float_Equals_t)cfish_obj_method(self, CFISH_Float_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Compare_To’: autogen/include/Clownfish/Num.h:195:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Float *, cfish_Obj *)’ {aka ‘int (*)(cfish_Float *, cfish_Obj *)’} [-Wcast-function-type] 195 | const CFISH_Float_Compare_To_t method = (CFISH_Float_Compare_To_t)cfish_obj_method(self, CFISH_Float_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_String’: autogen/include/Clownfish/Num.h:217:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Float *)’ [-Wcast-function-type] 217 | const CFISH_Float_To_String_t method = (CFISH_Float_To_String_t)cfish_obj_method(self, CFISH_Float_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_Get_Value’: autogen/include/Clownfish/Num.h:228:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Float *)’ [-Wcast-function-type] 228 | const CFISH_Float_Get_Value_t method = (CFISH_Float_Get_Value_t)cfish_obj_method(self, CFISH_Float_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Float_To_I64’: autogen/include/Clownfish/Num.h:239:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Float *)’ {aka ‘long int (*)(cfish_Float *)’} [-Wcast-function-type] 239 | const CFISH_Float_To_I64_t method = (CFISH_Float_To_I64_t)cfish_obj_method(self, CFISH_Float_To_I64_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_Host’: autogen/include/Clownfish/Num.h:417:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Integer *, void *)’ [-Wcast-function-type] 417 | const CFISH_Int_To_Host_t method = (CFISH_Int_To_Host_t)cfish_obj_method(self, CFISH_Int_To_Host_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Clone’: autogen/include/Clownfish/Num.h:428:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Integer * (*)(cfish_Integer *)’ [-Wcast-function-type] 428 | const CFISH_Int_Clone_t method = (CFISH_Int_Clone_t)cfish_obj_method(self, CFISH_Int_Clone_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Equals’: autogen/include/Clownfish/Num.h:439:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Integer *, cfish_Obj *)’ [-Wcast-function-type] 439 | const CFISH_Int_Equals_t method = (CFISH_Int_Equals_t)cfish_obj_method(self, CFISH_Int_Equals_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Compare_To’: autogen/include/Clownfish/Num.h:450:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Integer *, cfish_Obj *)’ {aka ‘int (*)(cfish_Integer *, cfish_Obj *)’} [-Wcast-function-type] 450 | const CFISH_Int_Compare_To_t method = (CFISH_Int_Compare_To_t)cfish_obj_method(self, CFISH_Int_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_String’: autogen/include/Clownfish/Num.h:472:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Integer *)’ [-Wcast-function-type] 472 | const CFISH_Int_To_String_t method = (CFISH_Int_To_String_t)cfish_obj_method(self, CFISH_Int_To_String_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_Get_Value’: autogen/include/Clownfish/Num.h:483:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int64_t (*)(cfish_Integer *)’ {aka ‘long int (*)(cfish_Integer *)’} [-Wcast-function-type] 483 | const CFISH_Int_Get_Value_t method = (CFISH_Int_Get_Value_t)cfish_obj_method(self, CFISH_Int_Get_Value_OFFSET); | ^ autogen/include/Clownfish/Num.h: In function ‘CFISH_Int_To_F64’: autogen/include/Clownfish/Num.h:494:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘double (*)(cfish_Integer *)’ [-Wcast-function-type] 494 | const CFISH_Int_To_F64_t method = (CFISH_Int_To_F64_t)cfish_obj_method(self, CFISH_Int_To_F64_OFFSET); | ^ In file included from xs/XSBind.h:30: autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_Host’: autogen/include/Clownfish/Vector.h:245:40: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_Vector *, void *)’ [-Wcast-function-type] 245 | const CFISH_Vec_To_Host_t method = (CFISH_Vec_To_Host_t)cfish_obj_method(self, CFISH_Vec_To_Host_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Clone’: autogen/include/Clownfish/Vector.h:256:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *)’ [-Wcast-function-type] 256 | const CFISH_Vec_Clone_t method = (CFISH_Vec_Clone_t)cfish_obj_method(self, CFISH_Vec_Clone_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Equals’: autogen/include/Clownfish/Vector.h:267:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 267 | const CFISH_Vec_Equals_t method = (CFISH_Vec_Equals_t)cfish_obj_method(self, CFISH_Vec_Equals_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Compare_To’: autogen/include/Clownfish/Vector.h:278:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_Vector *, cfish_Obj *)’ {aka ‘int (*)(cfish_Vector *, cfish_Obj *)’} [-Wcast-function-type] 278 | const CFISH_Vec_Compare_To_t method = (CFISH_Vec_Compare_To_t)cfish_obj_method(self, CFISH_Vec_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_To_String’: autogen/include/Clownfish/Vector.h:300:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_Vector *)’ [-Wcast-function-type] 300 | const CFISH_Vec_To_String_t method = (CFISH_Vec_To_String_t)cfish_obj_method(self, CFISH_Vec_To_String_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push’: autogen/include/Clownfish/Vector.h:311:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Obj *)’ [-Wcast-function-type] 311 | const CFISH_Vec_Push_t method = (CFISH_Vec_Push_t)cfish_obj_method(self, CFISH_Vec_Push_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Push_All’: autogen/include/Clownfish/Vector.h:322:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, cfish_Vector *)’ [-Wcast-function-type] 322 | const CFISH_Vec_Push_All_t method = (CFISH_Vec_Push_All_t)cfish_obj_method(self, CFISH_Vec_Push_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Pop’: autogen/include/Clownfish/Vector.h:333:36: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *)’ [-Wcast-function-type] 333 | const CFISH_Vec_Pop_t method = (CFISH_Vec_Pop_t)cfish_obj_method(self, CFISH_Vec_Pop_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert’: autogen/include/Clownfish/Vector.h:344:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 344 | const CFISH_Vec_Insert_t method = (CFISH_Vec_Insert_t)cfish_obj_method(self, CFISH_Vec_Insert_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Insert_All’: autogen/include/Clownfish/Vector.h:355:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Vector *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Vector *)’} [-Wcast-function-type] 355 | const CFISH_Vec_Insert_All_t method = (CFISH_Vec_Insert_All_t)cfish_obj_method(self, CFISH_Vec_Insert_All_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Grow’: autogen/include/Clownfish/Vector.h:366:37: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 366 | const CFISH_Vec_Grow_t method = (CFISH_Vec_Grow_t)cfish_obj_method(self, CFISH_Vec_Grow_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Fetch’: autogen/include/Clownfish/Vector.h:377:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 377 | const CFISH_Vec_Fetch_t method = (CFISH_Vec_Fetch_t)cfish_obj_method(self, CFISH_Vec_Fetch_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Store’: autogen/include/Clownfish/Vector.h:388:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, cfish_Obj *)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, cfish_Obj *)’} [-Wcast-function-type] 388 | const CFISH_Vec_Store_t method = (CFISH_Vec_Store_t)cfish_obj_method(self, CFISH_Vec_Store_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Delete’: autogen/include/Clownfish/Vector.h:399:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_Vector *, size_t)’ {aka ‘cfish_Obj * (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 399 | const CFISH_Vec_Delete_t method = (CFISH_Vec_Delete_t)cfish_obj_method(self, CFISH_Vec_Delete_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Excise’: autogen/include/Clownfish/Vector.h:410:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 410 | const CFISH_Vec_Excise_t method = (CFISH_Vec_Excise_t)cfish_obj_method(self, CFISH_Vec_Excise_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Resize’: autogen/include/Clownfish/Vector.h:432:39: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_Vector *, size_t)’ {aka ‘void (*)(cfish_Vector *, long unsigned int)’} [-Wcast-function-type] 432 | const CFISH_Vec_Resize_t method = (CFISH_Vec_Resize_t)cfish_obj_method(self, CFISH_Vec_Resize_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Size’: autogen/include/Clownfish/Vector.h:454:41: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 454 | const CFISH_Vec_Get_Size_t method = (CFISH_Vec_Get_Size_t)cfish_obj_method(self, CFISH_Vec_Get_Size_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Get_Capacity’: autogen/include/Clownfish/Vector.h:465:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘size_t (*)(cfish_Vector *)’ {aka ‘long unsigned int (*)(cfish_Vector *)’} [-Wcast-function-type] 465 | const CFISH_Vec_Get_Capacity_t method = (CFISH_Vec_Get_Capacity_t)cfish_obj_method(self, CFISH_Vec_Get_Capacity_OFFSET); | ^ autogen/include/Clownfish/Vector.h: In function ‘CFISH_Vec_Slice’: autogen/include/Clownfish/Vector.h:476:38: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Vector * (*)(cfish_Vector *, size_t, size_t)’ {aka ‘cfish_Vector * (*)(cfish_Vector *, long unsigned int, long unsigned int)’} [-Wcast-function-type] 476 | const CFISH_Vec_Slice_t method = (CFISH_Vec_Slice_t)cfish_obj_method(self, CFISH_Vec_Slice_OFFSET); | ^ In file included from /usr/lib64/perl5/CORE/perl.h:44, from xs/XSBind.h:37: /usr/lib64/perl5/CORE/thread.h: At top level: /usr/lib64/perl5/CORE/config.h:5196:27: warning: ISO C99 does not support ‘_Thread_local’ [-Wpedantic] 5196 | #define PERL_THREAD_LOCAL _Thread_local /**/ | ^~~~~~~~~~~~~ /usr/lib64/perl5/CORE/thread.h:400:8: note: in expansion of macro ‘PERL_THREAD_LOCAL’ 400 | extern PERL_THREAD_LOCAL void *PL_current_context; | ^~~~~~~~~~~~~~~~~ In file included from autogen/include/Clownfish/Test/Util/TestMemory.h:40, from autogen/source/testcfish_perl.c:33: autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_Host’: autogen/include/Clownfish/TestHarness/TestBatch.h:131:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(cfish_TestBatch *, void *)’ [-Wcast-function-type] 131 | const CFISH_TestBatch_To_Host_t method = (CFISH_TestBatch_To_Host_t)cfish_obj_method(self, CFISH_TestBatch_To_Host_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Clone’: autogen/include/Clownfish/TestHarness/TestBatch.h:138:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 138 | const CFISH_TestBatch_Clone_t method = (CFISH_TestBatch_Clone_t)cfish_obj_method(self, CFISH_TestBatch_Clone_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Equals’: autogen/include/Clownfish/TestHarness/TestBatch.h:145:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(cfish_TestBatch *, cfish_Obj *)’ [-Wcast-function-type] 145 | const CFISH_TestBatch_Equals_t method = (CFISH_TestBatch_Equals_t)cfish_obj_method(self, CFISH_TestBatch_Equals_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Compare_To’: autogen/include/Clownfish/TestHarness/TestBatch.h:152:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(cfish_TestBatch *, cfish_Obj *)’ {aka ‘int (*)(cfish_TestBatch *, cfish_Obj *)’} [-Wcast-function-type] 152 | const CFISH_TestBatch_Compare_To_t method = (CFISH_TestBatch_Compare_To_t)cfish_obj_method(self, CFISH_TestBatch_Compare_To_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_To_String’: autogen/include/Clownfish/TestHarness/TestBatch.h:166:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(cfish_TestBatch *)’ [-Wcast-function-type] 166 | const CFISH_TestBatch_To_String_t method = (CFISH_TestBatch_To_String_t)cfish_obj_method(self, CFISH_TestBatch_To_String_OFFSET); | ^ autogen/include/Clownfish/TestHarness/TestBatch.h: In function ‘CFISH_TestBatch_Run’: autogen/include/Clownfish/TestHarness/TestBatch.h:173:42: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(cfish_TestBatch *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 173 | const CFISH_TestBatch_Run_t method = (CFISH_TestBatch_Run_t)cfish_obj_method(self, CFISH_TestBatch_Run_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_Host’: autogen/include/Clownfish/Test/Util/TestMemory.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMemory *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMemory_To_Host_t method = (TESTCFISH_TestMemory_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Clone’: autogen/include/Clownfish/Test/Util/TestMemory.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMemory_Clone_t method = (TESTCFISH_TestMemory_Clone_t)cfish_obj_method(self, TESTCFISH_TestMemory_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Equals’: autogen/include/Clownfish/Test/Util/TestMemory.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMemory *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMemory_Equals_t method = (TESTCFISH_TestMemory_Equals_t)cfish_obj_method(self, TESTCFISH_TestMemory_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Compare_To’: autogen/include/Clownfish/Test/Util/TestMemory.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMemory *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMemory *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMemory_Compare_To_t method = (TESTCFISH_TestMemory_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMemory_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_To_String’: autogen/include/Clownfish/Test/Util/TestMemory.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMemory *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMemory_To_String_t method = (TESTCFISH_TestMemory_To_String_t)cfish_obj_method(self, TESTCFISH_TestMemory_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestMemory.h: In function ‘TESTCFISH_TestMemory_Run’: autogen/include/Clownfish/Test/Util/TestMemory.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMemory *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMemory_Run_t method = (TESTCFISH_TestMemory_Run_t)cfish_obj_method(self, TESTCFISH_TestMemory_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:34: autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_Host’: autogen/include/Clownfish/Test/Util/TestAtomic.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestAtomic *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestAtomic_To_Host_t method = (TESTCFISH_TestAtomic_To_Host_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Clone’: autogen/include/Clownfish/Test/Util/TestAtomic.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestAtomic_Clone_t method = (TESTCFISH_TestAtomic_Clone_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Equals’: autogen/include/Clownfish/Test/Util/TestAtomic.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestAtomic *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestAtomic_Equals_t method = (TESTCFISH_TestAtomic_Equals_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Compare_To’: autogen/include/Clownfish/Test/Util/TestAtomic.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestAtomic *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestAtomic *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestAtomic_Compare_To_t method = (TESTCFISH_TestAtomic_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_To_String’: autogen/include/Clownfish/Test/Util/TestAtomic.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestAtomic *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestAtomic_To_String_t method = (TESTCFISH_TestAtomic_To_String_t)cfish_obj_method(self, TESTCFISH_TestAtomic_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/Util/TestAtomic.h: In function ‘TESTCFISH_TestAtomic_Run’: autogen/include/Clownfish/Test/Util/TestAtomic.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestAtomic *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestAtomic_Run_t method = (TESTCFISH_TestAtomic_Run_t)cfish_obj_method(self, TESTCFISH_TestAtomic_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:35: autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_Host’: autogen/include/Clownfish/Test/TestVector.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestVector *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestVector_To_Host_t method = (TESTCFISH_TestVector_To_Host_t)cfish_obj_method(self, TESTCFISH_TestVector_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Clone’: autogen/include/Clownfish/Test/TestVector.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestVector_Clone_t method = (TESTCFISH_TestVector_Clone_t)cfish_obj_method(self, TESTCFISH_TestVector_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Equals’: autogen/include/Clownfish/Test/TestVector.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestVector *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestVector_Equals_t method = (TESTCFISH_TestVector_Equals_t)cfish_obj_method(self, TESTCFISH_TestVector_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Compare_To’: autogen/include/Clownfish/Test/TestVector.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestVector *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestVector *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestVector_Compare_To_t method = (TESTCFISH_TestVector_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestVector_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_To_String’: autogen/include/Clownfish/Test/TestVector.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestVector *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestVector_To_String_t method = (TESTCFISH_TestVector_To_String_t)cfish_obj_method(self, TESTCFISH_TestVector_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestVector.h: In function ‘TESTCFISH_TestVector_Run’: autogen/include/Clownfish/Test/TestVector.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestVector *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestVector_Run_t method = (TESTCFISH_TestVector_Run_t)cfish_obj_method(self, TESTCFISH_TestVector_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:36: autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_Host’: autogen/include/Clownfish/Test/TestString.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestString *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestStr_To_Host_t method = (TESTCFISH_TestStr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestStr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Clone’: autogen/include/Clownfish/Test/TestString.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestString *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestStr_Clone_t method = (TESTCFISH_TestStr_Clone_t)cfish_obj_method(self, TESTCFISH_TestStr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Equals’: autogen/include/Clownfish/Test/TestString.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestString *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestStr_Equals_t method = (TESTCFISH_TestStr_Equals_t)cfish_obj_method(self, TESTCFISH_TestStr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Compare_To’: autogen/include/Clownfish/Test/TestString.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestString *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestString *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestStr_Compare_To_t method = (TESTCFISH_TestStr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestStr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_To_String’: autogen/include/Clownfish/Test/TestString.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestString *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestStr_To_String_t method = (TESTCFISH_TestStr_To_String_t)cfish_obj_method(self, TESTCFISH_TestStr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_TestStr_Run’: autogen/include/Clownfish/Test/TestString.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestString *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestStr_Run_t method = (TESTCFISH_TestStr_Run_t)cfish_obj_method(self, TESTCFISH_TestStr_Run_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_Host’: autogen/include/Clownfish/Test/TestString.h:311:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_StringCallbackTest *, void *)’ [-Wcast-function-type] 311 | const TESTCFISH_StrCbTest_To_Host_t method = (TESTCFISH_StrCbTest_To_Host_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Clone’: autogen/include/Clownfish/Test/TestString.h:318:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 318 | const TESTCFISH_StrCbTest_Clone_t method = (TESTCFISH_StrCbTest_Clone_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Equals’: autogen/include/Clownfish/Test/TestString.h:325:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ [-Wcast-function-type] 325 | const TESTCFISH_StrCbTest_Equals_t method = (TESTCFISH_StrCbTest_Equals_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Compare_To’: autogen/include/Clownfish/Test/TestString.h:332:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_StringCallbackTest *, cfish_Obj *)’ {aka ‘int (*)(testcfish_StringCallbackTest *, cfish_Obj *)’} [-Wcast-function-type] 332 | const TESTCFISH_StrCbTest_Compare_To_t method = (TESTCFISH_StrCbTest_Compare_To_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_To_String’: autogen/include/Clownfish/Test/TestString.h:346:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_StringCallbackTest *)’ [-Wcast-function-type] 346 | const TESTCFISH_StrCbTest_To_String_t method = (TESTCFISH_StrCbTest_To_String_t)cfish_obj_method(self, TESTCFISH_StrCbTest_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestString.h: In function ‘TESTCFISH_StrCbTest_Unchanged_By_Callback’: autogen/include/Clownfish/Test/TestString.h:353:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_StringCallbackTest *, cfish_String *)’ [-Wcast-function-type] 353 | const TESTCFISH_StrCbTest_Unchanged_By_Callback_t method = (TESTCFISH_StrCbTest_Unchanged_By_Callback_t)cfish_obj_method(self, TESTCFISH_StrCbTest_Unchanged_By_Callback_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:37: autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_Host’: autogen/include/Clownfish/Test/TestPtrHash.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestPtrHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestPtrHash_To_Host_t method = (TESTCFISH_TestPtrHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Clone’: autogen/include/Clownfish/Test/TestPtrHash.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestPtrHash_Clone_t method = (TESTCFISH_TestPtrHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Equals’: autogen/include/Clownfish/Test/TestPtrHash.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestPtrHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestPtrHash_Equals_t method = (TESTCFISH_TestPtrHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Compare_To’: autogen/include/Clownfish/Test/TestPtrHash.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestPtrHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestPtrHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestPtrHash_Compare_To_t method = (TESTCFISH_TestPtrHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_To_String’: autogen/include/Clownfish/Test/TestPtrHash.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestPtrHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestPtrHash_To_String_t method = (TESTCFISH_TestPtrHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestPtrHash.h: In function ‘TESTCFISH_TestPtrHash_Run’: autogen/include/Clownfish/Test/TestPtrHash.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestPtrHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestPtrHash_Run_t method = (TESTCFISH_TestPtrHash_Run_t)cfish_obj_method(self, TESTCFISH_TestPtrHash_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:38: autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_Host’: autogen/include/Clownfish/Test/TestObj.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestObj *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestObj_To_Host_t method = (TESTCFISH_TestObj_To_Host_t)cfish_obj_method(self, TESTCFISH_TestObj_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Clone’: autogen/include/Clownfish/Test/TestObj.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestObj_Clone_t method = (TESTCFISH_TestObj_Clone_t)cfish_obj_method(self, TESTCFISH_TestObj_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Equals’: autogen/include/Clownfish/Test/TestObj.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestObj *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestObj_Equals_t method = (TESTCFISH_TestObj_Equals_t)cfish_obj_method(self, TESTCFISH_TestObj_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Compare_To’: autogen/include/Clownfish/Test/TestObj.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestObj *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestObj *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestObj_Compare_To_t method = (TESTCFISH_TestObj_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestObj_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_To_String’: autogen/include/Clownfish/Test/TestObj.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestObj *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestObj_To_String_t method = (TESTCFISH_TestObj_To_String_t)cfish_obj_method(self, TESTCFISH_TestObj_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestObj.h: In function ‘TESTCFISH_TestObj_Run’: autogen/include/Clownfish/Test/TestObj.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestObj *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestObj_Run_t method = (TESTCFISH_TestObj_Run_t)cfish_obj_method(self, TESTCFISH_TestObj_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:39: autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_Host’: autogen/include/Clownfish/Test/TestNum.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestNum *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestNum_To_Host_t method = (TESTCFISH_TestNum_To_Host_t)cfish_obj_method(self, TESTCFISH_TestNum_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Clone’: autogen/include/Clownfish/Test/TestNum.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestNum_Clone_t method = (TESTCFISH_TestNum_Clone_t)cfish_obj_method(self, TESTCFISH_TestNum_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Equals’: autogen/include/Clownfish/Test/TestNum.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestNum *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestNum_Equals_t method = (TESTCFISH_TestNum_Equals_t)cfish_obj_method(self, TESTCFISH_TestNum_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Compare_To’: autogen/include/Clownfish/Test/TestNum.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestNum *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestNum *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestNum_Compare_To_t method = (TESTCFISH_TestNum_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestNum_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_To_String’: autogen/include/Clownfish/Test/TestNum.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestNum *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestNum_To_String_t method = (TESTCFISH_TestNum_To_String_t)cfish_obj_method(self, TESTCFISH_TestNum_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestNum.h: In function ‘TESTCFISH_TestNum_Run’: autogen/include/Clownfish/Test/TestNum.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestNum *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestNum_Run_t method = (TESTCFISH_TestNum_Run_t)cfish_obj_method(self, TESTCFISH_TestNum_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:40: autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_Host’: autogen/include/Clownfish/Test/TestMethod.h:130:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestMethod *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestMethod_To_Host_t method = (TESTCFISH_TestMethod_To_Host_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Clone’: autogen/include/Clownfish/Test/TestMethod.h:137:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestMethod_Clone_t method = (TESTCFISH_TestMethod_Clone_t)cfish_obj_method(self, TESTCFISH_TestMethod_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Equals’: autogen/include/Clownfish/Test/TestMethod.h:144:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestMethod *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestMethod_Equals_t method = (TESTCFISH_TestMethod_Equals_t)cfish_obj_method(self, TESTCFISH_TestMethod_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Compare_To’: autogen/include/Clownfish/Test/TestMethod.h:151:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestMethod *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestMethod *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestMethod_Compare_To_t method = (TESTCFISH_TestMethod_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestMethod_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_To_String’: autogen/include/Clownfish/Test/TestMethod.h:165:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestMethod *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestMethod_To_String_t method = (TESTCFISH_TestMethod_To_String_t)cfish_obj_method(self, TESTCFISH_TestMethod_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestMethod.h: In function ‘TESTCFISH_TestMethod_Run’: autogen/include/Clownfish/Test/TestMethod.h:172:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestMethod *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestMethod_Run_t method = (TESTCFISH_TestMethod_Run_t)cfish_obj_method(self, TESTCFISH_TestMethod_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:41: autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_Host’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestLockFreeRegistry *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestLFReg_To_Host_t method = (TESTCFISH_TestLFReg_To_Host_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Clone’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestLFReg_Clone_t method = (TESTCFISH_TestLFReg_Clone_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Equals’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestLFReg_Equals_t method = (TESTCFISH_TestLFReg_Equals_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Compare_To’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestLockFreeRegistry *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestLFReg_Compare_To_t method = (TESTCFISH_TestLFReg_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_To_String’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestLockFreeRegistry *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestLFReg_To_String_t method = (TESTCFISH_TestLFReg_To_String_t)cfish_obj_method(self, TESTCFISH_TestLFReg_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestLockFreeRegistry.h: In function ‘TESTCFISH_TestLFReg_Run’: autogen/include/Clownfish/Test/TestLockFreeRegistry.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestLockFreeRegistry *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestLFReg_Run_t method = (TESTCFISH_TestLFReg_Run_t)cfish_obj_method(self, TESTCFISH_TestLFReg_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:42: autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_Host’: autogen/include/Clownfish/Test/TestHashIterator.h:130:57: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHashIterator *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHashIterator_To_Host_t method = (TESTCFISH_TestHashIterator_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Clone’: autogen/include/Clownfish/Test/TestHashIterator.h:137:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHashIterator_Clone_t method = (TESTCFISH_TestHashIterator_Clone_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Equals’: autogen/include/Clownfish/Test/TestHashIterator.h:144:56: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHashIterator *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHashIterator_Equals_t method = (TESTCFISH_TestHashIterator_Equals_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Compare_To’: autogen/include/Clownfish/Test/TestHashIterator.h:151:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHashIterator *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHashIterator *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHashIterator_Compare_To_t method = (TESTCFISH_TestHashIterator_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_To_String’: autogen/include/Clownfish/Test/TestHashIterator.h:165:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHashIterator *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHashIterator_To_String_t method = (TESTCFISH_TestHashIterator_To_String_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHashIterator.h: In function ‘TESTCFISH_TestHashIterator_Run’: autogen/include/Clownfish/Test/TestHashIterator.h:172:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHashIterator *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHashIterator_Run_t method = (TESTCFISH_TestHashIterator_Run_t)cfish_obj_method(self, TESTCFISH_TestHashIterator_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:43: autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_Host’: autogen/include/Clownfish/Test/TestHash.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHash *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestHash_To_Host_t method = (TESTCFISH_TestHash_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHash_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Clone’: autogen/include/Clownfish/Test/TestHash.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestHash_Clone_t method = (TESTCFISH_TestHash_Clone_t)cfish_obj_method(self, TESTCFISH_TestHash_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Equals’: autogen/include/Clownfish/Test/TestHash.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHash *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestHash_Equals_t method = (TESTCFISH_TestHash_Equals_t)cfish_obj_method(self, TESTCFISH_TestHash_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Compare_To’: autogen/include/Clownfish/Test/TestHash.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHash *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHash *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestHash_Compare_To_t method = (TESTCFISH_TestHash_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHash_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_To_String’: autogen/include/Clownfish/Test/TestHash.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHash *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestHash_To_String_t method = (TESTCFISH_TestHash_To_String_t)cfish_obj_method(self, TESTCFISH_TestHash_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHash.h: In function ‘TESTCFISH_TestHash_Run’: autogen/include/Clownfish/Test/TestHash.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestHash *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestHash_Run_t method = (TESTCFISH_TestHash_Run_t)cfish_obj_method(self, TESTCFISH_TestHash_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:44: autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_Host’: autogen/include/Clownfish/Test/TestErr.h:130:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestErr *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestErr_To_Host_t method = (TESTCFISH_TestErr_To_Host_t)cfish_obj_method(self, TESTCFISH_TestErr_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Clone’: autogen/include/Clownfish/Test/TestErr.h:137:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestErr_Clone_t method = (TESTCFISH_TestErr_Clone_t)cfish_obj_method(self, TESTCFISH_TestErr_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Equals’: autogen/include/Clownfish/Test/TestErr.h:144:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestErr *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestErr_Equals_t method = (TESTCFISH_TestErr_Equals_t)cfish_obj_method(self, TESTCFISH_TestErr_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Compare_To’: autogen/include/Clownfish/Test/TestErr.h:151:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestErr *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestErr *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestErr_Compare_To_t method = (TESTCFISH_TestErr_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestErr_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_To_String’: autogen/include/Clownfish/Test/TestErr.h:165:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestErr *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestErr_To_String_t method = (TESTCFISH_TestErr_To_String_t)cfish_obj_method(self, TESTCFISH_TestErr_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestErr.h: In function ‘TESTCFISH_TestErr_Run’: autogen/include/Clownfish/Test/TestErr.h:172:44: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestErr *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestErr_Run_t method = (TESTCFISH_TestErr_Run_t)cfish_obj_method(self, TESTCFISH_TestErr_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:45: autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_Host’: autogen/include/Clownfish/Test/TestClass.h:130:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestClass *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestClass_To_Host_t method = (TESTCFISH_TestClass_To_Host_t)cfish_obj_method(self, TESTCFISH_TestClass_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Clone’: autogen/include/Clownfish/Test/TestClass.h:137:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestClass_Clone_t method = (TESTCFISH_TestClass_Clone_t)cfish_obj_method(self, TESTCFISH_TestClass_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Equals’: autogen/include/Clownfish/Test/TestClass.h:144:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestClass *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestClass_Equals_t method = (TESTCFISH_TestClass_Equals_t)cfish_obj_method(self, TESTCFISH_TestClass_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Compare_To’: autogen/include/Clownfish/Test/TestClass.h:151:53: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestClass *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestClass *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestClass_Compare_To_t method = (TESTCFISH_TestClass_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestClass_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_To_String’: autogen/include/Clownfish/Test/TestClass.h:165:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestClass *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestClass_To_String_t method = (TESTCFISH_TestClass_To_String_t)cfish_obj_method(self, TESTCFISH_TestClass_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestClass.h: In function ‘TESTCFISH_TestClass_Run’: autogen/include/Clownfish/Test/TestClass.h:172:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestClass *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestClass_Run_t method = (TESTCFISH_TestClass_Run_t)cfish_obj_method(self, TESTCFISH_TestClass_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:46: autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_Host’: autogen/include/Clownfish/Test/TestCharBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestCharBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestCB_To_Host_t method = (TESTCFISH_TestCB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestCB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Clone’: autogen/include/Clownfish/Test/TestCharBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestCB_Clone_t method = (TESTCFISH_TestCB_Clone_t)cfish_obj_method(self, TESTCFISH_TestCB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Equals’: autogen/include/Clownfish/Test/TestCharBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestCharBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestCB_Equals_t method = (TESTCFISH_TestCB_Equals_t)cfish_obj_method(self, TESTCFISH_TestCB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Compare_To’: autogen/include/Clownfish/Test/TestCharBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestCharBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestCharBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestCB_Compare_To_t method = (TESTCFISH_TestCB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestCB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_To_String’: autogen/include/Clownfish/Test/TestCharBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestCharBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestCB_To_String_t method = (TESTCFISH_TestCB_To_String_t)cfish_obj_method(self, TESTCFISH_TestCB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestCharBuf.h: In function ‘TESTCFISH_TestCB_Run’: autogen/include/Clownfish/Test/TestCharBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestCharBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestCB_Run_t method = (TESTCFISH_TestCB_Run_t)cfish_obj_method(self, TESTCFISH_TestCB_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:47: autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_Host’: autogen/include/Clownfish/Test/TestByteBuf.h:130:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestByteBuf *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBB_To_Host_t method = (TESTCFISH_TestBB_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBB_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Clone’: autogen/include/Clownfish/Test/TestByteBuf.h:137:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBB_Clone_t method = (TESTCFISH_TestBB_Clone_t)cfish_obj_method(self, TESTCFISH_TestBB_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Equals’: autogen/include/Clownfish/Test/TestByteBuf.h:144:46: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestByteBuf *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBB_Equals_t method = (TESTCFISH_TestBB_Equals_t)cfish_obj_method(self, TESTCFISH_TestBB_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Compare_To’: autogen/include/Clownfish/Test/TestByteBuf.h:151:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestByteBuf *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestByteBuf *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBB_Compare_To_t method = (TESTCFISH_TestBB_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBB_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_To_String’: autogen/include/Clownfish/Test/TestByteBuf.h:165:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestByteBuf *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBB_To_String_t method = (TESTCFISH_TestBB_To_String_t)cfish_obj_method(self, TESTCFISH_TestBB_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestByteBuf.h: In function ‘TESTCFISH_TestBB_Run’: autogen/include/Clownfish/Test/TestByteBuf.h:172:43: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestByteBuf *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBB_Run_t method = (TESTCFISH_TestBB_Run_t)cfish_obj_method(self, TESTCFISH_TestBB_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:48: autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_Host’: autogen/include/Clownfish/Test/TestBoolean.h:130:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBoolean *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBoolean_To_Host_t method = (TESTCFISH_TestBoolean_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Clone’: autogen/include/Clownfish/Test/TestBoolean.h:137:50: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBoolean_Clone_t method = (TESTCFISH_TestBoolean_Clone_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Equals’: autogen/include/Clownfish/Test/TestBoolean.h:144:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBoolean *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBoolean_Equals_t method = (TESTCFISH_TestBoolean_Equals_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Compare_To’: autogen/include/Clownfish/Test/TestBoolean.h:151:55: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBoolean *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBoolean *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBoolean_Compare_To_t method = (TESTCFISH_TestBoolean_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_To_String’: autogen/include/Clownfish/Test/TestBoolean.h:165:54: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBoolean *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBoolean_To_String_t method = (TESTCFISH_TestBoolean_To_String_t)cfish_obj_method(self, TESTCFISH_TestBoolean_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBoolean.h: In function ‘TESTCFISH_TestBoolean_Run’: autogen/include/Clownfish/Test/TestBoolean.h:172:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBoolean *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBoolean_Run_t method = (TESTCFISH_TestBoolean_Run_t)cfish_obj_method(self, TESTCFISH_TestBoolean_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:49: autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_Host’: autogen/include/Clownfish/Test/TestBlob.h:130:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestBlob *, void *)’ [-Wcast-function-type] 130 | const TESTCFISH_TestBlob_To_Host_t method = (TESTCFISH_TestBlob_To_Host_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Clone’: autogen/include/Clownfish/Test/TestBlob.h:137:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 137 | const TESTCFISH_TestBlob_Clone_t method = (TESTCFISH_TestBlob_Clone_t)cfish_obj_method(self, TESTCFISH_TestBlob_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Equals’: autogen/include/Clownfish/Test/TestBlob.h:144:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestBlob *, cfish_Obj *)’ [-Wcast-function-type] 144 | const TESTCFISH_TestBlob_Equals_t method = (TESTCFISH_TestBlob_Equals_t)cfish_obj_method(self, TESTCFISH_TestBlob_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Compare_To’: autogen/include/Clownfish/Test/TestBlob.h:151:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestBlob *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestBlob *, cfish_Obj *)’} [-Wcast-function-type] 151 | const TESTCFISH_TestBlob_Compare_To_t method = (TESTCFISH_TestBlob_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestBlob_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_To_String’: autogen/include/Clownfish/Test/TestBlob.h:165:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestBlob *)’ [-Wcast-function-type] 165 | const TESTCFISH_TestBlob_To_String_t method = (TESTCFISH_TestBlob_To_String_t)cfish_obj_method(self, TESTCFISH_TestBlob_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestBlob.h: In function ‘TESTCFISH_TestBlob_Run’: autogen/include/Clownfish/Test/TestBlob.h:172:45: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void (*)(testcfish_TestBlob *, cfish_TestBatchRunner *)’ [-Wcast-function-type] 172 | const TESTCFISH_TestBlob_Run_t method = (TESTCFISH_TestBlob_Run_t)cfish_obj_method(self, TESTCFISH_TestBlob_Run_OFFSET); | ^ In file included from autogen/source/testcfish_perl.c:51: autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_To_Host’: autogen/include/Clownfish/Test/TestHost.h:220:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHost *, void *)’ [-Wcast-function-type] 220 | const TESTCFISH_TestHost_To_Host_t method = (TESTCFISH_TestHost_To_Host_t)cfish_obj_method(self, TESTCFISH_TestHost_To_Host_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Clone’: autogen/include/Clownfish/Test/TestHost.h:227:47: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 227 | const TESTCFISH_TestHost_Clone_t method = (TESTCFISH_TestHost_Clone_t)cfish_obj_method(self, TESTCFISH_TestHost_Clone_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Equals’: autogen/include/Clownfish/Test/TestHost.h:234:48: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 234 | const TESTCFISH_TestHost_Equals_t method = (TESTCFISH_TestHost_Equals_t)cfish_obj_method(self, TESTCFISH_TestHost_Equals_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Compare_To’: autogen/include/Clownfish/Test/TestHost.h:241:52: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, cfish_Obj *)’ {aka ‘int (*)(testcfish_TestHost *, cfish_Obj *)’} [-Wcast-function-type] 241 | const TESTCFISH_TestHost_Compare_To_t method = (TESTCFISH_TestHost_Compare_To_t)cfish_obj_method(self, TESTCFISH_TestHost_Compare_To_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_To_String’: autogen/include/Clownfish/Test/TestHost.h:255:51: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 255 | const TESTCFISH_TestHost_To_String_t method = (TESTCFISH_TestHost_To_String_t)cfish_obj_method(self, TESTCFISH_TestHost_To_String_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:262:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 262 | const TESTCFISH_TestHost_Test_Obj_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Obj_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:269:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *)’ [-Wcast-function-type] 269 | const TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:276:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ [-Wcast-function-type] 276 | const TESTCFISH_TestHost_Test_Obj_Label_Arg_t method = (TESTCFISH_TestHost_Test_Obj_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Obj_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:283:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_Obj * (*)(testcfish_TestHost *, cfish_Obj *, _Bool)’ [-Wcast-function-type] 283 | const TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Obj_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:290:60: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} [-Wcast-function-type] 290 | const TESTCFISH_TestHost_Test_Int32_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Int32_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:297:64: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t)’ {aka ‘int (*)(testcfish_TestHost *, int)’} [-Wcast-function-type] 297 | const TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:304:62: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} [-Wcast-function-type] 304 | const TESTCFISH_TestHost_Test_Int32_Label_Arg_t method = (TESTCFISH_TestHost_Test_Int32_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Int32_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:311:66: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘int32_t (*)(testcfish_TestHost *, int32_t, _Bool)’ {aka ‘int (*)(testcfish_TestHost *, int, _Bool)’} [-Wcast-function-type] 311 | const TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Int32_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Pos_Arg’: autogen/include/Clownfish/Test/TestHost.h:318:59: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool)’ [-Wcast-function-type] 318 | const TESTCFISH_TestHost_Test_Bool_Pos_Arg_t method = (TESTCFISH_TestHost_Test_Bool_Pos_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Pos_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:325:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool)’ [-Wcast-function-type] 325 | const TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_t method = (TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Pos_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Label_Arg’: autogen/include/Clownfish/Test/TestHost.h:332:61: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ [-Wcast-function-type] 332 | const TESTCFISH_TestHost_Test_Bool_Label_Arg_t method = (TESTCFISH_TestHost_Test_Bool_Label_Arg_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Label_Arg_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Test_Bool_Label_Arg_Def’: autogen/include/Clownfish/Test/TestHost.h:339:65: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘_Bool (*)(testcfish_TestHost *, _Bool, _Bool)’ [-Wcast-function-type] 339 | const TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_t method = (TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_t)cfish_obj_method(self, TESTCFISH_TestHost_Test_Bool_Label_Arg_Def_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Invalid_Callback’: autogen/include/Clownfish/Test/TestHost.h:346:58: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘void * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 346 | const TESTCFISH_TestHost_Invalid_Callback_t method = (TESTCFISH_TestHost_Invalid_Callback_t)cfish_obj_method(self, TESTCFISH_TestHost_Invalid_Callback_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Aliased’: autogen/include/Clownfish/Test/TestHost.h:360:49: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 360 | const TESTCFISH_TestHost_Aliased_t method = (TESTCFISH_TestHost_Aliased_t)cfish_obj_method(self, TESTCFISH_TestHost_Aliased_OFFSET); | ^ autogen/include/Clownfish/Test/TestHost.h: In function ‘TESTCFISH_TestHost_Invoke_Aliased_From_C’: autogen/include/Clownfish/Test/TestHost.h:367:63: warning: cast between incompatible function types from ‘cfish_method_t’ {aka ‘void (*)(const void *)’} to ‘cfish_String * (*)(testcfish_TestHost *)’ [-Wcast-function-type] 367 | const TESTCFISH_TestHost_Invoke_Aliased_From_C_t method = (TESTCFISH_TestHost_Invoke_Aliased_From_C_t)cfish_obj_method(self, TESTCFISH_TestHost_Invoke_Aliased_From_C_OFFSET); | ^ autogen/source/testcfish_perl.c: At top level: autogen/source/testcfish_perl.c:108:1: warning: ‘S_finish_callback_f64’ defined but not used [-Wunused-function] 108 | S_finish_callback_f64(pTHX_ const char *meth_name) { | ^~~~~~~~~~~~~~~~~~~~~ gcc -Icfcore -Ixs -I. -Iautogen/include -I/usr/lib64/perl5/CORE '-DVERSION="0.6.3"' '-DXS_VERSION="0.6.3"' -fPIC -c -D_REENTRANT -D_GNU_SOURCE -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wno-complain-wrong-lang '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE '-D_FILE_OFFSET_BITS=64' -O2 '-flto=auto' -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall '-Werror=format-security' '-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3' -Wp,-D_GLIBCXX_ASSERTIONS '-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1' -fstack-protector-strong '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' -m64 '-march=x86-64' '-mtune=generic' -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -o lib/Clownfish/Test.o lib/Clownfish/Test.c gcc -lpthread -shared -Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now '-specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors' '-specs=/usr/lib/rpm/redhat/redhat-hardened-ld' '-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1' '-Wl,--build-id=sha1' -L/usr/local/lib -fstack-protector-strong -lperl -o blib/arch/auto/Clownfish/Test/Test.so lib/Clownfish/Test.o cftest/Clownfish/Test/Util/TestMemory.o cftest/Clownfish/Test/Util/TestAtomic.o cftest/Clownfish/Test/TestVector.o cftest/Clownfish/Test/TestString.o cftest/Clownfish/Test/TestPtrHash.o cftest/Clownfish/Test/TestObj.o cftest/Clownfish/Test/TestNum.o cftest/Clownfish/Test/TestMethod.o cftest/Clownfish/Test/TestLockFreeRegistry.o cftest/Clownfish/Test/TestHost.o cftest/Clownfish/Test/TestHashIterator.o cftest/Clownfish/Test/TestHash.o cftest/Clownfish/Test/TestErr.o cftest/Clownfish/Test/TestClass.o cftest/Clownfish/Test/TestCharBuf.o cftest/Clownfish/Test/TestByteBuf.o cftest/Clownfish/Test/TestBoolean.o cftest/Clownfish/Test/TestBlob.o cftest/Clownfish/Test.o cftest/TestClownfish.o autogen/source/testcfish_parcel.o autogen/source/testcfish_perl.o -l m + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.ivyOkP + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 ++ dirname /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd Clownfish-0.6.3 + ./Build install destdir=/builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 create_packlist=0 Building Clownfish make core_objects make: Nothing to be done for 'core_objects'. make test_objects make: Nothing to be done for 'test_objects'. Files found in blib/arch: installing files in blib/lib into architecture dependent library tree Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/auto/Clownfish/Clownfish.so Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/auto/Clownfish/Clownfish.bs Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/XSBind.h Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/parcel_perl.json Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/parcel.json Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Blob.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Boolean.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/ByteBuf.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/CharBuf.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Class.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Err.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Hash.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/HashIterator.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Method.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Num.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Obj.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/String.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Vector.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/TestHarness/TestBatch.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/TestHarness/TestBatchRunner.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/TestHarness/TestFormatter.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/TestHarness/TestSuite.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/TestHarness/TestSuiteRunner.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/TestHarness/TestUtils.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Util/Memory.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/_include/Clownfish/v0.6.3/Clownfish/Util/SortUtils.cfh Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Vector.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/StringIterator.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/String.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Obj.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Integer.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/HashIterator.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Hash.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Float.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Err.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Class.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/CharBuf.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/ByteBuf.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Boolean.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Blob.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Vector.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/String.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Obj.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Integer.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/HashIterator.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Hash.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Float.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Err.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Class.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/CharBuf.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/ByteBuf.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Boolean.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Blob.pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Docs/WritingClasses.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Docs/ClassIntro.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/lib64/perl5/vendor_perl/Clownfish/Docs/BuildingProjects.pod Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Vector.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::StringIterator.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::String.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Obj.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Integer.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::HashIterator.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Hash.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Float.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Err.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Docs::WritingClasses.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Docs::ClassIntro.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Docs::BuildingProjects.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Class.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::CharBuf.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::ByteBuf.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Boolean.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish::Blob.3pm Installing /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/man/man3/Clownfish.3pm + find /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 -type f -name '*.bs' -size 0 -delete + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr + /usr/bin/find-debuginfo -j4 --strict-build-id -m -i --build-id-seed 0.6.3-21.fc41 --unique-debug-suffix -0.6.3-21.fc41.x86_64 --unique-debug-src-base perl-Clownfish-0.6.3-21.fc41.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 -S debugsourcefiles.list /builddir/build/BUILD/Clownfish-0.6.3 find-debuginfo: starting Extracting debug info from 1 files DWARF-compressing 1 files sepdebugcrcfix: Updated 1 CRC32s, 0 CRC32s did match. Creating .debug symlinks for symlinks to ELF files Copying sources found by 'debugedit -l' to /usr/src/debug/perl-Clownfish-0.6.3-21.fc41.x86_64 1841 blocks find-debuginfo: done + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j4 + /usr/lib/rpm/redhat/brp-python-hardlink Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.G8SZN9 + umask 022 + cd /builddir/build/BUILD + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld-errors -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd Clownfish-0.6.3 + ./Build test make core_objects make: Nothing to be done for 'core_objects'. make test_objects make: Nothing to be done for 'test_objects'. t/binding/002-clownfish.t .. ok t/binding/010-class.t ...... ok t/binding/016-vector.t ..... ok t/binding/017-hash.t ....... ok t/binding/018-host.t ....... ok t/binding/019-obj.t ........ ok t/binding/021-blob.t ....... ok t/binding/022-bytebuf.t .... ok t/binding/023-string.t ..... ok t/binding/029-charbuf.t .... ok t/binding/031-num.t ........ ok t/binding/034-err.t ........ ok t/core/010-class.t ......... ok t/core/011-method.t ........ ok t/core/016-vector.t ........ ok t/core/017-hash.t .......... ok t/core/019-obj.t ........... ok t/core/020-err.t ........... ok t/core/021-blob.t .......... ok t/core/022-bytebuf.t ....... ok t/core/023-string.t ........ ok t/core/029-charbuf.t ....... ok t/core/030-boolean.t ....... ok t/core/031-num.t ........... ok t/core/037-atomic.t ........ ok t/core/039-memory.t ........ ok t/core/050-ptrhash.t ....... ok All tests successful. Files=27, Tests=739, 0 wallclock secs ( 0.05 usr 0.03 sys + 0.67 cusr 0.10 csys = 0.85 CPU) Result: PASS + RPM_EC=0 ++ jobs -p + exit 0 Processing files: perl-Clownfish-0.6.3-21.fc41.x86_64 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.KztEbG + umask 022 + cd /builddir/build/BUILD + cd Clownfish-0.6.3 + DOCDIR=/builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/doc/perl-Clownfish + export LC_ALL= + LC_ALL= + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/doc/perl-Clownfish + cp -pr /builddir/build/BUILD/Clownfish-0.6.3/CONTRIBUTING.md /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/doc/perl-Clownfish + cp -pr /builddir/build/BUILD/Clownfish-0.6.3/NOTICE /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/doc/perl-Clownfish + cp -pr /builddir/build/BUILD/Clownfish-0.6.3/README.md /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/doc/perl-Clownfish + RPM_EC=0 ++ jobs -p + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.LT32rS + umask 022 + cd /builddir/build/BUILD + cd Clownfish-0.6.3 + LICENSEDIR=/builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/licenses/perl-Clownfish + export LC_ALL= + LC_ALL= + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/licenses/perl-Clownfish + cp -pr /builddir/build/BUILD/Clownfish-0.6.3/LICENSE /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64/usr/share/licenses/perl-Clownfish + RPM_EC=0 ++ jobs -p + exit 0 Provides: perl(Clownfish) = 0.006003 perl(Clownfish::Blob) = 0.006003 perl(Clownfish::Boolean) = 0.006003 perl(Clownfish::ByteBuf) = 0.006003 perl(Clownfish::CharBuf) = 0.006003 perl(Clownfish::Class) = 0.006003 perl(Clownfish::Err) = 0.006003 perl(Clownfish::Float) = 0.006003 perl(Clownfish::Hash) = 0.006003 perl(Clownfish::HashIterator) = 0.006003 perl(Clownfish::Integer) = 0.006003 perl(Clownfish::Method) = 0.006003 perl(Clownfish::Obj) = 0.006003 perl(Clownfish::String) = 0.006003 perl(Clownfish::Vector) = 0.006003 perl-Clownfish = 0.6.3-21.fc41 perl-Clownfish(x86-64) = 0.6.3-21.fc41 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: ld-linux-x86-64.so.2()(64bit) ld-linux-x86-64.so.2(GLIBC_2.3)(64bit) libc.so.6()(64bit) libc.so.6(GLIBC_2.14)(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.34)(64bit) libc.so.6(GLIBC_2.4)(64bit) libc.so.6(GLIBC_ABI_DT_RELR)(64bit) perl(:MODULE_COMPAT_5.38.2) perl(:VERSION) >= 5.8.3 perl(Carp) perl(Clownfish) perl(Exporter) perl(Scalar::Util) perl(overload) perl(strict) perl(warnings) perl-libs rtld(GNU_HASH) Processing files: perl-Clownfish-debugsource-0.6.3-21.fc41.x86_64 Provides: perl-Clownfish-debugsource = 0.6.3-21.fc41 perl-Clownfish-debugsource(x86-64) = 0.6.3-21.fc41 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Processing files: perl-Clownfish-debuginfo-0.6.3-21.fc41.x86_64 Provides: debuginfo(build-id) = 108bd0f297b2ea86d6a1468381f1028ca4b1f37f perl-Clownfish-debuginfo = 0.6.3-21.fc41 perl-Clownfish-debuginfo(x86-64) = 0.6.3-21.fc41 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Recommends: perl-Clownfish-debugsource(x86-64) = 0.6.3-21.fc41 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 Wrote: /builddir/build/RPMS/perl-Clownfish-0.6.3-21.fc41.x86_64.rpm Wrote: /builddir/build/RPMS/perl-Clownfish-debuginfo-0.6.3-21.fc41.x86_64.rpm Wrote: /builddir/build/RPMS/perl-Clownfish-debugsource-0.6.3-21.fc41.x86_64.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.EHH4qd + umask 022 + cd /builddir/build/BUILD + cd Clownfish-0.6.3 + /usr/bin/rm -rf /builddir/build/BUILDROOT/perl-Clownfish-0.6.3-21.fc41.x86_64 + RPM_EC=0 ++ jobs -p + exit 0 Executing(rmbuild): /bin/sh -e /var/tmp/rpm-tmp.QvPSdF + umask 022 + cd /builddir/build/BUILD + rm -rf /builddir/build/BUILD/Clownfish-0.6.3-SPECPARTS + rm -rf Clownfish-0.6.3 Clownfish-0.6.3.gemspec + RPM_EC=0 ++ jobs -p + exit 0 Finish: rpmbuild perl-Clownfish-0.6.3-21.fc41.src.rpm Finish: build phase for perl-Clownfish-0.6.3-21.fc41.src.rpm INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1709237375.611783/root/var/log/dnf5.log INFO: Done(/var/lib/copr-rpmbuild/results/perl-Clownfish-0.6.3-21.fc41.src.rpm) Config(child) 0 minutes 20 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot Finish: run Running RPMResults tool Package info: { "packages": [ { "name": "perl-Clownfish-debugsource", "epoch": null, "version": "0.6.3", "release": "21.fc41", "arch": "x86_64" }, { "name": "perl-Clownfish-debuginfo", "epoch": null, "version": "0.6.3", "release": "21.fc41", "arch": "x86_64" }, { "name": "perl-Clownfish", "epoch": null, "version": "0.6.3", "release": "21.fc41", "arch": "x86_64" }, { "name": "perl-Clownfish", "epoch": null, "version": "0.6.3", "release": "21.fc41", "arch": "src" } ] } RPMResults finished