summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaTemplate/instantiate-member-class.cpp
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2009-12-01 22:10:20 +0000
committerJohn McCall <rjmccall@apple.com>2009-12-01 22:10:20 +0000
commit2d74de96325e44dd46713c5dc29dba48339ad6bd (patch)
tree5881e67ca07dfd4866b945196a741805f8f4f8cf /clang/test/SemaTemplate/instantiate-member-class.cpp
parentd0c9a29cb8a60428c9c2476240541577256f9ea7 (diff)
downloadbcm5719-llvm-2d74de96325e44dd46713c5dc29dba48339ad6bd.tar.gz
bcm5719-llvm-2d74de96325e44dd46713c5dc29dba48339ad6bd.zip
Rework how we support C++ implicit member accesses. If we can resolve an
implicit member access to a specific declaration, go ahead and create it as a DeclRefExpr or a MemberExpr (with implicit CXXThisExpr base) as appropriate. Otherwise, create an UnresolvedMemberExpr or DependentScopeMemberExpr with a null base expression. By representing implicit accesses directly in the AST, we get the ability to correctly delay the decision about whether it's actually an instance member access or not until resolution is complete. This permits us to correctly avoid diagnosing the 'problem' of 'MyType::foo()' where the relationship to the type isn't really known until instantiation. llvm-svn: 90266
Diffstat (limited to 'clang/test/SemaTemplate/instantiate-member-class.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud