diff options
author | Ted Kremenek <kremenek@apple.com> | 2012-01-20 22:11:52 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2012-01-20 22:11:52 +0000 |
commit | 91398927287a19aef8c089d7682e3da0d5b236f2 (patch) | |
tree | e2d3a598e7424ebe9790fbea67c26fa3e6d39442 /clang/test/Sema/format-strings-scanf.c | |
parent | f3ed1bc8ac446cf5f92cb88003b3b8f3b2930bcc (diff) | |
download | bcm5719-llvm-91398927287a19aef8c089d7682e3da0d5b236f2.tar.gz bcm5719-llvm-91398927287a19aef8c089d7682e3da0d5b236f2.zip |
The 'l' length modifier makes sense with the scanlist conversion specifier.
llvm-svn: 148586
Diffstat (limited to 'clang/test/Sema/format-strings-scanf.c')
-rw-r--r-- | clang/test/Sema/format-strings-scanf.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/test/Sema/format-strings-scanf.c b/clang/test/Sema/format-strings-scanf.c index e954958c523..6962a976113 100644 --- a/clang/test/Sema/format-strings-scanf.c +++ b/clang/test/Sema/format-strings-scanf.c @@ -71,9 +71,11 @@ void test_variants(int *i, const char *s, ...) { vsscanf(buf, "%[abc", ap); // expected-warning{{no closing ']' for '%[' in scanf format string}} } -void test_scanlist(int *ip, char *sp) { +void test_scanlist(int *ip, char *sp, wchar_t *ls) { scanf("%[abc]", ip); // expected-warning{{format specifies type 'char *' but the argument has type 'int *'}} scanf("%h[abc]", sp); // expected-warning{{length modifier 'h' results in undefined behavior or no effect with '[' conversion specifier}} + scanf("%l[xyx]", ls); // no-warning + scanf("%ll[xyx]", ls); // expected-warning {{length modifier 'll' results in undefined behavior or no effect with '[' conversion specifier}} } void test_alloc_extension(char **sp, wchar_t **lsp, float *fp) { @@ -100,3 +102,4 @@ void test_alloc_extension(char **sp, wchar_t **lsp, float *fp) { scanf("%mC", fp); // expected-warning{{format specifies type 'wchar_t **' (aka 'int **') but the argument has type 'float *'}} scanf("%m[abc]", fp); // expected-warning{{format specifies type 'char **' but the argument has type 'float *'}} } + |