| /* { dg-additional-options "-Wno-analyzer-too-complex" } */ | |
| #define NULL ((void *)0) | |
| void test_sentinel (int arg, ...) | |
| { | |
| const char *s; | |
| __builtin_va_list ap; | |
| __builtin_va_start (ap, arg); | |
| while (s = __builtin_va_arg (ap, char *)) /* { dg-warning "'ap' has no more arguments \\(2 consumed\\)" } */ | |
| { | |
| (void)s; | |
| } | |
| __builtin_va_end (ap); | |
| } | |
| void test_caller (void) | |
| { | |
| test_sentinel (42, "foo", "bar", NULL); | |
| } | |
| void missing_sentinel (void) | |
| { | |
| test_sentinel (42, "foo", "bar"); | |
| } |