Make -Wunused-value off by default, matching GCC. Fixes rdar://7126194.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114316 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Analysis/dead-stores.c b/test/Analysis/dead-stores.c
index c150fa0..ad7890b 100644
--- a/test/Analysis/dead-stores.c
+++ b/test/Analysis/dead-stores.c
@@ -300,11 +300,11 @@
   case 7:
     (void)(0 && x);
     (void)y7;
-    (void)(0 || (y8, ({ return; }), 1));  // expected-warning {{expression result unused}}
+    (void)(0 || (y8, ({ return; }), 1));
     (void)x;
     break;
   case 8:
-    (void)(1 && (y9, ({ return; }), 1));  // expected-warning {{expression result unused}}
+    (void)(1 && (y9, ({ return; }), 1));
     (void)x;
     break;
   case 9:
diff --git a/test/Analysis/misc-ps.m b/test/Analysis/misc-ps.m
index bb70c90..190c605 100644
--- a/test/Analysis/misc-ps.m
+++ b/test/Analysis/misc-ps.m
@@ -466,7 +466,7 @@
 // It should not crash.
 void test_block_cast() {
   id test_block_cast_aux();
-  (void (^)(void *))test_block_cast_aux(); // expected-warning{{expression result unused}}
+  (void (^)(void *))test_block_cast_aux();
 }
 
 int OSAtomicCompareAndSwap32Barrier();
@@ -673,7 +673,7 @@
 //  when not explicitly used in an "lvalue" context (as far as the analyzer is
 //  concerned). This previously triggered a crash due to an invalid assertion.
 void pr_4988(void) {
-  pr_4988; // expected-warning{{expression result unused}}
+  pr_4988;
 }
 
 // <rdar://problem/7152418> - A 'signed char' is used as a flag, which is
diff --git a/test/Misc/caret-diags-macros.c b/test/Misc/caret-diags-macros.c
index e138f59..90902db 100644
--- a/test/Misc/caret-diags-macros.c
+++ b/test/Misc/caret-diags-macros.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -fsyntax-only %s > %t 2>&1
+// RUN: %clang_cc1 -fsyntax-only -Wunused-value %s > %t 2>&1
 
 #define M1(x) x
 
diff --git a/test/Parser/expressions.m b/test/Parser/expressions.m
index 1f1005a..9504232 100644
--- a/test/Parser/expressions.m
+++ b/test/Parser/expressions.m
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -Wunused-value -fsyntax-only -verify %s
 
 void test1() {
   @"s";            // expected-warning {{expression result unused}}
diff --git a/test/Parser/objc-messaging-1.m b/test/Parser/objc-messaging-1.m
index 82450df..0708989 100644
--- a/test/Parser/objc-messaging-1.m
+++ b/test/Parser/objc-messaging-1.m
@@ -6,21 +6,14 @@
         id a, b, c;
 	[a ii]; // expected-warning{{not found}}
 	[a if: 1 :2]; // expected-warning{{not found}}
-	[a inout: 1 :2 another:(2,3,4)]; // expected-warning{{not found}} \
-           // expected-warning 2{{expression result unused}}
-	[a inout: 1 :2 another:(2,3,4), 6,6,8]; // expected-warning{{not found}} \
-           // expected-warning 2{{expression result unused}}
-	[a inout: 1 :2 another:(2,3,4), (6,4,5),6,8]; // expected-warning{{not found}} \
-           // expected-warning 4{{expression result unused}}
-	[a inout: 1 :2 another:(i+10), (i,j-1,5),6,8]; // expected-warning{{not found}} \
-           // expected-warning 2{{expression result unused}}
-	[a long: 1 :2 another:(i+10), (i,j-1,5),6,8]; // expected-warning{{not found}} \
-           // expected-warning 2{{expression result unused}}
-	[a : "Hello\n" :2 another:(i+10), (i,j-1,5),6,8]; // expected-warning{{not found}} \
-           // expected-warning 2{{expression result unused}}
+	[a inout: 1 :2 another:(2,3,4)]; // expected-warning{{not found}}
+	[a inout: 1 :2 another:(2,3,4), 6,6,8]; // expected-warning{{not found}}
+	[a inout: 1 :2 another:(2,3,4), (6,4,5),6,8]; // expected-warning{{not found}}
+	[a inout: 1 :2 another:(i+10), (i,j-1,5),6,8]; // expected-warning{{not found}}
+	[a long: 1 :2 another:(i+10), (i,j-1,5),6,8]; // expected-warning{{not found}}
+	[a : "Hello\n" :2 another:(i+10), (i,j-1,5),6,8]; // expected-warning{{not found}}
 
 	// Comma expression as receiver (rdar://6222856)
-	[a, b, c foo]; // expected-warning{{not found}} \
-           // expected-warning 2{{expression result unused}}
+	[a, b, c foo]; // expected-warning{{not found}}
 
 }
