SemaExpr.cpp (280031) | SemaExpr.cpp (283526) |
---|---|
1//===--- SemaExpr.cpp - Semantic Analysis for Expressions -----------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 103 unchanged lines hidden (view full) --- 112 } 113 } 114 } 115 116 switch (Result) { 117 case AR_Available: 118 case AR_NotYetIntroduced: 119 break; | 1//===--- SemaExpr.cpp - Semantic Analysis for Expressions -----------------===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// --- 103 unchanged lines hidden (view full) --- 112 } 113 } 114 } 115 116 switch (Result) { 117 case AR_Available: 118 case AR_NotYetIntroduced: 119 break; |
120 | 120 |
121 case AR_Deprecated: 122 if (S.getCurContextAvailability() != AR_Deprecated) 123 S.EmitAvailabilityWarning(Sema::AD_Deprecation, 124 D, Message, Loc, UnknownObjCClass, ObjCPDecl, 125 ObjCPropertyAccess); 126 break; 127 128 case AR_Unavailable: --- 11496 unchanged lines hidden (view full) --- 11625 DefineImplicitMoveConstructor(Loc, Constructor); 11626 } 11627 } else if (Constructor->getInheritedConstructor()) { 11628 DefineInheritingConstructor(Loc, Constructor); 11629 } 11630 } else if (CXXDestructorDecl *Destructor = 11631 dyn_cast<CXXDestructorDecl>(Func)) { 11632 Destructor = cast<CXXDestructorDecl>(Destructor->getFirstDecl()); | 121 case AR_Deprecated: 122 if (S.getCurContextAvailability() != AR_Deprecated) 123 S.EmitAvailabilityWarning(Sema::AD_Deprecation, 124 D, Message, Loc, UnknownObjCClass, ObjCPDecl, 125 ObjCPropertyAccess); 126 break; 127 128 case AR_Unavailable: --- 11496 unchanged lines hidden (view full) --- 11625 DefineImplicitMoveConstructor(Loc, Constructor); 11626 } 11627 } else if (Constructor->getInheritedConstructor()) { 11628 DefineInheritingConstructor(Loc, Constructor); 11629 } 11630 } else if (CXXDestructorDecl *Destructor = 11631 dyn_cast<CXXDestructorDecl>(Func)) { 11632 Destructor = cast<CXXDestructorDecl>(Destructor->getFirstDecl()); |
11633 if (Destructor->isDefaulted() && !Destructor->isDeleted()) | 11633 if (Destructor->isDefaulted() && !Destructor->isDeleted()) { 11634 if (Destructor->isTrivial() && !Destructor->hasAttr<DLLExportAttr>()) 11635 return; |
11634 DefineImplicitDestructor(Loc, Destructor); | 11636 DefineImplicitDestructor(Loc, Destructor); |
11637 } |
|
11635 if (Destructor->isVirtual()) 11636 MarkVTableUsed(Loc, Destructor->getParent()); 11637 } else if (CXXMethodDecl *MethodDecl = dyn_cast<CXXMethodDecl>(Func)) { 11638 if (MethodDecl->isOverloadedOperator() && 11639 MethodDecl->getOverloadedOperator() == OO_Equal) { 11640 MethodDecl = cast<CXXMethodDecl>(MethodDecl->getFirstDecl()); 11641 if (MethodDecl->isDefaulted() && !MethodDecl->isDeleted()) { 11642 if (MethodDecl->isCopyAssignmentOperator()) --- 2173 unchanged lines hidden --- | 11638 if (Destructor->isVirtual()) 11639 MarkVTableUsed(Loc, Destructor->getParent()); 11640 } else if (CXXMethodDecl *MethodDecl = dyn_cast<CXXMethodDecl>(Func)) { 11641 if (MethodDecl->isOverloadedOperator() && 11642 MethodDecl->getOverloadedOperator() == OO_Equal) { 11643 MethodDecl = cast<CXXMethodDecl>(MethodDecl->getFirstDecl()); 11644 if (MethodDecl->isDefaulted() && !MethodDecl->isDeleted()) { 11645 if (MethodDecl->isCopyAssignmentOperator()) --- 2173 unchanged lines hidden --- |