teak-llvm/clang/test/Sema/enum-sign-conversion.c
Roman Lebedev d9af8e1f98 [Sema] Document+test the -Wsign-conversion change for enums in C code [NFC]
Basically a regression after r316268.
However the diagnostic is correct, but the test coverage is bad.

So just like rL316500, introduce yet more tests,
and adjust the release notes.

See https://bugs.llvm.org/show_bug.cgi?id=35200

llvm-svn: 317421
2017-11-04 20:27:47 +00:00

14 lines
400 B
C

// RUN: %clang_cc1 -triple=x86_64-pc-linux-gnu -fsyntax-only -verify -DUNSIGNED -Wsign-conversion %s
// RUN: %clang_cc1 -triple=x86_64-pc-win32 -fsyntax-only -verify -Wsign-conversion %s
// PR35200
enum X { A,B,C};
int f(enum X x) {
#ifdef UNSIGNED
return x; // expected-warning {{implicit conversion changes signedness: 'enum X' to 'int'}}
#else
// expected-no-diagnostics
return x;
#endif
}