5925cd3e9c
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
12 lines
264 B
C
12 lines
264 B
C
--- 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)
|