1 /* PR libstdc++/88101 */ 2 /* { dg-do compile } */ 3 4 struct S; 5 struct T { char a; long long b; }; 6 7 void foo(struct S * p,void * q,char * r,const struct T * s)8foo (struct S *p, void *q, char *r, const struct T *s) 9 { 10 __builtin_clear_padding (); /* { dg-error "too few arguments to function '__builtin_clear_padding'" } */ 11 __builtin_clear_padding (1); /* { dg-error "argument 1 in call to function '__builtin_clear_padding' does not have pointer type" } */ 12 __builtin_clear_padding (&p); 13 __builtin_clear_padding (&p, 1); /* { dg-error "too many arguments to function '__builtin_clear_padding'" } */ 14 __builtin_clear_padding (&p, &p); /* { dg-error "too many arguments to function '__builtin_clear_padding'" } */ 15 __builtin_clear_padding (p); /* { dg-error "argument 1 in call to function '__builtin_clear_padding' points to incomplete type" } */ 16 __builtin_clear_padding (q); /* { dg-error "argument 1 in call to function '__builtin_clear_padding' points to incomplete type" } */ 17 __builtin_clear_padding (r); 18 __builtin_clear_padding (s); /* { dg-error "argument 1 in call to function '__builtin_clear_padding' has pointer to 'const' type" } */ 19 } 20