Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/ExpressionNode.h

    r44adf1b r59c8dff  
    1818#include "ParseNode.h"
    1919
    20 struct InitializerNode;
     20class InitializerNode;
    2121
    22 struct ExpressionNode final : public ParseList<ExpressionNode> {
     22class ExpressionNode final : public ParseNode {
     23public:
    2324        ExpressionNode( ast::Expr * expr = nullptr ) : expr( expr ) {}
    2425        virtual ~ExpressionNode() {}
    2526        virtual ExpressionNode * clone() const override {
    2627                if ( nullptr == expr ) return nullptr;
    27                 ExpressionNode * node = new ExpressionNode( ast::shallowCopy( expr.get() ) );
    28                 node->next = maybeCopy( next );
    29                 return node;
     28                return static_cast<ExpressionNode*>(
     29                        (new ExpressionNode( ast::shallowCopy( expr.get() ) ))->set_next( maybeCopy( get_next() ) ));
    3030        }
    3131
Note: See TracChangeset for help on using the changeset viewer.