diff --git a/clang/include/clang/Basic/DiagnosticGroups.td b/clang/include/clang/Basic/DiagnosticGroups.td --- a/clang/include/clang/Basic/DiagnosticGroups.td +++ b/clang/include/clang/Basic/DiagnosticGroups.td @@ -843,6 +843,7 @@ SizeofArrayArgument, SizeofArrayDecay, StringPlusInt, + TautologicalCompare, Trigraphs, Uninitialized, UnknownPragmas, diff --git a/clang/test/Misc/warning-wall.c b/clang/test/Misc/warning-wall.c new file mode 100644 --- /dev/null +++ b/clang/test/Misc/warning-wall.c @@ -0,0 +1,95 @@ +RUN: diagtool tree -Wall > %t 2>&1 +RUN: FileCheck --input-file=%t %s + + CHECK:-Wall +CHECK-NEXT: -Wmost +CHECK-NEXT: -Wchar-subscripts +CHECK-NEXT: -Wcomment +CHECK-NEXT: -Wdelete-non-virtual-dtor +CHECK-NEXT: -Wdelete-non-abstract-non-virtual-dtor +CHECK-NEXT: -Wdelete-abstract-non-virtual-dtor +CHECK-NEXT: -Wfor-loop-analysis +CHECK-NEXT: -Wformat +CHECK-NEXT: -Wformat-extra-args +CHECK-NEXT: -Wformat-zero-length +CHECK-NEXT: -Wnonnull +CHECK-NEXT: -Wformat-security +CHECK-NEXT: -Wformat-y2k +CHECK-NEXT: -Wformat-invalid-specifier +CHECK-NEXT: -Wimplicit +CHECK-NEXT: -Wimplicit-function-declaration +CHECK-NEXT: -Wimplicit-int +CHECK-NEXT: -Winfinite-recursion +CHECK-NEXT: -Wint-in-bool-context +CHECK-NEXT: -Wmismatched-tags +CHECK-NEXT: -Wmissing-braces +CHECK-NEXT: -Wmove +CHECK-NEXT: -Wpessimizing-move +CHECK-NEXT: -Wredundant-move +CHECK-NEXT: -Wreturn-std-move +CHECK-NEXT: -Wself-move +CHECK-NEXT: -Wmultichar +CHECK-NEXT: -Wreorder +CHECK-NEXT: -Wreorder-ctor +CHECK-NEXT: -Wreorder-init-list +CHECK-NEXT: -Wreturn-type +CHECK-NEXT: -Wreturn-type-c-linkage +CHECK-NEXT: -Wself-assign +CHECK-NEXT: -Wself-assign-overloaded +CHECK-NEXT: -Wself-assign-field +CHECK-NEXT: -Wself-move +CHECK-NEXT: -Wsizeof-array-argument +CHECK-NEXT: -Wsizeof-array-decay +CHECK-NEXT: -Wstring-plus-int +CHECK-NEXT: -Wtautological-compare +CHECK-NEXT: -Wtautological-constant-compare +CHECK-NEXT: -Wtautological-constant-out-of-range-compare +CHECK-NEXT: -Wtautological-pointer-compare +CHECK-NEXT: -Wtautological-overlap-compare +CHECK-NEXT: -Wtautological-bitwise-compare +CHECK-NEXT: -Wtautological-undefined-compare +CHECK-NEXT: -Wtautological-objc-bool-compare +CHECK-NEXT: -Wtrigraphs +CHECK-NEXT: -Wuninitialized +CHECK-NEXT: -Wsometimes-uninitialized +CHECK-NEXT: -Wstatic-self-init +CHECK-NEXT: -Wunknown-pragmas +CHECK-NEXT: -Wunused +CHECK-NEXT: -Wunused-argument +CHECK-NEXT: -Wunused-function +CHECK-NEXT: -Wunneeded-internal-declaration +CHECK-NEXT: -Wunused-label +CHECK-NEXT: -Wunused-private-field +CHECK-NEXT: -Wunused-lambda-capture +CHECK-NEXT: -Wunused-local-typedef +CHECK-NEXT: -Wunused-value +CHECK-NEXT: -Wunused-comparison +CHECK-NEXT: -Wunused-result +CHECK-NEXT: -Wunevaluated-expression +CHECK-NEXT: -Wpotentially-evaluated-expression +CHECK-NEXT: -Wunused-variable +CHECK-NEXT: -Wunused-const-variable +CHECK-NEXT: -Wunused-property-ivar +CHECK-NEXT: -Wvolatile-register-var +CHECK-NEXT: -Wobjc-missing-super-calls +CHECK-NEXT: -Wobjc-designated-initializers +CHECK-NEXT: -Wobjc-flexible-array +CHECK-NEXT: -Woverloaded-virtual +CHECK-NEXT: -Wprivate-extern +CHECK-NEXT: -Wcast-of-sel-type +CHECK-NEXT: -Wextern-c-compat +CHECK-NEXT: -Wuser-defined-warnings +CHECK-NEXT: -Wparentheses +CHECK-NEXT: -Wlogical-op-parentheses +CHECK-NEXT: -Wlogical-not-parentheses +CHECK-NEXT: -Wbitwise-conditional-parentheses +CHECK-NEXT: -Wbitwise-op-parentheses +CHECK-NEXT: -Wshift-op-parentheses +CHECK-NEXT: -Woverloaded-shift-op-parentheses +CHECK-NEXT: -Wparentheses-equality +CHECK-NEXT: -Wdangling-else +CHECK-NEXT: -Wswitch +CHECK-NEXT: -Wswitch-bool + + +CHECK-NOT:-W diff --git a/clang/test/Sema/warn-bitwise-compare.c b/clang/test/Sema/warn-bitwise-compare.c --- a/clang/test/Sema/warn-bitwise-compare.c +++ b/clang/test/Sema/warn-bitwise-compare.c @@ -1,4 +1,5 @@ // RUN: %clang_cc1 -fsyntax-only -verify -Wtautological-bitwise-compare %s +// RUN: %clang_cc1 -fsyntax-only -verify -Wall -Wno-unused %s #define mydefine 2 diff --git a/clang/test/Sema/warn-overlap.c b/clang/test/Sema/warn-overlap.c --- a/clang/test/Sema/warn-overlap.c +++ b/clang/test/Sema/warn-overlap.c @@ -1,4 +1,5 @@ // RUN: %clang_cc1 -fsyntax-only -verify -Wtautological-overlap-compare %s +// RUN: %clang_cc1 -fsyntax-only -verify -Wall -Wno-unused -Wno-loop-analysis %s #define mydefine 2 diff --git a/clang/test/SemaCXX/warn-bitwise-compare.cpp b/clang/test/SemaCXX/warn-bitwise-compare.cpp --- a/clang/test/SemaCXX/warn-bitwise-compare.cpp +++ b/clang/test/SemaCXX/warn-bitwise-compare.cpp @@ -1,4 +1,5 @@ // RUN: %clang_cc1 -fsyntax-only -verify -Wtautological-bitwise-compare %s +// RUN: %clang_cc1 -fsyntax-only -verify -Wall -Wno-unused %s void test(int x) { bool b1 = (8 & x) == 3;