diff --git a/src/stralloc.c b/src/stralloc.c
index fda52dc711959f030251feb18e60f792cd89c9ab..cb2fa6b626391f63d6d25b22144301aaf165a0da 100644
--- a/src/stralloc.c
+++ b/src/stralloc.c
@@ -405,7 +405,7 @@ PMOD_EXPORT p_wchar2 generic_extract (const void *str, int size, ptrdiff_t pos)
   return 0;
 }
 
-static void locate_problem(int (*isproblem)(struct pike_string *))
+static void locate_problem(int (*isproblem)(const struct pike_string *))
 {
   unsigned INT32 e;
   struct pike_string *s;