summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaExpr.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-06-30 17:20:14 +0000
committerDouglas Gregor <dgregor@apple.com>2009-06-30 17:20:14 +0000
commitdda7ced32ed79f4d60e89d2b64cd2ee041b66616 (patch)
tree32e37d6a4b2d613fe7a8f07f4647c2b50a133158 /clang/lib/Sema/SemaExpr.cpp
parentb2b37c62d0dc22089889321a5cd1676e4f70f78c (diff)
downloadbcm5719-llvm-dda7ced32ed79f4d60e89d2b64cd2ee041b66616.tar.gz
bcm5719-llvm-dda7ced32ed79f4d60e89d2b64cd2ee041b66616.zip
When recursively instantiating function templates, keep track of the
instantiation stack so that we provide a full instantiation backtrace. Previously, we performed all of the instantiations implied by the recursion, but each looked like a "top-level" instantiation. The included test case tests the previous fix for the instantiation of DeclRefExprs. Note that the "instantiated from" diagnostics still don't tell us which template arguments we're instantiating with. llvm-svn: 74540
Diffstat (limited to 'clang/lib/Sema/SemaExpr.cpp')
-rw-r--r--clang/lib/Sema/SemaExpr.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaExpr.cpp b/clang/lib/Sema/SemaExpr.cpp
index 1c5b76075e0..d66b002578b 100644
--- a/clang/lib/Sema/SemaExpr.cpp
+++ b/clang/lib/Sema/SemaExpr.cpp
@@ -5641,7 +5641,7 @@ void Sema::MarkDeclarationReferenced(SourceLocation Loc, Decl *D) {
// instantiated, naturally).
if (Function->getInstantiatedFromMemberFunction() ||
Function->getPrimaryTemplate())
- PendingImplicitInstantiations.push(std::make_pair(Function, Loc));
+ PendingImplicitInstantiations.push_back(std::make_pair(Function, Loc));
}
OpenPOWER on IntegriCloud