]> granicus.if.org Git - clang/commit
Sema: Subst type default template args earlier
authorDavid Majnemer <david.majnemer@gmail.com>
Wed, 28 Aug 2013 23:48:32 +0000 (23:48 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Wed, 28 Aug 2013 23:48:32 +0000 (23:48 +0000)
commit9d57b8dea3b139dc2e2976ffccef50c74ac03873
treea0fbb8e814611a0fcf5f44f723e25812855b1189
parent112586cef341143febbf6b781df6491c07db0e91
Sema: Subst type default template args earlier

Summary:
We would not perform substitution at an appropriate point, allowing strange
results to appear. We would accepts things that we shouldn't or mangle things incorrectly.  Note that this hasn't fixed the other cases like
template-template parameters or non-type template parameters.

Reviewers: doug.gregor, rjmccall, rsmith

Reviewed By: rsmith

CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1507

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189540 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaTemplate.cpp
lib/Sema/SemaTemplateInstantiateDecl.cpp
test/CodeGenCXX/mangle.cpp
test/SemaCXX/cxx1y-deduced-return-type.cpp
test/SemaTemplate/default-arguments-cxx0x.cpp
test/SemaTemplate/default-arguments.cpp