18 lines
527 B
C
18 lines
527 B
C
/* { dg-do compile } */
|
|
|
|
#define ATTR_PRINTF __attribute__ ((format (printf, 1, 2)))
|
|
#define ATTR_USED __attribute__ ((used))
|
|
|
|
void bar (int, ...);
|
|
|
|
/* gcc would segfault on the nested attribute. */
|
|
void foo (void)
|
|
{
|
|
bar (0, (void (*ATTR_PRINTF) (const char *, ...)) 0);
|
|
}
|
|
|
|
/* For consistency, unnamed decls should give the same warnings as
|
|
named ones. */
|
|
void proto1 (int (*ATTR_USED) (void)); /* { dg-warning "attribute ignored" } */
|
|
void proto2 (int (*ATTR_USED bar) (void)); /* { dg-warning "attribute ignored" } */
|