Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / g++.dg / warn / miss-format-1.C
blob56a5c7b1383f744e027a12eb2655fa07a01623ee
1 /* Test for warnings for missing format attributes.  */
2 /* Origin: Joseph Myers <jsm28@cam.ac.uk> */
3 /* { dg-do compile } */
4 /* { dg-options "-Wmissing-format-attribute" } */
5 /* { dg-error "not declared" "" { target *-*-solaris2.5.1 *-*-solaris2.[5-8] } 24 } */
7 #include <stdio.h>
8 #include <stdarg.h>
10 void
11 foo (const char *fmt, ...)
13   va_list ap;
14   va_start (ap, fmt);
15   vprintf (fmt, ap); /* { dg-warning "candidate" "printf attribute warning" } */
16   va_end (ap);
19 void
20 bar (const char *fmt, ...)
22   va_list ap;
23   va_start (ap, fmt);
24   vscanf (fmt, ap); /* { dg-warning "candidate" "scanf attribute warning" { xfail *-*-solaris2.5.1 *-*-solaris2.[5-8] } } */
25   va_end (ap);
28 __attribute__((__format__(__printf__, 1, 2))) void
29 foo2 (const char *fmt, ...)
31   va_list ap;
32   va_start (ap, fmt);
33   vprintf (fmt, ap);
34   va_end (ap);
37 void
38 vfoo (const char *fmt, va_list arg)
40   vprintf (fmt, arg); /* { dg-warning "candidate" "printf attribute warning 2" } */