diff --git a/test/Parser/objc-try-catch-1.m b/test/Parser/objc-try-catch-1.m
index 7193691..00c86e7 100644
--- a/test/Parser/objc-try-catch-1.m
+++ b/test/Parser/objc-try-catch-1.m
@@ -27,15 +27,13 @@
       return proc();
     }
     @catch (Frob* ex) {
-      @throw 1,2; // expected-error {{@throw requires an Objective-C object type ('int' invalid)}} \
-				  // expected-warning {{expression result unused}}
+      @throw 1,2; // expected-error {{@throw requires an Objective-C object type ('int' invalid)}}
     }
     @catch (float x) {  // expected-error {{@catch parameter is not a pointer to an interface type}}
       
     }
     @catch(...) {
-      @throw (4,3,proc()); // expected-warning {{expression result unused}} \
-						   // expected-warning {{expression result unused}}
+      @throw (4,3,proc());
     }
   }
 
@@ -48,7 +46,7 @@
 void bar()
 {
   @try {}// expected-error {{@try statement without a @catch and @finally clause}}
-  @"s"; //  expected-warning {{result unused}}
+  @"s";
 }
 
 void baz()
diff --git a/test/Preprocessor/pragma_microsoft.c b/test/Preprocessor/pragma_microsoft.c
index b68d6e3..0300e43 100644
--- a/test/Preprocessor/pragma_microsoft.c
+++ b/test/Preprocessor/pragma_microsoft.c
@@ -36,5 +36,5 @@
 
   // If we ever actually *support* __pragma(warning(disable: x)),
   // this warning should go away.
-  MACRO_WITH__PRAGMA // expected-warning {{expression result unused}}
+  MACRO_WITH__PRAGMA
 }
diff --git a/test/Sema/enum.c b/test/Sema/enum.c
index 64aa31b..5782cb8 100644
--- a/test/Sema/enum.c
+++ b/test/Sema/enum.c
@@ -44,10 +44,10 @@
     ;
   (_Bool)ve2;  // expected-error {{arithmetic or pointer type is required}}
 
-  for (; ;ve2) // expected-warning {{expression result unused}}
+  for (; ;ve2)
     ;
   (void)ve2;
-  ve2;         // expected-warning {{expression result unused}}
+  ve2;
 }
 
 // PR2416
diff --git a/test/Sema/ext_vector_components.c b/test/Sema/ext_vector_components.c
index 7d3d52a..1b66352 100644
--- a/test/Sema/ext_vector_components.c
+++ b/test/Sema/ext_vector_components.c
@@ -16,7 +16,7 @@
 
     vec2.z; // expected-error {{vector component access exceeds type 'float2'}}
     vec2.xyzw; // expected-error {{vector component access exceeds type 'float2'}}
-    vec4.xyzw; // expected-warning {{expression result unused}}
+    vec4.xyzw;
     vec4.xyzc; // expected-error {{illegal vector component name 'c'}}
     vec4.s01z; // expected-error {{illegal vector component name 'z'}}
     vec2 = vec4.s01; // legal, shorten
diff --git a/test/Sema/i-c-e.c b/test/Sema/i-c-e.c
index eb77bbe..b4a6a69 100644
--- a/test/Sema/i-c-e.c
+++ b/test/Sema/i-c-e.c
@@ -50,11 +50,9 @@
 char z[__builtin_constant_p(4) ? 1 : -1];
 
 // Comma tests
-int comma1[0?1,2:3];  // expected-warning {{expression result unused}}
-int comma2[1||(1,2)]; // expected-warning {{expression result unused}} \
-                      // expected-warning {{use of logical || with constant operand}}
-int comma3[(1,2)]; // expected-warning {{size of static array must be an integer constant expression}} \
-					// expected-warning {{expression result unused}}
+int comma1[0?1,2:3];
+int comma2[1||(1,2)]; // expected-warning {{use of logical || with constant operand}}
+int comma3[(1,2)]; // expected-warning {{size of static array must be an integer constant expression}}
 
 // Pointer + __builtin_constant_p
 char pbcp[__builtin_constant_p(4) ? (intptr_t)&expr : 0]; // expected-error {{variable length array declaration not allowed at file scope}}
