some minor cleanups, handle ObjCEncodeExpr in a couple places.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65389 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp
index a728757..2af6ab1 100644
--- a/lib/Sema/SemaDecl.cpp
+++ b/lib/Sema/SemaDecl.cpp
@@ -1149,10 +1149,9 @@
 }
 
 StringLiteral *Sema::IsStringLiteralInit(Expr *Init, QualType DeclType) {
-  const ArrayType *AT = Context.getAsArrayType(DeclType);
-  if (AT && AT->getElementType()->isCharType()) {
-    return dyn_cast<StringLiteral>(Init->IgnoreParens());
-  }
+  if (const ArrayType *AT = Context.getAsArrayType(DeclType))
+    if (AT->getElementType()->isCharType())
+      return dyn_cast<StringLiteral>(Init->IgnoreParens());
   return 0;
 }
 
@@ -2194,6 +2193,7 @@
            CheckArithmeticConstantExpression(ASE->getIdx());
   }
   case Expr::StringLiteralClass:
+  case Expr::ObjCEncodeExprClass:
   case Expr::PredefinedExprClass:
     return false;
   case Expr::UnaryOperatorClass: {
@@ -2217,6 +2217,7 @@
   case Expr::ParenExprClass:
     return CheckAddressConstantExpression(cast<ParenExpr>(Init)->getSubExpr());
   case Expr::StringLiteralClass:
+  case Expr::ObjCEncodeExprClass:
   case Expr::ObjCStringLiteralClass:
     return false;
   case Expr::CallExprClass:
@@ -2576,9 +2577,8 @@
 }
 
 bool Sema::CheckForConstantInitializer(Expr *Init, QualType DclT) {
-  if (Init->isConstantInitializer(Context)) {
+  if (Init->isConstantInitializer(Context))
     return false;
-  }
   InitializerElementNotConstant(Init);
   return true;