1 /* Test misuses of inline. */ 2 /* Origin: Joseph Myers <jsm@polyomino.org.uk> */ 3 /* { dg-do compile } */ 4 /* { dg-options "-std=gnu99" } */ 5 6 /* These should perhaps be hard errors, but are pedwarns at 7 present. */ 8 9 inline int a; /* { dg-warning "variable 'a' declared 'inline'" } */ 10 inline int (*b)(void); /* { dg-warning "variable 'b' declared 'inline'" } */ 11 typedef inline void c(void); /* { dg-warning "typedef 'c' declared 'inline'" } */ 12 typedef inline int d; /* { dg-warning "typedef 'd' declared 'inline'" } */ 13 void e(inline int f(void)); /* { dg-warning "parameter 'f' declared 'inline'" } */ 14 void g(inline int(void)); /* { dg-warning "parameter '\\({anonymous}\\)' declared 'inline'" } */ 15