diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2010-07-29 16:12:09 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2010-07-29 16:12:09 +0000 |
commit | 029fd693cf69dfe0bdf092778f085b3343c8964f (patch) | |
tree | d26370ca62b5539a11ce0dd58d56923e7f24c4e2 /clang/lib/AST/DeclTemplate.cpp | |
parent | 2bf3d24ca1b519c261010a03a8a6f80b284848bc (diff) | |
download | bcm5719-llvm-029fd693cf69dfe0bdf092778f085b3343c8964f.tar.gz bcm5719-llvm-029fd693cf69dfe0bdf092778f085b3343c8964f.zip |
Implement RedeclarableTemplateDecl::getNextRedeclaration
This patch uses the newly added Latest field of CommonBase to provide
a getNextRedeclaration() implementation for RedeclarableTemplateDecl.
llvm-svn: 109756
Diffstat (limited to 'clang/lib/AST/DeclTemplate.cpp')
-rw-r--r-- | clang/lib/AST/DeclTemplate.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/AST/DeclTemplate.cpp b/clang/lib/AST/DeclTemplate.cpp index 0ca2837627f..25df086e73c 100644 --- a/clang/lib/AST/DeclTemplate.cpp +++ b/clang/lib/AST/DeclTemplate.cpp @@ -119,6 +119,13 @@ void RedeclarableTemplateDecl::setPreviousDeclarationImpl( } } +RedeclarableTemplateDecl *RedeclarableTemplateDecl::getNextRedeclaration() { + if (CommonOrPrev.is<RedeclarableTemplateDecl*>()) + return CommonOrPrev.get<RedeclarableTemplateDecl*>(); + CommonBase *Common = CommonOrPrev.get<CommonBase*>(); + return Common ? Common->Latest : this; +} + //===----------------------------------------------------------------------===// // FunctionTemplateDecl Implementation //===----------------------------------------------------------------------===// |