Add an InheritancePath parameter to the ImplicitCastExpr constructor.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102218 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaExprCXX.cpp b/lib/Sema/SemaExprCXX.cpp
index 007eecd..6983a1e 100644
--- a/lib/Sema/SemaExprCXX.cpp
+++ b/lib/Sema/SemaExprCXX.cpp
@@ -341,7 +341,7 @@
       //   type.
       if (T.hasQualifiers()) {
         ImpCastExprToType(E, T.getUnqualifiedType(), CastExpr::CK_NoOp,
-                          E->isLvalue(Context));
+                          /*InheritancePath=*/0, E->isLvalue(Context));
         TyOrExpr = E;
       }
     }
@@ -392,6 +392,7 @@
   //   or "pointer to function returning T", [...]
   if (E->getType().hasQualifiers())
     ImpCastExprToType(E, E->getType().getUnqualifiedType(), CastExpr::CK_NoOp,
+                      /*InheritancePath=*/0,
                       E->isLvalue(Context) == Expr::LV_Valid);
   
   DefaultFunctionArrayConversion(E);
@@ -1791,7 +1792,7 @@
     // FIXME: Not sure about lvalue vs rvalue here in the presence of rvalue
     // references.
     ImpCastExprToType(From, ToType.getNonReferenceType(),
-                      CastExpr::CK_NoOp,
+                      CastExpr::CK_NoOp, /*InheritancePath=*/0,
                       ToType->isLValueReferenceType());
 
     if (SCS.DeprecatedStringLiteralToCharPtr)
@@ -1886,7 +1887,8 @@
     // Cast LHS to type of use.
     QualType UseType = isIndirect ? Context.getPointerType(Class) : Class;
     bool isLValue = !isIndirect && lex->isLvalue(Context) == Expr::LV_Valid;
-    ImpCastExprToType(lex, UseType, CastExpr::CK_DerivedToBase, isLValue);
+    ImpCastExprToType(lex, UseType, CastExpr::CK_DerivedToBase, 
+                      /*FIXME: InheritancePath=*/0, isLValue);
   }
 
   if (isa<CXXZeroInitValueExpr>(rex->IgnoreParens())) {