Fix for PR3212: don't descend into C++ operator overloading code for C 
programs.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61056 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaExpr.cpp b/lib/Sema/SemaExpr.cpp
index 98afb0f..affe2ae2 100644
--- a/lib/Sema/SemaExpr.cpp
+++ b/lib/Sema/SemaExpr.cpp
@@ -963,10 +963,10 @@
   Expr *LHSExp = static_cast<Expr*>(Base), *RHSExp = static_cast<Expr*>(Idx);
 
   if (getLangOptions().CPlusPlus &&
-      LHSExp->getType()->isRecordType() || 
-      LHSExp->getType()->isEnumeralType() ||
-      RHSExp->getType()->isRecordType() ||
-      RHSExp->getType()->isEnumeralType()) {
+      (LHSExp->getType()->isRecordType() || 
+       LHSExp->getType()->isEnumeralType() ||
+       RHSExp->getType()->isRecordType() ||
+       RHSExp->getType()->isEnumeralType())) {
     // Add the appropriate overloaded operators (C++ [over.match.oper]) 
     // to the candidate set.
     OverloadCandidateSet CandidateSet;