summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/AST.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/cplusplus/AST.h')
-rw-r--r--src/shared/cplusplus/AST.h43
1 files changed, 13 insertions, 30 deletions
diff --git a/src/shared/cplusplus/AST.h b/src/shared/cplusplus/AST.h
index 8f90555af7..73452ae778 100644
--- a/src/shared/cplusplus/AST.h
+++ b/src/shared/cplusplus/AST.h
@@ -258,7 +258,6 @@ public:
virtual PostIncrDecrAST *asPostIncrDecr() { return 0; }
virtual PostfixAST *asPostfix() { return 0; }
virtual PostfixDeclaratorAST *asPostfixDeclarator() { return 0; }
- virtual PostfixExpressionAST *asPostfixExpression() { return 0; }
virtual PtrOperatorAST *asPtrOperator() { return 0; }
virtual QtEnumDeclarationAST *asQtEnumDeclaration() { return 0; }
virtual QtFlagsDeclarationAST *asQtFlagsDeclaration() { return 0; }
@@ -375,7 +374,7 @@ public:
virtual PtrOperatorAST *clone(MemoryPool *pool) const = 0;
};
-class CPLUSPLUS_EXPORT PostfixAST: public AST
+class CPLUSPLUS_EXPORT PostfixAST: public ExpressionAST
{
public:
PostfixAST()
@@ -2503,13 +2502,15 @@ protected:
class CPLUSPLUS_EXPORT CallAST: public PostfixAST
{
public:
+ ExpressionAST *base_expression;
unsigned lparen_token;
ExpressionListAST *expression_list;
unsigned rparen_token;
public:
CallAST()
- : lparen_token(0)
+ : base_expression(0)
+ , lparen_token(0)
, expression_list(0)
, rparen_token(0)
{}
@@ -2529,13 +2530,15 @@ protected:
class CPLUSPLUS_EXPORT ArrayAccessAST: public PostfixAST
{
public:
+ ExpressionAST *base_expression;
unsigned lbracket_token;
ExpressionAST *expression;
unsigned rbracket_token;
public:
ArrayAccessAST()
- : lbracket_token(0)
+ : base_expression(0)
+ , lbracket_token(0)
, expression(0)
, rbracket_token(0)
{}
@@ -2555,11 +2558,13 @@ protected:
class CPLUSPLUS_EXPORT PostIncrDecrAST: public PostfixAST
{
public:
+ ExpressionAST *base_expression;
unsigned incr_decr_token;
public:
PostIncrDecrAST()
- : incr_decr_token(0)
+ : base_expression(0)
+ , incr_decr_token(0)
{}
virtual PostIncrDecrAST *asPostIncrDecr() { return this; }
@@ -2577,13 +2582,15 @@ protected:
class CPLUSPLUS_EXPORT MemberAccessAST: public PostfixAST
{
public:
+ ExpressionAST *base_expression;
unsigned access_token;
unsigned template_token;
NameAST *member_name;
public:
MemberAccessAST()
- : access_token(0)
+ : base_expression(0)
+ , access_token(0)
, template_token(0)
, member_name(0)
{}
@@ -2686,30 +2693,6 @@ protected:
virtual bool match0(AST *, ASTMatcher *);
};
-class CPLUSPLUS_EXPORT PostfixExpressionAST: public ExpressionAST
-{
-public:
- ExpressionAST *base_expression;
- PostfixListAST *postfix_expression_list;
-
-public:
- PostfixExpressionAST()
- : base_expression(0)
- , postfix_expression_list(0)
- {}
-
- virtual PostfixExpressionAST *asPostfixExpression() { return this; }
-
- virtual unsigned firstToken() const;
- virtual unsigned lastToken() const;
-
- virtual PostfixExpressionAST *clone(MemoryPool *pool) const;
-
-protected:
- virtual void accept0(ASTVisitor *visitor);
- virtual bool match0(AST *, ASTMatcher *);
-};
-
class CPLUSPLUS_EXPORT PointerToMemberAST: public PtrOperatorAST
{
public: