1 /* Test for the invalid use of the "nonnull" function attribute.  */
2 /* Origin: Jason Thorpe <thorpej@wasabisystems.com> */
3 /* { dg-do compile } */
4 
5 extern void func1 () __attribute__((nonnull)); /* { dg-error "without arguments" } */
6 
7 extern void func2 (char *) __attribute__((nonnull(2))); /* { dg-error "out-of-range operand" } */
8 
9 extern void func3 (char *) __attribute__((nonnull(foo))); /* { dg-error "invalid operand number|undeclared" } */
10 
11 extern void func4 (int) __attribute__((nonnull(1))); /* { dg-error "references non-pointer" } */
12 
13 void
foo(void)14 foo (void)
15 {
16 }
17