Use v.data() instead of &v[0] when SmallVector v might be empty.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72210 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaTemplateInstantiateDecl.cpp b/lib/Sema/SemaTemplateInstantiateDecl.cpp
index 385112b..b9a9ae8 100644
--- a/lib/Sema/SemaTemplateInstantiateDecl.cpp
+++ b/lib/Sema/SemaTemplateInstantiateDecl.cpp
@@ -301,7 +301,7 @@
   // Attach the parameters
   for (unsigned P = 0; P < Params.size(); ++P)
     Params[P]->setOwningFunction(Method);
-  Method->setParams(SemaRef.Context, &Params[0], Params.size());
+  Method->setParams(SemaRef.Context, Params.data(), Params.size());
 
   if (InitMethodInstantiation(Method, D))
     Method->setInvalidDecl();
@@ -348,7 +348,7 @@
   // Attach the parameters
   for (unsigned P = 0; P < Params.size(); ++P)
     Params[P]->setOwningFunction(Constructor);
-  Constructor->setParams(SemaRef.Context, &Params[0], Params.size());
+  Constructor->setParams(SemaRef.Context, Params.data(), Params.size());
 
   if (InitMethodInstantiation(Constructor, D))
     Constructor->setInvalidDecl();
@@ -538,7 +538,7 @@
   if (ResultType.isNull())
     return QualType();
 
-  return SemaRef.BuildFunctionType(ResultType, &ParamTys[0], ParamTys.size(),
+  return SemaRef.BuildFunctionType(ResultType, ParamTys.data(), ParamTys.size(),
                                    Proto->isVariadic(), Proto->getTypeQuals(),
                                    D->getLocation(), D->getDeclName());
 }