Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/SynTree/Declaration.h

    rf6e3e34 r68f9c43  
    4545        Declaration( const std::string &name, Type::StorageClasses scs, LinkageSpec::Spec linkage );
    4646        Declaration( const Declaration &other );
    47         virtual ~Declaration();
    4847
    4948        const std::string &get_name() const { return name; }
     
    8786        DeclarationWithType( const std::string &name, Type::StorageClasses scs, LinkageSpec::Spec linkage, const std::list< Attribute * > & attributes, Type::FuncSpecifiers fs );
    8887        DeclarationWithType( const DeclarationWithType &other );
    89         virtual ~DeclarationWithType();
    90 
     88       
    9189        std::string get_mangleName() const { return mangleName; }
    9290        DeclarationWithType * set_mangleName( std::string newValue ) { mangleName = newValue; return this; }
     
    126124                                const std::list< Attribute * > attributes = std::list< Attribute * >(), Type::FuncSpecifiers fs = Type::FuncSpecifiers() );
    127125        ObjectDecl( const ObjectDecl &other );
    128         virtual ~ObjectDecl();
    129126
    130127        virtual Type * get_type() const override { return type; }
     
    156153                                  const std::list< Attribute * > attributes = std::list< Attribute * >(), Type::FuncSpecifiers fs = Type::FuncSpecifiers() );
    157154        FunctionDecl( const FunctionDecl &other );
    158         virtual ~FunctionDecl();
    159155
    160156        virtual Type * get_type() const override { return type; }
     
    184180        NamedTypeDecl( const std::string &name, Type::StorageClasses scs, Type *type );
    185181        NamedTypeDecl( const NamedTypeDecl &other );
    186         virtual ~NamedTypeDecl();
    187182
    188183        Type *get_base() const { return base; }
     
    219214        TypeDecl( const std::string &name, Type::StorageClasses scs, Type *type, Kind kind, bool sized, Type * init = nullptr );
    220215        TypeDecl( const TypeDecl &other );
    221         virtual ~TypeDecl();
    222216
    223217        Kind get_kind() const { return kind; }
     
    268262        AggregateDecl( const std::string &name, const std::list< Attribute * > & attributes = std::list< class Attribute * >(), LinkageSpec::Spec linkage = LinkageSpec::Cforall );
    269263        AggregateDecl( const AggregateDecl &other );
    270         virtual ~AggregateDecl();
    271 
     264       
    272265        std::list<Declaration*>& get_members() { return members; }
    273266        std::list<TypeDecl*>& get_parameters() { return parameters; }
     
    353346        AsmDecl( AsmStmt *stmt );
    354347        AsmDecl( const AsmDecl &other );
    355         virtual ~AsmDecl();
    356348
    357349        AsmStmt *get_stmt() { return stmt; }
     
    361353        virtual void accept( Visitor &v ) override { v.visit( this ); }
    362354        virtual AsmDecl *acceptMutator( Mutator &m )  override { return m.mutate( this ); }
    363         virtual void print( std::ostream &os, Indenter indent = {} ) const override;
    364         virtual void printShort( std::ostream &os, Indenter indent = {} ) const override;
    365 };
    366 
    367 class StaticAssertDecl : public Declaration {
    368 public:
    369         Expression * condition;
    370         ConstantExpr * message;   // string literal
    371 
    372         StaticAssertDecl( Expression * condition, ConstantExpr * message );
    373         StaticAssertDecl( const StaticAssertDecl & other );
    374         virtual ~StaticAssertDecl();
    375 
    376         virtual StaticAssertDecl * clone() const override { return new StaticAssertDecl( *this ); }
    377         virtual void accept( Visitor &v ) override { v.visit( this ); }
    378         virtual StaticAssertDecl * acceptMutator( Mutator &m )  override { return m.mutate( this ); }
    379355        virtual void print( std::ostream &os, Indenter indent = {} ) const override;
    380356        virtual void printShort( std::ostream &os, Indenter indent = {} ) const override;
Note: See TracChangeset for help on using the changeset viewer.