summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/DeclTemplate.cpp
diff options
context:
space:
mode:
authorAbramo Bagnara <abramo.bagnara@gmail.com>2011-03-04 12:42:03 +0000
committerAbramo Bagnara <abramo.bagnara@gmail.com>2011-03-04 12:42:03 +0000
commit23485e04be319d758ed20680764e34a8e49e7f1b (patch)
tree50a817f830a4a3c43b9fc6ae88fefeac984639b1 /clang/lib/AST/DeclTemplate.cpp
parent3531e9b0d947d0c49790eaab37c7f5d4fe35427d (diff)
downloadbcm5719-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.cpp12
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 {
OpenPOWER on IntegriCloud