Index: ccidemain.c
--- ccidemain.c.orig	2004-09-28 17:18:35 +0200
+++ ccidemain.c	2006-10-12 10:45:16 +0200
@@ -465,7 +465,9 @@
 #endif
 
 	free(lws);
-	lws = strndup(s1,s-s1);       
+	lws = malloc(s-s1+1);
+	memcpy(lws, s1, s-s1);
+	lws[s-s1] = '\0';
 
 }
 
Index: ccidemain.h
--- ccidemain.h.orig	2004-09-27 18:36:43 +0200
+++ ccidemain.h	2006-10-12 10:45:49 +0200
@@ -107,7 +107,6 @@
 extern int uselocaltime;   /* 1=local time instead of UTC in timestamp 	*/
 extern int checkequal;     /* 0=bypasss checking for '=' in cond stub. 	*/
 extern int changequote;	   /* 1=issue m4 changequote macro 		*/
-extern char bufs[4096];
 extern char *M4Comment;	   /* // for C++ code, else CCIDE_COMMENT() 	*/
 extern char *pComment;     /*  for C, // for C++, ... 			*/
 extern char *pEcomment;    /*  for C, // for C++, ... 			*/
