Home | History | Annotate | Download | only in AST

Lines Matching defs:SubExpr

275 ConstantExpr::ConstantExpr(Expr *SubExpr, ResultStorageKind StorageKind,
277 : FullExpr(ConstantExprClass, SubExpr) {
1841 const Expr *SubExpr = nullptr;
1844 SubExpr = skipImplicitTemporary(E->getSubExpr());
1849 SubExpr =
1850 skipImplicitTemporary(cast<CXXConstructExpr>(SubExpr->IgnoreImplicit())->getArg(0));
1852 assert((isa<CXXMemberCallExpr>(SubExpr) ||
1853 isa<BlockExpr>(SubExpr)) &&
1854 "Unexpected SubExpr for CK_UserDefinedConversion.");
1855 if (auto *MCE = dyn_cast<CXXMemberCallExpr>(SubExpr))
1856 SubExpr = MCE->getImplicitObjectArgument();
1861 } while ((E = dyn_cast<ImplicitCastExpr>(SubExpr)));
1863 return const_cast<Expr*>(SubExpr);
1867 const Expr *SubExpr = nullptr;
1869 for (const CastExpr *E = this; E; E = dyn_cast<ImplicitCastExpr>(SubExpr)) {
1870 SubExpr = skipImplicitTemporary(E->getSubExpr());
1873 return cast<CXXConstructExpr>(SubExpr)->getConstructor();
1876 if (auto *MCE = dyn_cast<CXXMemberCallExpr>(SubExpr))
2888 Expr *SubExpr = CE->getSubExpr();
2890 Ctx.hasSameUnqualifiedType(E->getType(), SubExpr->getType());
2893 (SubExpr->getType()->isPointerType() ||
2894 SubExpr->getType()->isIntegralType(Ctx)) &&
2896 Ctx.getTypeSize(SubExpr->getType()));
2899 return SubExpr;
3570 const Expr *Subexpr = *I;
3571 if (const OpaqueValueExpr *OVE = dyn_cast<OpaqueValueExpr>(Subexpr))
3572 Subexpr = OVE->getSourceExpr();
3573 if (Subexpr->HasSideEffects(Ctx, IncludePossibleEffects))