blob: 0bb4afecc7e06a057a3fb279d2dcb44c90feb617 [file] [log] [blame]
/*
{ dg-do compile }
{ dg-options "-Wall" } */
typedef __SIZE_TYPE__ size_t;
int memcmp (const void*, const void*, size_t);
int strncmp (const char*, const char*, size_t);
char* stpncpy (char*, const char*, size_t);
char* strncpy (char*, const char*, size_t);
extern char a4[4], b5[5];
struct A { char a4[4]; };
extern volatile int i;
extern void* volatile ptr;
void test_stpncpy (struct A *p)
{
ptr = stpncpy (a4, b5, 4);
ptr = stpncpy (a4, b5, 5); // { dg-warning "writing 5 bytes" }
ptr = stpncpy (p->a4, b5, 4);
ptr = stpncpy (p->a4, b5, 5); // { dg-warning "writing 5 bytes" }
}
void test_strncpy (struct A *p)
{
ptr = strncpy (a4, b5, 4);
ptr = strncpy (a4, b5, 5); // { dg-warning "writing 5 bytes" }
ptr = strncpy (p->a4, b5, 4);
ptr = strncpy (p->a4, b5, 5); // { dg-warning "writing 5 bytes" }
}