@@ -0,0 +1,10 @@
+/* PR middle-end/78858 */
+/* { dg-do compile } */
+/* { dg-options "-fsanitize=undefined -Wnonnull" } */
+
+void
+foo (char **x, const char *y)
+{
+ *x = (char *) __builtin_malloc (__builtin_strlen (y) + 1); /* { dg-bogus "argument 1 null where non-null expected" } */
+ __builtin_strcpy (*x, y);
+}
@@ -0,0 +1,11 @@
+/* Reduced from https://sourceware.org/bugzilla/show_bug.cgi?id=20978 */
+/* { dg-do compile } */
+/* { dg-options "-O2 -Wnonnull" } */
+
+int
+foo (const char *name)
+{
+ if (name)
+ return 6;
+ return __builtin_strlen (name); /* { dg-warning "argument 1 null where non-null expected" } */
+}