diff --git a/lib/CodeGen/CGExprConstant.cpp b/lib/CodeGen/CGExprConstant.cpp
index 4f67f3d..ce0d69b 100644
--- a/lib/CodeGen/CGExprConstant.cpp
+++ b/lib/CodeGen/CGExprConstant.cpp
@@ -615,17 +615,15 @@
   }
 
   llvm::Constant *EmitArrayInitialization(InitListExpr *ILE) {
+    unsigned NumInitElements = ILE->getNumInits();
+    if (NumInitElements == 1 &&
+        (isa<StringLiteral>(ILE->getInit(0)) ||
+         isa<ObjCEncodeExpr>(ILE->getInit(0))))
+      return Visit(ILE->getInit(0));
+
     std::vector<llvm::Constant*> Elts;
     const llvm::ArrayType *AType =
         cast<llvm::ArrayType>(ConvertType(ILE->getType()));
-    unsigned NumInitElements = ILE->getNumInits();
-    // FIXME: Check for wide strings
-    // FIXME: Check for NumInitElements exactly equal to 1??
-    if (NumInitElements > 0 &&
-        (isa<StringLiteral>(ILE->getInit(0)) ||
-         isa<ObjCEncodeExpr>(ILE->getInit(0))) &&
-        ILE->getType()->getArrayElementTypeNoTypeQual()->isCharType())
-      return Visit(ILE->getInit(0));
     const llvm::Type *ElemTy = AType->getElementType();
     unsigned NumElements = AType->getNumElements();
 
