Patch to improve ir-gen for constructors with default argument
expressions and a test case.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@78213 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaTemplateInstantiateExpr.cpp b/lib/Sema/SemaTemplateInstantiateExpr.cpp
index 3578daf..3169998 100644
--- a/lib/Sema/SemaTemplateInstantiateExpr.cpp
+++ b/lib/Sema/SemaTemplateInstantiateExpr.cpp
@@ -1073,11 +1073,11 @@
     Args.push_back(ArgInst.takeAs<Expr>());
   }
 
-  return SemaRef.Owned(CXXConstructExpr::Create(SemaRef.Context, T,
-                                                E->getConstructor(), 
-                                                E->isElidable(),
-                                                Args.takeAs<Expr>(), 
-                                                Args.size()));
+  return SemaRef.Owned(SemaRef.BuildCXXConstructExpr(SemaRef.Context, T,
+                                             E->getConstructor(), 
+                                             E->isElidable(),
+                                             Args.takeAs<Expr>(), 
+                                             Args.size()));
 }
 
 Sema::OwningExprResult