Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SynTree/Initializer.h

    rf1b1e4c rdb4ecc5  
    2020#include "Visitor.h"
    2121#include "Mutator.h"
    22 #include "Type.h"
    2322
    2423#include <cassert>
     
    2928        //      Initializer( std::string _name = std::string(""), int _pos = 0 );
    3029        Initializer( bool maybeConstructed );
    31         Initializer( const Initializer & other );
    3230        virtual ~Initializer();
    3331
     
    7068        std::list<Expression *> &get_designators() { return designators; }
    7169
    72         virtual SingleInit *clone() const { return new SingleInit( *this); }
     70        virtual SingleInit *clone() const;
    7371        virtual void accept( Visitor &v ) { v.visit( this ); }
    7472        virtual Initializer *acceptMutator( Mutator &m ) { return m.mutate( this ); }
     
    9694        std::list<Initializer*>::iterator end_initializers() { return initializers.end(); }
    9795
    98         virtual ListInit *clone() const { return new ListInit( *this ); }
     96        virtual ListInit *clone() const;
    9997        virtual void accept( Visitor &v ) { v.visit( this ); }
    10098        virtual Initializer *acceptMutator( Mutator &m ) { return m.mutate( this ); }
     
    110108  public:
    111109        ConstructorInit( Statement * ctor, Statement * dtor, Initializer * init );
    112         ConstructorInit( const ConstructorInit &other );
    113110        virtual ~ConstructorInit();
    114111
     
    120117        Initializer * get_init() const { return init; }
    121118
    122         ConstructorInit *clone() const { return new ConstructorInit( *this ); }
     119        virtual ConstructorInit *clone() const;
    123120        virtual void accept( Visitor &v ) { v.visit( this ); }
    124121        virtual Initializer *acceptMutator( Mutator &m ) { return m.mutate( this ); }
Note: See TracChangeset for help on using the changeset viewer.