diff options
author | Abramo Bagnara <abramo.bagnara@gmail.com> | 2011-03-04 12:42:03 +0000 |
---|---|---|
committer | Abramo Bagnara <abramo.bagnara@gmail.com> | 2011-03-04 12:42:03 +0000 |
commit | 23485e04be319d758ed20680764e34a8e49e7f1b (patch) | |
tree | 50a817f830a4a3c43b9fc6ae88fefeac984639b1 /clang/lib/AST/DeclTemplate.cpp | |
parent | 3531e9b0d947d0c49790eaab37c7f5d4fe35427d (diff) | |
download | bcm5719-llvm-23485e04be319d758ed20680764e34a8e49e7f1b.tar.gz bcm5719-llvm-23485e04be319d758ed20680764e34a8e49e7f1b.zip |
Improved TemplateTypeParmDecl end location.
llvm-svn: 126996
Diffstat (limited to 'clang/lib/AST/DeclTemplate.cpp')
-rw-r--r-- | clang/lib/AST/DeclTemplate.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/clang/lib/AST/DeclTemplate.cpp b/clang/lib/AST/DeclTemplate.cpp index 67eb11d2d0f..6923a609282 100644 --- a/clang/lib/AST/DeclTemplate.cpp +++ b/clang/lib/AST/DeclTemplate.cpp @@ -385,7 +385,17 @@ TemplateTypeParmDecl::Create(const ASTContext &C, EmptyShell Empty) { } SourceLocation TemplateTypeParmDecl::getDefaultArgumentLoc() const { - return DefaultArgument->getTypeLoc().getSourceRange().getBegin(); + return hasDefaultArgument() + ? DefaultArgument->getTypeLoc().getBeginLoc() + : SourceLocation(); +} + +SourceRange TemplateTypeParmDecl::getSourceRange() const { + if (hasDefaultArgument() && !defaultArgumentWasInherited()) + return SourceRange(getLocation(), + DefaultArgument->getTypeLoc().getEndLoc()); + else + return SourceRange(getLocation()); } unsigned TemplateTypeParmDecl::getDepth() const { |