reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
420 const Expr *E = M->GetTemporaryExpr(); 422 assert((!M->getExtendingDecl() || !isa<VarDecl>(M->getExtendingDecl()) || 422 assert((!M->getExtendingDecl() || !isa<VarDecl>(M->getExtendingDecl()) || 423 !cast<VarDecl>(M->getExtendingDecl())->isARCPseudoStrong()) && 428 auto ownership = M->getType().getObjCLifetime(); 431 Address Object = createReferenceTemporary(*this, M, E); 445 return MakeAddrLValue(Object, M->getType(), AlignmentSource::Decl); 449 LValue RefTempDst = MakeAddrLValue(Object, M->getType(), 455 EmitScalarInit(E, M->getExtendingDecl(), RefTempDst, false); 468 pushTemporaryCleanup(*this, M, E, Object); 488 Address Object = createReferenceTemporary(*this, M, E, &Alloca); 503 switch (M->getStorageDuration()) { 555 pushTemporaryCleanup(*this, M, E, Object); 589 return MakeAddrLValue(Object, M->getType(), AlignmentSource::Decl);