diff options
Diffstat (limited to 'test/Sema/format-strings.c')
| -rw-r--r-- | test/Sema/format-strings.c | 18 | 
1 files changed, 18 insertions, 0 deletions
| diff --git a/test/Sema/format-strings.c b/test/Sema/format-strings.c index be506d7c6b19..c78095a04d7b 100644 --- a/test/Sema/format-strings.c +++ b/test/Sema/format-strings.c @@ -340,3 +340,21 @@ void posix_extensions() {    printf("%'f\n", (float) 1.0); // no-warning    printf("%'p\n", (void*) 0); // expected-warning{{results in undefined behavior with 'p' conversion specifier}}  } + +// PR8486 +// +// Test what happens when -Wformat is on, but -Wformat-security is off. +#pragma GCC diagnostic warning "-Wformat" +#pragma GCC diagnostic ignored "-Wformat-security" + +void pr8486() { +  printf("%s", 1); // expected-warning{{conversion specifies type 'char *' but the argument has type 'int'}} +} + +// PR9314 +// Don't warn about string literals that are PreDefinedExprs, e.g. __func__. +void pr9314() { +  printf(__PRETTY_FUNCTION__); // no-warning +  printf(__func__); // no-warning +} + | 
