* builtin-types.def (BT_FN_STRING_CONST_STRING_SIZE): New.
authorghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 26 Mar 2005 02:25:30 +0000 (02:25 +0000)
committerghazi <ghazi@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 26 Mar 2005 02:25:30 +0000 (02:25 +0000)
* builtins.def (BUILT_IN_STRNDUP): New.

testsuite:
* gcc.dg/nonnull-3.c: Also test __builtin_strndup.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97077 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/builtin-types.def
gcc/builtins.def
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/nonnull-3.c

index 71e4822..fb5ac86 100644 (file)
@@ -1,3 +1,8 @@
+2005-03-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * builtin-types.def (BT_FN_STRING_CONST_STRING_SIZE): New.
+       * builtins.def (BUILT_IN_STRNDUP): New.
+
 2005-03-25  Pat Haugen  <pthaugen@us.ibm.com>
 
        PR tree-optimization/20470
index 8458631..a3c804c 100644 (file)
@@ -172,6 +172,8 @@ DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_STRING_CONST_STRING,
                     BT_SIZE, BT_CONST_STRING, BT_CONST_STRING)
 DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_INT,
                     BT_STRING, BT_CONST_STRING, BT_INT)
+DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_SIZE,
+                    BT_STRING, BT_CONST_STRING, BT_SIZE)
 DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_FILEPTR,
                     BT_INT, BT_CONST_STRING, BT_FILEPTR)
 DEF_FUNCTION_TYPE_2 (BT_FN_INT_INT_FILEPTR,
index d324e01..394723e 100644 (file)
@@ -468,6 +468,7 @@ DEF_LIB_BUILTIN        (BUILT_IN_STRCMP, "strcmp", BT_FN_INT_CONST_STRING_CONST_
 DEF_LIB_BUILTIN        (BUILT_IN_STRCPY, "strcpy", BT_FN_STRING_STRING_CONST_STRING, ATTR_NOTHROW_NONNULL)
 DEF_LIB_BUILTIN        (BUILT_IN_STRCSPN, "strcspn", BT_FN_SIZE_CONST_STRING_CONST_STRING, ATTR_PURE_NOTHROW_NONNULL)
 DEF_EXT_LIB_BUILTIN    (BUILT_IN_STRDUP, "strdup", BT_FN_STRING_CONST_STRING, ATTR_MALLOC_NOTHROW_NONNULL)
+DEF_EXT_LIB_BUILTIN    (BUILT_IN_STRNDUP, "strndup", BT_FN_STRING_CONST_STRING_SIZE, ATTR_MALLOC_NOTHROW_NONNULL)
 DEF_LIB_BUILTIN        (BUILT_IN_STRLEN, "strlen", BT_FN_SIZE_CONST_STRING, ATTR_PURE_NOTHROW_NONNULL)
 DEF_LIB_BUILTIN        (BUILT_IN_STRNCAT, "strncat", BT_FN_STRING_STRING_CONST_STRING_SIZE, ATTR_NOTHROW_NONNULL)
 DEF_LIB_BUILTIN        (BUILT_IN_STRNCMP, "strncmp", BT_FN_INT_CONST_STRING_CONST_STRING_SIZE, ATTR_PURE_NOTHROW_NONNULL)
index 9e5cdf9..03e5d9b 100644 (file)
@@ -1,3 +1,7 @@
+2005-03-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * gcc.dg/nonnull-3.c: Also test __builtin_strndup.
+
 2005-03-25  Mark Mitchell  <mark@codesourcery.com>
 
        * lib/g++.exp (g++_link_flags): Use gcc-set-multilib-library-path.
index 3b53eaf..e8725cf 100644 (file)
@@ -51,6 +51,7 @@ foo (void *p, char *s)
   __builtin_strchr (NULL, 16);  /* { dg-warning "null" "null pointer check" } */
   __builtin_strrchr (NULL, 16);  /* { dg-warning "null" "null pointer check" } */
   __builtin_strdup (NULL);  /* { dg-warning "null" "null pointer check" } */
+  __builtin_strndup (NULL, 16);  /* { dg-warning "null" "null pointer check" } */
 
   __builtin_nan (NULL);  /* { dg-warning "null" "null pointer check" } */
   __builtin_nanf (NULL);  /* { dg-warning "null" "null pointer check" } */