diff options
author | Douglas Gregor <dgregor@apple.com> | 2011-05-10 18:27:06 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2011-05-10 18:27:06 +0000 |
commit | c840649ed5acccf68e1bc5a9d22f2ea017074586 (patch) | |
tree | 75551f7968f8f7ecaa1254f517270a6466627824 /lib/Sema/SemaAccess.cpp | |
parent | 969f9d47338fc36ebb6d24ad3a51e45eda07fd58 (diff) |
Reimplement Sema::MatchTemplateParametersToScopeSpecifier() based on
the semantic context referenced by the nested-name-specifier rather
than the syntactic form of the nested-name-specifier. The previous
incarnation was based on my complete misunderstanding of C++
[temp.expl.spec]. The latest C++0x working draft clarifies the
requirements here, and this rewrite is intended to follow that.
Along the way, improve source location information in the
diagnostics. For example, if we report that a specific type needs or
doesn't need a 'template<>' header, we dig out that type in the
nested-name-specifier and highlight its range.
Fixes: PR5907, PR9421, PR8277, PR8708, PR9482, PR9668, PR9877, and
<rdar://problem/9135379>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@131138 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaAccess.cpp')
0 files changed, 0 insertions, 0 deletions