]> pd.if.org Git - pdclib/blobdiff - functions/string/strndup.c
RegTest gives warning about implicitly declared functions. Fixed.
[pdclib] / functions / string / strndup.c
index e25c7ed967855955b824c27443f4f31817abc44f..15c44be27f23dc717acc718dd8dddb60f7e28bdf 100644 (file)
@@ -4,6 +4,10 @@
    Permission is granted to use, modify, and / or redistribute at will.\r
 */\r
 \r
+#ifdef REGTEST\r
+#define _POSIX_C_SOURCE 200809L\r
+#endif\r
+\r
 #include <string.h>\r
 #include <stdlib.h>\r
 \r
@@ -31,25 +35,28 @@ char *strndup( const char * s, size_t len )
 \r
 int main( void )\r
 {\r
+#ifndef REGTEST\r
+    /* Missing on Windows. Maybe use conditionals? */\r
     const char *teststr  = "Hello, world";\r
     const char *teststr2 = "\xFE\x8C\n";\r
     char *testres, *testres2;\r
 \r
-    TESTCASE(testres  = strndup(teststr, 5));\r
-    TESTCASE(testres2 = strndup(teststr2, 1));\r
+    TESTCASE((testres  = strndup(teststr, 5)) != NULL);\r
+    TESTCASE((testres2 = strndup(teststr2, 1)) != NULL);\r
     TESTCASE(strcmp(testres, teststr) != 0);\r
     TESTCASE(strncmp(testres, teststr, 5) == 0);\r
     TESTCASE(strcmp(testres2, teststr2) != 0);\r
     TESTCASE(strncmp(testres2, teststr2, 1) == 0);\r
     free(testres);\r
     free(testres2);\r
-    TESTCASE(testres  = strndup(teststr, 20));\r
-    TESTCASE(testres2 = strndup(teststr2, 5));\r
+    TESTCASE((testres  = strndup(teststr, 20)) != NULL);\r
+    TESTCASE((testres2 = strndup(teststr2, 5)) != NULL);\r
     TESTCASE(strcmp(testres, teststr) == 0);\r
     TESTCASE(strcmp(testres2, teststr2) == 0);\r
     free(testres);\r
     free(testres2);\r
-    \r
+#endif\r
+\r
     return TEST_RESULTS;\r
 }\r
 \r