]> granicus.if.org Git - clang/commitdiff
Replace Decl::isSameEntityAs with a free function declaresSameEntity, which can cope...
authorDouglas Gregor <dgregor@apple.com>
Wed, 14 Dec 2011 23:59:32 +0000 (23:59 +0000)
committerDouglas Gregor <dgregor@apple.com>
Wed, 14 Dec 2011 23:59:32 +0000 (23:59 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146613 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/AST/DeclBase.h

index 20f46a41720bf364c510b65acd2712cefd5cc747..b0534b82804d0c9cd48ca2d1fd3d4c28cbada7b4 100644 (file)
@@ -589,12 +589,6 @@ public:
 
   /// \brief Whether this particular Decl is a canonical one.
   bool isCanonicalDecl() const { return getCanonicalDecl() == this; }
-
-  /// \brief Determine whether this declaration declares the same entity as
-  /// the other declaration.
-  bool isSameEntityAs(const Decl *Other) const {
-    return getCanonicalDecl() == Other->getCanonicalDecl();
-  }
   
 protected:
   /// \brief Returns the next redeclaration or itself if this is the only decl.
@@ -766,6 +760,17 @@ protected:
   ASTMutationListener *getASTMutationListener() const;
 };
 
+/// \brief Determine whether two declarations declare the same entity.
+inline bool declaresSameEntity(const Decl *D1, const Decl *D2) {
+  if (D1 == D2)
+    return true;
+  
+  if (!D1 || !D2)
+    return false;
+  
+  return D1->getCanonicalDecl() == D2->getCanonicalDecl();
+}
+  
 /// PrettyStackTraceDecl - If a crash occurs, indicate that it happened when
 /// doing something to a specific decl.
 class PrettyStackTraceDecl : public llvm::PrettyStackTraceEntry {