diff --git a/cfg/posix.cfg b/cfg/posix.cfg
index f4f8720cc..053092eb3 100644
--- a/cfg/posix.cfg
+++ b/cfg/posix.cfg
@@ -4717,6 +4717,7 @@ The function 'mktemp' is considered to be dangerous due to race conditions and s
false
+
@@ -4737,6 +4738,7 @@ The function 'mktemp' is considered to be dangerous due to race conditions and s
false
+
@@ -4757,6 +4759,7 @@ The function 'mktemp' is considered to be dangerous due to race conditions and s
false
+
diff --git a/test/cfg/posix.c b/test/cfg/posix.c
index affa721a1..e9740a6bc 100644
--- a/test/cfg/posix.c
+++ b/test/cfg/posix.c
@@ -26,6 +26,35 @@
#include
#include
#include
+#include
+#include
+
+void overlappingWriteFunction_memccpy(unsigned char *src, unsigned char *dest, int c, size_t count)
+{
+ // No warning shall be shown:
+ (void)memccpy(dest, src, c, count);
+ (void)memccpy(dest, src, 42, count);
+ // cppcheck-suppress overlappingWriteFunction
+ (void)memccpy(dest, dest, c, 4);
+ // cppcheck-suppress overlappingWriteFunction
+ (void)memccpy(dest, dest+3, c, 4);
+}
+
+void overlappingWriteFunction_stpncpy(char *src, char *dest, ssize_t n)
+{
+ // No warning shall be shown:
+ (void) stpncpy(dest, src, n);
+ // cppcheck-suppress overlappingWriteFunction
+ (void)stpncpy(src, src+3, 4);
+}
+
+wchar_t* overlappingWriteFunction_wcpncpy(wchar_t *src, wchar_t *dest, ssize_t n)
+{
+ // No warning shall be shown:
+ (void) wcpncpy(dest, src, n);
+ // cppcheck-suppress overlappingWriteFunction
+ return wcpncpy(src, src+3, 4);
+}
void overlappingWriteFunction_swab(char *src, char *dest, ssize_t n)
{