Don't call this field 'Expr', it changes lookup in illegal ways that
GCC diagnoses.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111865 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/clang/Sema/Action.h b/include/clang/Sema/Action.h
index 008f55d..af4ebdf 100644
--- a/include/clang/Sema/Action.h
+++ b/include/clang/Sema/Action.h
@@ -105,21 +105,21 @@
class FullExprArg {
public:
- FullExprArg(ActionBase &actions) : Expr(0) { }
+ FullExprArg(ActionBase &actions) : E(0) { }
// FIXME: The const_cast here is ugly. RValue references would make this
// much nicer (or we could duplicate a bunch of the move semantics
// emulation code from Ownership.h).
- FullExprArg(const FullExprArg& Other): Expr(Other.Expr) {}
+ FullExprArg(const FullExprArg& Other): E(Other.E) {}
OwningExprResult release() {
- return move(Expr);
+ return move(E);
}
- ExprArg get() const { return Expr; }
+ Expr *get() const { return E; }
- ExprArg operator->() {
- return Expr;
+ Expr *operator->() {
+ return E;
}
private:
@@ -127,9 +127,9 @@
// Action::FullExpr that needs access to the constructor below.
friend class Action;
- explicit FullExprArg(Expr *expr) : Expr(expr) {}
+ explicit FullExprArg(Expr *expr) : E(expr) {}
- Expr *Expr;
+ Expr *E;
};
FullExprArg MakeFullExpr(Expr *Arg) {