Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SynTree/Statement.h

    r6a276a0 r68f9c43  
    1010// Created On       : Mon May 18 07:44:20 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Mar  8 14:53:02 2018
    13 // Update Count     : 78
     12// Last Modified On : Sun Sep  3 20:46:46 2017
     13// Update Count     : 77
    1414//
    1515
     
    3838
    3939        Statement( const std::list<Label> & labels = {} );
    40         virtual ~Statement();
    4140
    4241        std::list<Label> & get_labels() { return labels; }
     
    5655        CompoundStmt( std::list<Statement *> stmts );
    5756        CompoundStmt( const CompoundStmt &other );
    58         virtual ~CompoundStmt();
    5957
    6058        std::list<Statement*>& get_kids() { return kids; }
     
    8482        ExprStmt( Expression *expr );
    8583        ExprStmt( const ExprStmt &other );
    86         virtual ~ExprStmt();
    8784
    8885        Expression *get_expr() { return expr; }
     
    105102        AsmStmt( bool voltile, Expression *instruction, std::list<Expression *> output, std::list<Expression *> input, std::list<ConstantExpr *> clobber, std::list<Label> gotolabels );
    106103        AsmStmt( const AsmStmt &other );
    107         virtual ~AsmStmt();
    108104
    109105        bool get_voltile() { return voltile; }
     
    136132                        std::list<Statement *> initialization = std::list<Statement *>() );
    137133        IfStmt( const IfStmt &other );
    138         virtual ~IfStmt();
    139134
    140135        std::list<Statement *> &get_initialization() { return initialization; }
     
    159154        SwitchStmt( Expression *condition, const std::list<Statement *> &statements );
    160155        SwitchStmt( const SwitchStmt &other );
    161         virtual ~SwitchStmt();
    162156
    163157        Expression *get_condition() { return condition; }
     
    181175        CaseStmt( Expression *conditions, const std::list<Statement *> &stmts, bool isdef = false ) throw (SemanticErrorException);
    182176        CaseStmt( const CaseStmt &other );
    183         virtual ~CaseStmt();
    184177
    185178        static CaseStmt * makeDefault( const std::list<Label> & labels = {}, std::list<Statement *> stmts = std::list<Statement *>() );
     
    212205               Statement *body, bool isDoWhile = false );
    213206        WhileStmt( const WhileStmt &other );
    214         virtual ~WhileStmt();
    215207
    216208        Expression *get_condition() { return condition; }
     
    237229             Expression *condition = 0, Expression *increment = 0, Statement *body = 0 );
    238230        ForStmt( const ForStmt &other );
    239         virtual ~ForStmt();
    240231
    241232        std::list<Statement *> &get_initialization() { return initialization; }
     
    255246class BranchStmt : public Statement {
    256247  public:
    257         enum Type { Goto = 0, Break, Continue, FallThrough, FallThroughDefault };
     248        enum Type { Goto = 0, Break, Continue };
    258249
    259250        // originalTarget kept for error messages.
     
    290281        ReturnStmt( Expression *expr );
    291282        ReturnStmt( const ReturnStmt &other );
    292         virtual ~ReturnStmt();
    293283
    294284        Expression *get_expr() { return expr; }
     
    311301        ThrowStmt( Kind kind, Expression * expr, Expression * target = nullptr );
    312302        ThrowStmt( const ThrowStmt &other );
    313         virtual ~ThrowStmt();
    314303
    315304        Kind get_kind() { return kind; }
     
    333322        TryStmt( CompoundStmt *tryBlock, std::list<CatchStmt *> &handlers, FinallyStmt *finallyBlock = 0 );
    334323        TryStmt( const TryStmt &other );
    335         virtual ~TryStmt();
    336324
    337325        CompoundStmt *get_block() const { return block; }
     
    360348                   Expression *cond, Statement *body );
    361349        CatchStmt( const CatchStmt &other );
    362         virtual ~CatchStmt();
    363350
    364351        Kind get_kind() { return kind; }
     
    382369        FinallyStmt( CompoundStmt *block );
    383370        FinallyStmt( const FinallyStmt &other );
    384         virtual ~FinallyStmt();
    385371
    386372        CompoundStmt *get_block() const { return block; }
     
    409395        WaitForStmt();
    410396        WaitForStmt( const WaitForStmt & );
    411         virtual ~WaitForStmt();
    412397
    413398        std::vector<Clause> clauses;
     
    438423        WithStmt( const std::list< Expression * > & exprs, Statement * stmt );
    439424        WithStmt( const WithStmt & other );
    440         virtual ~WithStmt();
    441425
    442426        virtual WithStmt * clone() const override { return new WithStmt( *this ); }
     
    454438        DeclStmt( Declaration *decl );
    455439        DeclStmt( const DeclStmt &other );
    456         virtual ~DeclStmt();
    457440
    458441        Declaration *get_decl() const { return decl; }
     
    476459        ImplicitCtorDtorStmt( Statement * callStmt );
    477460        ImplicitCtorDtorStmt( const ImplicitCtorDtorStmt & other );
    478         virtual ~ImplicitCtorDtorStmt();
    479461
    480462        Statement *get_callStmt() const { return callStmt; }
Note: See TracChangeset for help on using the changeset viewer.