Hello, The compile flag I used in the patch, -Wno-error=incompatible-pointer-types, has been used since presumably forever to build zsync. Note that the code of zsync has not changed since at least old-old stable: the zsync builds still in Debian unstable and <= 12 were made using it. The issue (and FTBFS) was introduced when GCC-14 switched flags to -Werror=incompatible-pointer-types, which upgraded the warning to an error (see e.g. "Type checking on pointer types" at https://gcc.gnu.org/gcc-14/porting_to.html) <https://gcc.gnu.org/gcc-14/porting_to.html>. As I wrote, the patch
> solves the build failure by restoring its behavior to what it was pre-gcc-14. If that was good enough in the past, then it should be good enough until the live-build developers find an alternative tool to provide the binary_zsync build step. I do agree this would be the best solution given that zsync development has halted. Best P.S.: The implicit cast from "long int" to "long long int" is not the only one. If you assume the upstream developers knew what they were doing when they used it (which is what Debian is doing since at least old-old stable) and try to fix that by an explicit cast - which you can do because the signature of the function is known - then another comes up, and then another, and so on. zsync is full of implicit casts and it doesn't seem very practical to fix all of them.