https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/ Issue: app-text/discount-2.2.7b fails to compile (MUSL-CLANG-SYSTEM). Discovered on: amd64 (internal ref: tinderbox_musl) NOTE: (MUSL-CLANG-SYSTEM) in the summary means that bug was found on a machine that runs MUSL libc + clang16 but this bug MAY or MAY NOT BE related to musl/clang16.
Created attachment 851222 [details] build.log build log and emerge --info
Error(s) that match a know pattern in addition to what has been reported in the summary: generate.c:629:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] gethopt.c:13:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] gethopt.c:26:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] gethopt.c:33:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] gethopt.c:40:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] gethopt.c:48:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] gethopt.c:59:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] makepage.c:33:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] mkd2html.c:88:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] theme.c:530:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] tools/branch.c:7:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] tools/cols.c:5:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] tools/echo.c:7:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] tools/pandoc_headers.c:53:1: warning: a function definition without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] main.c:311:29: error: incompatible function pointer types passing 'char *(char *, int, char *)' to parameter of type 'mkd_callback_t' (aka 'char *(*)(const char *, const int, void *)') [-Wincompatible-function-pointer-types]
Confirmed still a problem for app-text/discount-2.2.7c, but currently masked version app-text/discount-3.0.0a compiles and installs correctly.
(In reply to Jonathan Marten from comment #3) > Confirmed still a problem for app-text/discount-2.2.7c, but > currently masked version app-text/discount-3.0.0a compiles and installs > correctly. I can confirm that as well.
Looks like its fixed with discount-3.0.0a
Yes unfortunately when I last checked, it breaks most consumers of discount, due to API changes. I'll take a look and see if the situation has improved. If you're just using discount directly (not as a dep of something else), feel free to unmask 3.0.0a and use it.
gcc14_tinderbox has reproduced this issue with version 2.2.7c - Updating summary.
app-text/discount-2.2.7c (as per original bug titel) is not contained to muscl, fails wtih with gcc-14 on glibc and requires use of -fpermissive main.c:311:36: warning: passing argument 2 of ‘mkd_e_code_format’ from incompatible pointer type [-Wincompatible-pointer-types] 311 | mkd_e_code_format(doc, external_codefmt); | ^~~~~~~~~~~~~~~~ | | | char * (*)(char *, int, char *)