aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema/SemaStmt.cpp
diff options
context:
space:
mode:
authorFrancois Pichet <pichet2000@gmail.com>2011-07-27 01:05:24 +0000
committerFrancois Pichet <pichet2000@gmail.com>2011-07-27 01:05:24 +0000
commitdfb6ae1d8d114772bd91b7079c7e4bf4b517e63c (patch)
tree5a928bf2aa978a64f63a9ec0e862e37f749814fe /lib/Sema/SemaStmt.cpp
parentacc060f6ee491b1eed93b45df2f1b37fb710aa7a (diff)
In Microsoft mode, if we are within a templated function and we can't resolve Identifier during BuildCXXNestedNameSpecifier, then extend the SS with Identifier. This will have the effect of resolving Identifier during template instantiation. The goal is to be able to resolve a function call whose nested-name-specifier is located inside a dependent base class.
class C { public: static void foo2() { } }; template <class T> class A { public: typedef C D; }; template <class T> class B : public A<T> { public: void foo() { D::foo2(); } }; Note that this won't work if the NestedNameSpecifier refers to a type. This fixes 1 error when parsing the MSVC 2010 standard headers file with clang. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136203 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/SemaStmt.cpp')
0 files changed, 0 insertions, 0 deletions