/external/compiler-rt/test/asan/TestCases/Posix/ |
H A D | tsd_dtor_leak.cc | 20 void Dtor(void *tsd) { function 27 assert(0 == pthread_key_create(&tsd_key, Dtor));
|
/external/clang/test/SemaCXX/ |
H A D | deprecated.cpp | 83 struct Dtor { struct in namespace:DeprecatedCopy 84 ~Dtor(); 85 // expected-warning@-1 {{definition of implicit copy constructor for 'Dtor' is deprecated because it has a user-declared destructor}} 86 // expected-warning@-2 {{definition of implicit copy assignment operator for 'Dtor' is deprecated because it has a user-declared destructor}} 88 Dtor c1, c2(c1); // expected-note {{implicit copy constructor for 'Dtor' first required here}} 89 void g() { c1 = c2; } // expected-note {{implicit copy assignment operator for 'Dtor' first required here}}
|
/external/clang/test/CXX/class/class.union/ |
H A D | p1.cpp | 34 class Dtor { class 35 ~Dtor() { abort(); } // expected-note 2 {{because type 'Dtor' has a user-provided destructor}} expected-note 2{{here}} 46 Dtor dtor; // expected-error {{union member 'dtor' has a non-trivial destructor}} 70 Dtor dtor; // expected-note {{because field of type 'Dtor' has a user-provided destructor}} 90 struct s6 : Dtor { // expected-note {{because base class of type 'Dtor' has a user-provided destructor}} 131 Either<int,Dtor> dtor(0); // expected-note {{in instantiation of template}}
|
/external/clang/test/Analysis/ |
H A D | dtor.cpp | 234 class Dtor { class in namespace:DestructorsShouldNotAffectReturnValues 236 ~Dtor() { 242 Dtor d;
|
H A D | temporaries.cpp | 115 struct Dtor { struct in namespace:destructors 116 ~Dtor(); 119 extern bool check(const Dtor &); 124 if (coin() && (coin() || coin() || check(Dtor()))) { 125 Dtor(); 302 []() { check(NoReturnDtor()); } != nullptr || check(Dtor()); 328 // ~Dtor should run before ~NoReturnDtor() because construction order is 330 if (!value || check((NoReturnDtor(), Dtor())) || value) { 371 check(Dtor()) && 372 (check(NoReturnDtor()) || check(NoReturnDtor())) && check(Dtor()); [all...] |
/external/clang/lib/StaticAnalyzer/Core/ |
H A D | CallEvent.cpp | 1023 const CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(CalleeCtx->getDecl()); local 1024 Loc ThisPtr = SVB.getCXXThis(Dtor, CalleeCtx); 1033 Trigger = Dtor->getBody(); 1035 return getCXXDestructorCall(Dtor, Trigger, ThisVal.getAsRegion(),
|
H A D | ExprEngineCallAndReturn.cpp | 658 const CXXDestructorCall &Dtor = cast<CXXDestructorCall>(Call); local 661 const MemRegion *Target = Dtor.getCXXThisVal().getAsRegion(); 729 const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(FD); local 730 if (!Dtor) 733 const CXXRecordDecl *RD = Dtor->getParent();
|
H A D | PathDiagnostic.cpp | 558 const CFGAutomaticObjDtor &Dtor = Source.castAs<CFGAutomaticObjDtor>(); local 559 return PathDiagnosticLocation::createEnd(Dtor.getTriggerStmt(), 563 const CFGDeleteDtor &Dtor = Source.castAs<CFGDeleteDtor>(); local 564 return PathDiagnosticLocation(Dtor.getDeleteExpr(), SM, CallerCtx);
|
H A D | ExprEngine.cpp | 589 void ExprEngine::ProcessAutomaticObjDtor(const CFGAutomaticObjDtor Dtor, argument 592 const VarDecl *varDecl = Dtor.getVarDecl(); 604 VisitCXXDestructor(varType, Region, Dtor.getTriggerStmt(), /*IsBase=*/ false, 608 void ExprEngine::ProcessDeleteDtor(const CFGDeleteDtor Dtor, argument 613 const CXXDeleteExpr *DE = Dtor.getDeleteExpr(); 623 const CXXDestructorDecl *Dtor = RD->getDestructor(); local 625 PostImplicitCall PP(Dtor, DE->getLocStart(), LCtx);
|
/external/clang/include/clang/AST/ |
H A D | ExprCXX.h | 1088 void setDestructor(const CXXDestructorDecl *Dtor) { argument 1089 Destructor = Dtor;
|
/external/clang/lib/CodeGen/ |
H A D | CGDecl.cpp | 427 const CXXDestructorDecl *Dtor, 429 : Dtor(Dtor), NRVOFlag(NRVOFlag), Loc(addr) {} 431 const CXXDestructorDecl *Dtor; member in struct:__anon1277::final 450 CGF.EmitCXXDestructorCall(Dtor, Dtor_Complete, 426 DestroyNRVOVariable(Address addr, const CXXDestructorDecl *Dtor, llvm::Value *NRVOFlag) argument
|
H A D | CGExprCXX.cpp | 209 if (const auto *Dtor = dyn_cast<CXXDestructorDecl>(CalleeDecl)) 211 Dtor, StructorType::Complete); 229 if (const CXXDestructorDecl *Dtor = dyn_cast<CXXDestructorDecl>(MD)) { 235 *this, Dtor, Dtor_Complete, This, cast<CXXMemberCallExpr>(CE)); 241 CGM.getAddrOfCXXStructor(Dtor, StructorType::Complete, FInfo, Ty); 1543 const CXXDestructorDecl *Dtor = nullptr; local 1547 Dtor = RD->getDestructor(); 1549 if (Dtor->isVirtual()) { 1551 Dtor); 1565 if (Dtor) [all...] |
H A D | CGClass.cpp | 1489 const CXXDestructorDecl *Dtor) { 1490 const CXXRecordDecl *ClassDecl = Dtor->getParent(); 1494 if (!Dtor->hasTrivialBody()) 1507 const CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(CurGD.getDecl()); local 1510 Stmt *Body = Dtor->getBody(); 1519 EnterDtorCleanups(Dtor, Dtor_Deleting); 1520 EmitCXXDestructorCall(Dtor, Dtor_Complete, /*ForVirtualBase=*/false, 1552 EnterDtorCleanups(Dtor, Dtor_Complete); 1555 EmitCXXDestructorCall(Dtor, Dtor_Base, /*ForVirtualBase=*/false, 1565 EnterDtorCleanups(Dtor, Dtor_Bas 1488 CanSkipVTablePointerInitialization(CodeGenFunction &CGF, const CXXDestructorDecl *Dtor) argument 1622 const CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(CGF.CurCodeDecl); variable 1645 const CXXDestructorDecl *Dtor = cast<CXXDestructorDecl>(CGF.CurCodeDecl); variable 1696 const CXXDestructorDecl *Dtor; member in class:__anon1271::final 1699 SanitizeDtorMembers(const CXXDestructorDecl *Dtor) argument 1784 const CXXDestructorDecl *Dtor; member in class:__anon1271::final 1787 SanitizeDtorVTable(const CXXDestructorDecl *Dtor) argument 1792 (void)Dtor; variable 2228 const CXXDestructorDecl *Dtor; member in struct:__anon1272::final 2280 const CXXDestructorDecl *Dtor; member in struct:__anon1273::final [all...] |
H A D | CodeGenModule.cpp | 676 void CodeGenModule::AddGlobalDtor(llvm::Function *Dtor, int Priority) { argument 678 GlobalDtors.push_back(Structor(Priority, Dtor, nullptr)); 732 if (const auto *Dtor = dyn_cast_or_null<CXXDestructorDecl>(FD)) { 733 if (getCXXABI().useThunkForDtorVariant(Dtor, GD.getDtorType())) {
|
H A D | CGOpenMPRuntime.cpp | 1076 llvm::Value *CopyCtor, llvm::Value *Dtor, SourceLocation Loc) { 1087 Ctor, CopyCtor, Dtor}; 1104 llvm::Value *Ctor = nullptr, *CopyCtor = nullptr, *Dtor = nullptr; local 1162 Dtor = Fn; 1165 if (!Ctor && !Dtor) 1181 if (Dtor == nullptr) { 1184 Dtor = llvm::Constant::getNullValue(DtorTy); 1197 emitThreadPrivateVarInit(InitCGF, VDAddr, Ctor, CopyCtor, Dtor, Loc); 1201 emitThreadPrivateVarInit(*CGF, VDAddr, Ctor, CopyCtor, Dtor, Loc); 1074 emitThreadPrivateVarInit( CodeGenFunction &CGF, Address VDAddr, llvm::Value *Ctor, llvm::Value *CopyCtor, llvm::Value *Dtor, SourceLocation Loc) argument
|
H A D | ItaniumCXXABI.cpp | 155 const CXXDestructorDecl *Dtor) override; 218 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, 277 const CXXDestructorDecl *Dtor, 1007 const CXXDestructorDecl *Dtor) { 1039 EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, /*CE=*/nullptr); 1098 llvm::Constant *Dtor = nullptr; local 1103 Dtor = CGM.getAddrOfCXXStructor(DtorD, StructorType::Complete); 1104 Dtor = llvm::ConstantExpr::getBitCast(Dtor, CGM.Int8PtrTy); 1107 if (!Dtor) Dto 1003 emitVirtualObjectDelete(CodeGenFunction &CGF, const CXXDeleteExpr *DE, Address Ptr, QualType ElementType, const CXXDestructorDecl *Dtor) argument 1614 EmitVirtualDestructorCall( CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, CXXDtorType DtorType, Address This, const CXXMemberCallExpr *CE) argument [all...] |
H A D | MicrosoftCXXABI.cpp | 117 const CXXDestructorDecl *Dtor) override; 209 bool useThunkForDtorVariant(const CXXDestructorDecl *Dtor, 292 const CXXDestructorDecl *Dtor, 392 llvm::Constant *Dtor, llvm::Constant *Addr) override; 855 const CXXDestructorDecl *Dtor) { 861 EmitVirtualDestructorCall(CGF, Dtor, DtorType, Ptr, /*CE=*/nullptr); 1826 CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, CXXDtorType DtorType, 1833 GlobalDecl GD(Dtor, Dtor_Deleting); 1835 Dtor, StructorType::Deleting); 1846 RValue RV = CGF.EmitCXXStructorCall(Dtor, Calle 851 emitVirtualObjectDelete(CodeGenFunction &CGF, const CXXDeleteExpr *DE, Address Ptr, QualType ElementType, const CXXDestructorDecl *Dtor) argument 1825 EmitVirtualDestructorCall( CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, CXXDtorType DtorType, Address This, const CXXMemberCallExpr *CE) argument 2166 emitGlobalDtorWithTLRegDtor(CodeGenFunction &CGF, const VarDecl &VD, llvm::Constant *Dtor, llvm::Constant *Addr) argument 2184 registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D, llvm::Constant *Dtor, llvm::Constant *Addr) argument [all...] |
/external/clang/lib/Sema/ |
H A D | SemaAccess.cpp | 1593 CXXDestructorDecl *Dtor, 1600 AccessSpecifier Access = Dtor->getAccess(); 1604 CXXRecordDecl *NamingClass = Dtor->getParent(); 1608 DeclAccessPair::make(Dtor, Access), 1592 CheckDestructorAccess(SourceLocation Loc, CXXDestructorDecl *Dtor, const PartialDiagnostic &PDiag, QualType ObjectTy) argument
|
H A D | SemaType.cpp | 6824 CXXDestructorDecl *Dtor = RD->getDestructor(); local 6825 assert(Dtor && "class has literal fields and bases but no dtor?"); 6826 if (!Dtor) 6829 Diag(Dtor->getLocation(), Dtor->isUserProvided() ? 6832 if (!Dtor->isUserProvided()) 6833 SpecialMemberIsTrivial(Dtor, CXXDestructor, /*Diagnose*/true);
|
H A D | SemaDeclCXX.cpp | 3861 if (CXXDestructorDecl *Dtor = LookupDestructor(Constructor->getParent())) { 3862 MarkFunctionReferenced(Initializer->getSourceLocation(), Dtor); 3863 DiagnoseUseOfDecl(Dtor, Initializer->getSourceLocation()); 4334 CXXDestructorDecl *Dtor = LookupDestructor(FieldClassDecl); local 4335 assert(Dtor && "No dtor found for FieldClassDecl!"); 4336 CheckDestructorAccess(Field->getLocation(), Dtor, 4341 MarkFunctionReferenced(Location, Dtor); 4342 DiagnoseUseOfDecl(Dtor, Location); 4363 CXXDestructorDecl *Dtor = LookupDestructor(BaseClassDecl); local 4364 assert(Dtor 4393 CXXDestructorDecl *Dtor = LookupDestructor(BaseClassDecl); local [all...] |
/external/clang/lib/Analysis/ |
H A D | CFG.cpp | 3760 const CXXDestructorDecl *Dtor = E->getTemporary()->getDestructor(); local 3762 if (Dtor->getParent()->isAnyDestructorNoReturn()) { 4181 OS << "(Temp Dtor) ";
|