r354812 - Revert "Make static counters in ASTContext non-static."
Vlad Tsyrklevich via cfe-commits
cfe-commits at lists.llvm.org
Mon Feb 25 11:53:13 PST 2019
Author: vlad.tsyrklevich
Date: Mon Feb 25 11:53:13 2019
New Revision: 354812
URL: http://llvm.org/viewvc/llvm-project?rev=354812&view=rev
Log:
Revert "Make static counters in ASTContext non-static."
This reverts commit r354795, I suspect it is causing test failures
on MSan sanitizer bots.
Modified:
cfe/trunk/include/clang/AST/ASTContext.h
cfe/trunk/lib/AST/ASTContext.cpp
cfe/trunk/lib/Sema/SemaDeclCXX.cpp
Modified: cfe/trunk/include/clang/AST/ASTContext.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/ASTContext.h?rev=354812&r1=354811&r2=354812&view=diff
==============================================================================
--- cfe/trunk/include/clang/AST/ASTContext.h (original)
+++ cfe/trunk/include/clang/AST/ASTContext.h Mon Feb 25 11:53:13 2019
@@ -2809,46 +2809,46 @@ public:
//===--------------------------------------------------------------------===//
/// The number of implicitly-declared default constructors.
- unsigned NumImplicitDefaultConstructors;
+ static unsigned NumImplicitDefaultConstructors;
/// The number of implicitly-declared default constructors for
/// which declarations were built.
- unsigned NumImplicitDefaultConstructorsDeclared;
+ static unsigned NumImplicitDefaultConstructorsDeclared;
/// The number of implicitly-declared copy constructors.
- unsigned NumImplicitCopyConstructors;
+ static unsigned NumImplicitCopyConstructors;
/// The number of implicitly-declared copy constructors for
/// which declarations were built.
- unsigned NumImplicitCopyConstructorsDeclared;
+ static unsigned NumImplicitCopyConstructorsDeclared;
/// The number of implicitly-declared move constructors.
- unsigned NumImplicitMoveConstructors;
+ static unsigned NumImplicitMoveConstructors;
/// The number of implicitly-declared move constructors for
/// which declarations were built.
- unsigned NumImplicitMoveConstructorsDeclared;
+ static unsigned NumImplicitMoveConstructorsDeclared;
/// The number of implicitly-declared copy assignment operators.
- unsigned NumImplicitCopyAssignmentOperators;
+ static unsigned NumImplicitCopyAssignmentOperators;
/// The number of implicitly-declared copy assignment operators for
/// which declarations were built.
- unsigned NumImplicitCopyAssignmentOperatorsDeclared;
+ static unsigned NumImplicitCopyAssignmentOperatorsDeclared;
/// The number of implicitly-declared move assignment operators.
- unsigned NumImplicitMoveAssignmentOperators;
+ static unsigned NumImplicitMoveAssignmentOperators;
/// The number of implicitly-declared move assignment operators for
/// which declarations were built.
- unsigned NumImplicitMoveAssignmentOperatorsDeclared;
+ static unsigned NumImplicitMoveAssignmentOperatorsDeclared;
/// The number of implicitly-declared destructors.
- unsigned NumImplicitDestructors;
+ static unsigned NumImplicitDestructors;
/// The number of implicitly-declared destructors for which
/// declarations were built.
- unsigned NumImplicitDestructorsDeclared;
+ static unsigned NumImplicitDestructorsDeclared;
public:
/// Initialize built-in types.
Modified: cfe/trunk/lib/AST/ASTContext.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTContext.cpp?rev=354812&r1=354811&r2=354812&view=diff
==============================================================================
--- cfe/trunk/lib/AST/ASTContext.cpp (original)
+++ cfe/trunk/lib/AST/ASTContext.cpp Mon Feb 25 11:53:13 2019
@@ -94,6 +94,19 @@
using namespace clang;
+unsigned ASTContext::NumImplicitDefaultConstructors;
+unsigned ASTContext::NumImplicitDefaultConstructorsDeclared;
+unsigned ASTContext::NumImplicitCopyConstructors;
+unsigned ASTContext::NumImplicitCopyConstructorsDeclared;
+unsigned ASTContext::NumImplicitMoveConstructors;
+unsigned ASTContext::NumImplicitMoveConstructorsDeclared;
+unsigned ASTContext::NumImplicitCopyAssignmentOperators;
+unsigned ASTContext::NumImplicitCopyAssignmentOperatorsDeclared;
+unsigned ASTContext::NumImplicitMoveAssignmentOperators;
+unsigned ASTContext::NumImplicitMoveAssignmentOperatorsDeclared;
+unsigned ASTContext::NumImplicitDestructors;
+unsigned ASTContext::NumImplicitDestructorsDeclared;
+
enum FloatingRank {
Float16Rank, HalfRank, FloatRank, DoubleRank, LongDoubleRank, Float128Rank
};
Modified: cfe/trunk/lib/Sema/SemaDeclCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclCXX.cpp?rev=354812&r1=354811&r2=354812&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaDeclCXX.cpp (original)
+++ cfe/trunk/lib/Sema/SemaDeclCXX.cpp Mon Feb 25 11:53:13 2019
@@ -7971,14 +7971,14 @@ void Sema::ActOnFinishCXXMemberSpecifica
/// definition of the class is complete.
void Sema::AddImplicitlyDeclaredMembersToClass(CXXRecordDecl *ClassDecl) {
if (ClassDecl->needsImplicitDefaultConstructor()) {
- ++getASTContext().NumImplicitDefaultConstructors;
+ ++ASTContext::NumImplicitDefaultConstructors;
if (ClassDecl->hasInheritedConstructor())
DeclareImplicitDefaultConstructor(ClassDecl);
}
if (ClassDecl->needsImplicitCopyConstructor()) {
- ++getASTContext().NumImplicitCopyConstructors;
+ ++ASTContext::NumImplicitCopyConstructors;
// If the properties or semantics of the copy constructor couldn't be
// determined while the class was being declared, force a declaration
@@ -8000,7 +8000,7 @@ void Sema::AddImplicitlyDeclaredMembersT
}
if (getLangOpts().CPlusPlus11 && ClassDecl->needsImplicitMoveConstructor()) {
- ++getASTContext().NumImplicitMoveConstructors;
+ ++ASTContext::NumImplicitMoveConstructors;
if (ClassDecl->needsOverloadResolutionForMoveConstructor() ||
ClassDecl->hasInheritedConstructor())
@@ -8008,7 +8008,7 @@ void Sema::AddImplicitlyDeclaredMembersT
}
if (ClassDecl->needsImplicitCopyAssignment()) {
- ++getASTContext().NumImplicitCopyAssignmentOperators;
+ ++ASTContext::NumImplicitCopyAssignmentOperators;
// If we have a dynamic class, then the copy assignment operator may be
// virtual, so we have to declare it immediately. This ensures that, e.g.,
@@ -8021,7 +8021,7 @@ void Sema::AddImplicitlyDeclaredMembersT
}
if (getLangOpts().CPlusPlus11 && ClassDecl->needsImplicitMoveAssignment()) {
- ++getASTContext().NumImplicitMoveAssignmentOperators;
+ ++ASTContext::NumImplicitMoveAssignmentOperators;
// Likewise for the move assignment operator.
if (ClassDecl->isDynamicClass() ||
@@ -8031,7 +8031,7 @@ void Sema::AddImplicitlyDeclaredMembersT
}
if (ClassDecl->needsImplicitDestructor()) {
- ++getASTContext().NumImplicitDestructors;
+ ++ASTContext::NumImplicitDestructors;
// If we have a dynamic class, then the destructor may be virtual, so we
// have to declare the destructor immediately. This ensures that, e.g., it
@@ -11013,7 +11013,7 @@ CXXConstructorDecl *Sema::DeclareImplici
DefaultCon->setTrivial(ClassDecl->hasTrivialDefaultConstructor());
// Note that we have declared this constructor.
- ++getASTContext().NumImplicitDefaultConstructorsDeclared;
+ ++ASTContext::NumImplicitDefaultConstructorsDeclared;
Scope *S = getScopeForContext(ClassDecl);
CheckImplicitSpecialMemberDeclaration(S, DefaultCon);
@@ -11286,7 +11286,7 @@ CXXDestructorDecl *Sema::DeclareImplicit
ClassDecl->hasTrivialDestructorForCall());
// Note that we have declared this destructor.
- ++getASTContext().NumImplicitDestructorsDeclared;
+ ++ASTContext::NumImplicitDestructorsDeclared;
Scope *S = getScopeForContext(ClassDecl);
CheckImplicitSpecialMemberDeclaration(S, Destructor);
@@ -11896,7 +11896,7 @@ CXXMethodDecl *Sema::DeclareImplicitCopy
: ClassDecl->hasTrivialCopyAssignment());
// Note that we have added this copy-assignment operator.
- ++getASTContext().NumImplicitCopyAssignmentOperatorsDeclared;
+ ++ASTContext::NumImplicitCopyAssignmentOperatorsDeclared;
Scope *S = getScopeForContext(ClassDecl);
CheckImplicitSpecialMemberDeclaration(S, CopyAssignment);
@@ -12219,7 +12219,7 @@ CXXMethodDecl *Sema::DeclareImplicitMove
: ClassDecl->hasTrivialMoveAssignment());
// Note that we have added this copy-assignment operator.
- ++getASTContext().NumImplicitMoveAssignmentOperatorsDeclared;
+ ++ASTContext::NumImplicitMoveAssignmentOperatorsDeclared;
Scope *S = getScopeForContext(ClassDecl);
CheckImplicitSpecialMemberDeclaration(S, MoveAssignment);
@@ -12602,7 +12602,7 @@ CXXConstructorDecl *Sema::DeclareImplici
: ClassDecl->hasTrivialCopyConstructorForCall()));
// Note that we have declared this constructor.
- ++getASTContext().NumImplicitCopyConstructorsDeclared;
+ ++ASTContext::NumImplicitCopyConstructorsDeclared;
Scope *S = getScopeForContext(ClassDecl);
CheckImplicitSpecialMemberDeclaration(S, CopyConstructor);
@@ -12732,7 +12732,7 @@ CXXConstructorDecl *Sema::DeclareImplici
: ClassDecl->hasTrivialMoveConstructorForCall()));
// Note that we have declared this constructor.
- ++getASTContext().NumImplicitMoveConstructorsDeclared;
+ ++ASTContext::NumImplicitMoveConstructorsDeclared;
Scope *S = getScopeForContext(ClassDecl);
CheckImplicitSpecialMemberDeclaration(S, MoveConstructor);
More information about the cfe-commits
mailing list