summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2010-05-25 19:53:14 +0000
committerDouglas Gregor <dgregor@apple.com>2010-05-25 19:53:14 +0000
commitecd99b1a40b5308f83bc5e5f6355515db420f78f (patch)
tree0a5e5414b5f04b534a3efb53d6e5ea0f338e07bd
parent4e786ddccbb1321d0cccac57da2e887dd5fd83cb (diff)
downloadbcm5719-llvm-ecd99b1a40b5308f83bc5e5f6355515db420f78f.tar.gz
bcm5719-llvm-ecd99b1a40b5308f83bc5e5f6355515db420f78f.zip
Add Redeclarable boilerplate to TypedefDecl, from Peter Collingbourne!
llvm-svn: 104631
-rw-r--r--clang/include/clang/AST/Decl.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/include/clang/AST/Decl.h b/clang/include/clang/AST/Decl.h
index e95f6971049..7d5b66e02a2 100644
--- a/clang/include/clang/AST/Decl.h
+++ b/clang/include/clang/AST/Decl.h
@@ -1638,7 +1638,19 @@ class TypedefDecl : public TypeDecl, public Redeclarable<TypedefDecl> {
: TypeDecl(Typedef, DC, L, Id), TInfo(TInfo) {}
virtual ~TypedefDecl();
+
+protected:
+ typedef Redeclarable<TypedefDecl> redeclarable_base;
+ virtual TypedefDecl *getNextRedeclaration() { return RedeclLink.getNext(); }
+
public:
+ typedef redeclarable_base::redecl_iterator redecl_iterator;
+ redecl_iterator redecls_begin() const {
+ return redeclarable_base::redecls_begin();
+ }
+ redecl_iterator redecls_end() const {
+ return redeclarable_base::redecls_end();
+ }
static TypedefDecl *Create(ASTContext &C, DeclContext *DC,
SourceLocation L, IdentifierInfo *Id,
OpenPOWER on IntegriCloud