// Since our original expression was not type-dependent, we do not
// perform lookup again at instantiation time (C++ [temp.dep]p1).
// Instead, we just build the new conditional operator call expression.
- Cond.release();
- True.release();
- False.release();
- // FIXME: Don't reuse the parts here. We need to instantiate them.
return SemaRef.Owned(new (SemaRef.Context) ConditionalOperator(
- E->getCond(),
- E->getTrueExpr(),
- E->getFalseExpr(),
- E->getType()));
+ Cond.takeAs<Expr>(),
+ True.takeAs<Expr>(),
+ False.takeAs<Expr>(),
+ E->getType()));
}