Fix some unused variable, control reaches end of non-void function,
and uninitialized use options.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62270 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AST/ExprConstant.cpp b/lib/AST/ExprConstant.cpp
index de6a14b..6d98952 100644
--- a/lib/AST/ExprConstant.cpp
+++ b/lib/AST/ExprConstant.cpp
@@ -1219,6 +1219,7 @@
 APSInt Expr::EvaluateAsInt(ASTContext &Ctx) const {
   EvalResult EvalResult;
   bool Result = Evaluate(EvalResult, Ctx);
+  Result = Result;
   assert(Result && "Could not evaluate expression");
   assert(EvalResult.Val.isInt() && "Expression did not evaluate to integer");
 
diff --git a/lib/Analysis/SymbolManager.cpp b/lib/Analysis/SymbolManager.cpp
index 746d55c..f8f8555 100644
--- a/lib/Analysis/SymbolManager.cpp
+++ b/lib/Analysis/SymbolManager.cpp
@@ -24,6 +24,8 @@
 
 SymbolRef SymbolManager::getSymbol(const MemRegion* R) {
   switch (R->getKind()) {
+  default:
+    assert(0 && "unprocessed region");
   case MemRegion::VarRegionKind:
     return getSymbol(cast<VarRegion>(R)->getDecl());
   
@@ -38,8 +40,6 @@
     const FieldRegion* FR = cast<FieldRegion>(R);
     return getFieldSymbol(FR->getSuperRegion(), FR->getDecl());
   }
-  default:
-    assert(0 && "unprocessed region");
   }
 }
 
diff --git a/lib/CodeGen/CGObjC.cpp b/lib/CodeGen/CGObjC.cpp
index a285d75..29740fd 100644
--- a/lib/CodeGen/CGObjC.cpp
+++ b/lib/CodeGen/CGObjC.cpp
@@ -301,15 +301,14 @@
                                  EmitScalarExpr(E->getBase()), 
                                  false, CallArgList());
   }
-  else if (const ObjCKVCRefExpr *E = dyn_cast<ObjCKVCRefExpr>(Exp)) {
+  else {
+    const ObjCKVCRefExpr *E = cast<ObjCKVCRefExpr>(Exp);
     Selector S = E->getGetterMethod()->getSelector();
     return CGM.getObjCRuntime().
              GenerateMessageSend(*this, Exp->getType(), S, 
                                  EmitScalarExpr(E->getBase()), 
                                  false, CallArgList());
   }
-  else
-    assert (0 && "bad expression node in EmitObjCPropertyGet");
 }
 
 void CodeGenFunction::EmitObjCPropertySet(const Expr *Exp,
diff --git a/lib/Sema/SemaLookup.cpp b/lib/Sema/SemaLookup.cpp
index cc9a36c..6ef93ce 100644
--- a/lib/Sema/SemaLookup.cpp
+++ b/lib/Sema/SemaLookup.cpp
@@ -490,7 +490,7 @@
   //   the result of the lookup.
   // FIXME: support using declarations!
   QualType SubobjectType;
-  int SubobjectNumber;
+  int SubobjectNumber = 0;
   for (BasePaths::paths_iterator Path = Paths.begin(), PathEnd = Paths.end();
        Path != PathEnd; ++Path) {
     const BasePathElement &PathElement = Path->back();