Date: Mon, 12 Dec 2022 15:32:25 GMT From: Dimitry Andric <dim@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 5925cd3e9c3c - main - security/cracklib: fix build with clang 15 Message-ID: <202212121532.2BCFWPC4057011@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by dim (src committer): URL: https://cgit.FreeBSD.org/ports/commit/?id=5925cd3e9c3cea926aee6c78aaa1f708665dfa8d commit 5925cd3e9c3cea926aee6c78aaa1f708665dfa8d Author: Dimitry Andric <dim@FreeBSD.org> AuthorDate: 2022-12-12 15:09:19 +0000 Commit: Dimitry Andric <dim@FreeBSD.org> CommitDate: 2022-12-12 15:31:26 +0000 security/cracklib: fix build with clang 15 During an exp-run for llvm 15 (see bug 265425), it turned out that security/cracklib failed to build with clang 15: rules.c:346:50: warning: too few arguments in call to 'Debug' Debug(1, "MatchClass: unknown class %c\n", class); ~~~~~ ^ rules.c:346:45: error: incompatible integer to pointer conversion passing 'char' to parameter of type 'char *'; take the address with & [-Wint-conversion] Debug(1, "MatchClass: unknown class %c\n", class); ^~~~~ & This is because cracklib is very old K&R source, and the Debug() function is not defined with varargs, but an arbitrary amount of char pointer arguments. Since the Debug() function does nothing anyway, define it as a varargs macro instead. This also gets rid of most of the other compilation warnings. PR: 268334 Approved by: cy (maintainer) MFH: 2022Q4 --- security/cracklib/files/patch-lib_rules.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/security/cracklib/files/patch-lib_rules.c b/security/cracklib/files/patch-lib_rules.c new file mode 100644 index 000000000000..db39252161ad --- /dev/null +++ b/security/cracklib/files/patch-lib_rules.c @@ -0,0 +1,11 @@ +--- lib/rules.c.orig 2019-02-14 01:54:41 UTC ++++ lib/rules.c +@@ -26,6 +26,8 @@ Debug(val, a, b, c, d, e, f, g) + { + fprintf(stderr, a, b, c, d, e, f, g); + } ++#elif 1 ++#define Debug(n, f, ...) do {} while (0) + #else + static void + Debug(val, a, b, c, d, e, f, g)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202212121532.2BCFWPC4057011>