Fix assertion failure in -Warray-bounds on template parameters used as arrays.

llvm-svn: 125693
diff --git a/clang/lib/Sema/SemaChecking.cpp b/clang/lib/Sema/SemaChecking.cpp
index a4c9eb6..6a3ee12 100644
--- a/clang/lib/Sema/SemaChecking.cpp
+++ b/clang/lib/Sema/SemaChecking.cpp
@@ -3085,7 +3085,9 @@
     dyn_cast<DeclRefExpr>(ae->getBase()->IgnoreParenImpCasts());
   if (!dr)
     return;
-  const VarDecl *vd = cast<VarDecl>(dr->getDecl());
+  const VarDecl *vd = dyn_cast<VarDecl>(dr->getDecl());
+  if (!vd)
+    return;
   const ConstantArrayType *cat = Context.getAsConstantArrayType(vd->getType());
   if (!cat)
     return;