diff --git a/src/interfaces/ecpg/compatlib/informix.c b/src/interfaces/ecpg/compatlib/informix.c
index 739b83a895c6041c141f349ad90a3a8412af2a53..07b4dbb691e48ac797b484346d5b1b3a7a091cc6 100644
--- a/src/interfaces/ecpg/compatlib/informix.c
+++ b/src/interfaces/ecpg/compatlib/informix.c
@@ -135,7 +135,7 @@ deccopy(decimal * src, decimal * target)
 }
 
 static char *
-strndup(const char *str, size_t len)
+ecpg_strndup(const char *str, size_t len)
 {
 	int			real_len = strlen(str);
 	int			use_len = (real_len > len) ? len : real_len;
@@ -156,7 +156,7 @@ strndup(const char *str, size_t len)
 int
 deccvasc(char *cp, int len, decimal * np)
 {
-	char	   *str = strndup(cp, len); /* decimal_in always converts the
+	char	   *str = ecpg_strndup(cp, len); /* decimal_in always converts the
 										 * complete string */
 	int			ret = 0;
 	numeric    *result;