Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SynTree/Expression.h

    r630a82a r2a4b088  
    55// file "LICENCE" distributed with Cforall.
    66//
    7 // Expression.h --
     7// Expression.h -- 
    88//
    99// Author           : Richard C. Bilson
    1010// Created On       : Mon May 18 07:44:20 2015
    11 // Last Modified By : Peter A. Buhr
    12 // Last Modified On : Fri Apr  8 17:18:06 2016
    13 // Update Count     : 21
     11// Last Modified By : Rob Schluntz
     12// Last Modified On : Wed Dec 09 14:10:21 2015
     13// Update Count     : 19
    1414//
    1515
     
    155155};
    156156
    157 // xxx - this doesn't appear to actually be hooked in anywhere. We should use this instead of the "&&"" UntypedExpr hack
    158157class LabelAddressExpr : public Expression {
    159158  public:
    160159        LabelAddressExpr( Expression *arg );
    161         LabelAddressExpr( const LabelAddressExpr &other );
     160        LabelAddressExpr( const AddressExpr &other );
    162161        virtual ~LabelAddressExpr();
    163162
     
    252251};
    253252
    254 /// ConstantExpr represents an expression that simply refers to the value of a constant
     253/// ConstantExpr represents an expression that simply refers to the value of a constant 
    255254class ConstantExpr : public Expression {
    256255  public:
     
    516515  public:
    517516        AsmExpr( Expression *inout, ConstantExpr *constraint, Expression *operand ) : inout( inout ), constraint( constraint ), operand( operand ) {}
    518         AsmExpr( const AsmExpr & other );
    519517        virtual ~AsmExpr() { delete inout; delete constraint; delete operand; };
    520518
     
    543541  public:
    544542        UntypedValofExpr( Statement *_body, Expression *_aname = 0 ) : Expression( _aname ), body ( _body ) {}
    545         UntypedValofExpr( const UntypedValofExpr & other );
    546         virtual ~UntypedValofExpr();
     543        virtual ~UntypedValofExpr() {}
    547544
    548545        Expression *get_value();
     
    555552  private:
    556553        Statement *body;
    557 };
    558 
    559 /// CompoundLiteralExpr represents a C99 'compound literal'
    560 class CompoundLiteralExpr : public Expression {
    561   public:
    562         CompoundLiteralExpr( Type * type, Initializer * initializer );
    563         CompoundLiteralExpr( const CompoundLiteralExpr &other );
    564         ~CompoundLiteralExpr();
    565 
    566         Type * get_type() const { return type; }
    567         void set_type( Type * t ) { type = t; }
    568 
    569         Initializer * get_initializer() const { return initializer; }
    570         void set_initializer( Initializer * i ) { initializer = i; }
    571 
    572         virtual CompoundLiteralExpr *clone() const { return new CompoundLiteralExpr( *this ); }
    573         virtual void accept( Visitor &v ) { v.visit( this ); }
    574         virtual Expression *acceptMutator( Mutator &m ) { return m.mutate( this ); }
    575         virtual void print( std::ostream &os, int indent = 0 ) const;
    576   private:
    577         Type * type;
    578         Initializer * initializer;
    579554};
    580555
Note: See TracChangeset for help on using the changeset viewer.