aboutsummaryrefslogtreecommitdiff
path: root/test/SemaCXX/format-strings.cpp
blob: 4f5b74d170d42256a62bc7922182f32f7d0c82db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// RUN: %clang_cc1 -fsyntax-only -verify -pedantic %s

extern "C" {
extern int scanf(const char *restrict, ...);
extern int printf(const char *restrict, ...);
}

void f(char **sp, float *fp) {
  // TODO: Warn that the 'a' length modifier is an extension.
  scanf("%as", sp);

  // TODO: Warn that the 'a' conversion specifier is a C++11 feature.
  printf("%a", 1.0);
  scanf("%afoobar", fp);
}

void g() {
  printf("%ls", "foo"); // expected-warning{{format specifies type 'wchar_t *' but the argument has type 'const char *'}}
}