diff --git a/test/Sema/statements.c b/test/Sema/statements.c
index 61eafe6..428ad31 100644
--- a/test/Sema/statements.c
+++ b/test/Sema/statements.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 %s -fsyntax-only -verify
+// RUN: %clang_cc1 %s -fsyntax-only -Wunused-value -verify
 
 typedef unsigned __uint32_t;
 
diff --git a/test/Sema/unused-expr.c b/test/Sema/unused-expr.c
index 15608ec..ac209eb 100644
--- a/test/Sema/unused-expr.c
+++ b/test/Sema/unused-expr.c
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -fsyntax-only -verify %s -Wno-unreachable-code
+// RUN: %clang_cc1 -fsyntax-only -verify %s -Wno-unreachable-code -Wunused-value
 
 int foo(int X, int Y);
 
diff --git a/test/SemaCXX/cast-conversion.cpp b/test/SemaCXX/cast-conversion.cpp
index d68e789..9ca8d15 100644
--- a/test/SemaCXX/cast-conversion.cpp
+++ b/test/SemaCXX/cast-conversion.cpp
@@ -15,8 +15,7 @@
 int main () {
   B(10);	// expected-error {{functional-style cast from 'int' to 'B' is not allowed}}
   (B)10;	// expected-error {{C-style cast from 'int' to 'B' is not allowed}}
-  static_cast<B>(10);	// expected-error {{static_cast from 'int' to 'B' is not allowed}} \\
-			// expected-warning {{expression result unused}}
+  static_cast<B>(10);	// expected-error {{static_cast from 'int' to 'B' is not allowed}}
 }
 
 template<class T>
diff --git a/test/SemaCXX/decl-expr-ambiguity.cpp b/test/SemaCXX/decl-expr-ambiguity.cpp
index 9595fae..631d1aa 100644
--- a/test/SemaCXX/decl-expr-ambiguity.cpp
+++ b/test/SemaCXX/decl-expr-ambiguity.cpp
@@ -12,11 +12,11 @@
   __typeof(int)(a,5)<<a; // expected-error {{excess elements in scalar initializer}}
   void(a), ++a;
   if (int(a)+1) {}
-  for (int(a)+1;;) {} // expected-warning {{expression result unused}}
+  for (int(a)+1;;) {}
   a = sizeof(int()+1);
   a = sizeof(int(1));
   typeof(int()+1) a2; // expected-error {{extension used}}
-  (int(1)); // expected-warning {{expression result unused}}
+  (int(1));
 
   // type-id
   (int())1; // expected-error {{C-style cast from 'int' to 'int ()' is not allowed}}
diff --git a/test/SemaCXX/overloaded-operator.cpp b/test/SemaCXX/overloaded-operator.cpp
index a33ea5d..09e0a5f 100644
--- a/test/SemaCXX/overloaded-operator.cpp
+++ b/test/SemaCXX/overloaded-operator.cpp
@@ -157,7 +157,7 @@
 
 void test_comma(X x, Y y) {
   bool& b1 = (x, y);
-  X& xr = (x, x); // expected-warning {{expression result unused}}
+  X& xr = (x, x);
 }
 
 struct Callable {
diff --git a/test/SemaCXX/warn-unused-variables.cpp b/test/SemaCXX/warn-unused-variables.cpp
index 6992cdc..be992fa 100644
--- a/test/SemaCXX/warn-unused-variables.cpp
+++ b/test/SemaCXX/warn-unused-variables.cpp
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -verify %s
+// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Wunused-value -verify %s
 template<typename T> void f() {
   T t;
   t = 17;
diff --git a/test/SemaObjC/invalid-code.m b/test/SemaObjC/invalid-code.m
index 7a642fb..83ccf10 100644
--- a/test/SemaObjC/invalid-code.m
+++ b/test/SemaObjC/invalid-code.m
@@ -9,7 +9,7 @@
 // This previously triggered a crash because the class has not been defined.
 @implementation RDar7495713 (rdar_7495713_cat)  // expected-error{{cannot find interface declaration for 'RDar7495713'}}
 - (id) rdar_7495713 {
-  __PRETTY_FUNCTION__; // expected-warning{{expression result unused}}
+  __PRETTY_FUNCTION__;
 }
 @end