cyrus-sasl2 trips over C23 because its md5 code still defaults to no
prototypes because this feature is way to modern for such a critical
piece of software.

In C23 a prototype of static void MD5_memcpy () is equal to
static void MD5_memcpy (void) which is not what we want.

-- 
:wq Claudio

Index: patches/patch-include_makemd5_c
===================================================================
RCS file: patches/patch-include_makemd5_c
diff -N patches/patch-include_makemd5_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-include_makemd5_c     17 Nov 2025 14:08:08 -0000
@@ -0,0 +1,19 @@
+Enable PROTOTYPES by default, even base-gcc handles this modern feature.
+
+Index: include/makemd5.c
+--- include/makemd5.c.orig
++++ include/makemd5.c
+@@ -155,11 +155,11 @@ static int print_pre(FILE *f)
+         "\n"
+         "/* PROTOTYPES should be set to one if and only if the compiler 
supports\n"
+         "  function argument prototyping.\n"
+-        "The following makes PROTOTYPES default to 0 if it has not already\n"
++        "The following makes PROTOTYPES default to 1 if it has not already\n"
+         "  been defined with C compiler flags.\n"
+         " */\n"
+         "#ifndef PROTOTYPES\n"
+-        "#define PROTOTYPES 0\n"
++        "#define PROTOTYPES 1\n"
+         "#endif\n"
+         "\n"
+         "/* POINTER defines a generic pointer type */\n"

Reply via email to