diff options
| author | Douglas Gregor <dgregor@apple.com> | 2009-08-31 21:41:48 +0000 |
|---|---|---|
| committer | Douglas Gregor <dgregor@apple.com> | 2009-08-31 21:41:48 +0000 |
| commit | 96ee789d335cf4566ce6f54b8a51d0488ce898a6 (patch) | |
| tree | a8cb8e71ba49a8f681e38d3226c46beb84bdfe6f /clang/lib/AST/Expr.cpp | |
| parent | e4cfcc3081a90eb93df294c0d60e8b53d0b8ccb7 (diff) | |
| download | bcm5719-llvm-96ee789d335cf4566ce6f54b8a51d0488ce898a6.tar.gz bcm5719-llvm-96ee789d335cf4566ce6f54b8a51d0488ce898a6.zip | |
Rename CXXQualifiedMemberExpr -> CXXAdornedMemberExpr, since we will
also be adding explicit template arguments as an additional
"adornment". No functionality change.
llvm-svn: 80628
Diffstat (limited to 'clang/lib/AST/Expr.cpp')
| -rw-r--r-- | clang/lib/AST/Expr.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/clang/lib/AST/Expr.cpp b/clang/lib/AST/Expr.cpp index c890812d91b..6bc48546289 100644 --- a/clang/lib/AST/Expr.cpp +++ b/clang/lib/AST/Expr.cpp @@ -12,6 +12,7 @@ //===----------------------------------------------------------------------===// #include "clang/AST/Expr.h" +#include "clang/AST/ExprCXX.h" #include "clang/AST/APValue.h" #include "clang/AST/ASTContext.h" #include "clang/AST/DeclObjC.h" @@ -497,7 +498,7 @@ bool Expr::isUnusedResultAWarning(SourceLocation &Loc, SourceRange &R1, } case MemberExprClass: - case CXXQualifiedMemberExprClass: + case CXXAdornedMemberExprClass: // If the base pointer or element is to a volatile pointer/field, accessing // it is a side effect. if (getType().isVolatileQualified()) @@ -686,7 +687,7 @@ Expr::isLvalueResult Expr::isLvalueInternal(ASTContext &Ctx) const { break; } case MemberExprClass: - case CXXQualifiedMemberExprClass: { + case CXXAdornedMemberExprClass: { const MemberExpr *m = cast<MemberExpr>(this); if (Ctx.getLangOptions().CPlusPlus) { // C++ [expr.ref]p4: NamedDecl *Member = m->getMemberDecl(); @@ -958,7 +959,7 @@ bool Expr::isOBJCGCCandidate(ASTContext &Ctx) const { return false; } case MemberExprClass: - case CXXQualifiedMemberExprClass: { + case CXXAdornedMemberExprClass: { const MemberExpr *M = cast<MemberExpr>(this); return M->getBase()->isOBJCGCCandidate(Ctx); } @@ -1916,6 +1917,13 @@ Stmt::child_iterator CallExpr::child_end() { Stmt::child_iterator MemberExpr::child_begin() { return &Base; } Stmt::child_iterator MemberExpr::child_end() { return &Base+1; } +bool MemberExpr::hasQualifier() const { + if (const CXXAdornedMemberExpr *A = dyn_cast<CXXAdornedMemberExpr>(this)) + return A->hasQualifier(); + + return false; +} + // ExtVectorElementExpr Stmt::child_iterator ExtVectorElementExpr::child_begin() { return &Base; } Stmt::child_iterator ExtVectorElementExpr::child_end() { return &Base+1; } |

