Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/ParseNode.h

    r68cd1ce r5f2f2d7  
    1010// Created On       : Sat May 16 13:28:16 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Sat Jun 13 07:24:22 2015
    13 // Update Count     : 79
     12// Last Modified On : Sun Jun  7 22:02:00 2015
     13// Update Count     : 65
    1414//
    1515
     
    2222
    2323#include "utility.h"
    24 #include "Parser/LinkageSpec.h"
    2524#include "SynTree/Type.h"
    26 //#include "SynTree/Declaration.h"
     25#include "SynTree/Declaration.h"
    2726#include "UniqueName.h"
    2827
     
    266265  public:
    267266        enum Qualifier { Const, Restrict, Volatile, Lvalue, Atomic, Attribute };
    268         enum StorageClass { Extern, Static, Auto, Register, Inline, Fortran, Noreturn, Threadlocal, NoStorageClass, };
     267        enum StorageClass { Extern, Static, Auto, Register, Inline, Fortran };
    269268        enum BasicType { Char, Int, Float, Double, Void, Bool, Complex, Imaginary };
    270         enum Modifier  { Signed, Unsigned, Short, Long };
    271         enum Aggregate { Struct, Union, Context };
     269        enum Modifier { Signed, Unsigned, Short, Long };
     270        enum TyCon { Struct, Union, Context };
    272271        enum TypeClass { Type, Dtype, Ftype };
    273272
    274         static const char *storageName[]; 
    275273        static const char *qualifierName[];
    276274        static const char *basicTypeName[];
    277275        static const char *modifierName[];
    278         static const char *aggregateName[];
     276        static const char *tyConName[];
    279277        static const char *typeClassName[];
    280278
     
    287285        static DeclarationNode *newForall( DeclarationNode *);
    288286        static DeclarationNode *newFromTypedef( std::string *);
    289         static DeclarationNode *newAggregate( Aggregate kind, std::string *name, DeclarationNode *formals, ExpressionNode *actuals, DeclarationNode *fields );
     287        static DeclarationNode *newAggregate( TyCon kind, std::string *name, DeclarationNode *formals, ExpressionNode *actuals, DeclarationNode *fields );
    290288        static DeclarationNode *newEnum( std::string *name, DeclarationNode *constants );
    291289        static DeclarationNode *newEnumConstant( std::string *name, ExpressionNode *constant );
     
    346344        ~DeclarationNode();
    347345  private:
    348         StorageClass buildStorageClass() const;
     346        Declaration::StorageClass buildStorageClass() const;
    349347        bool buildInline() const;
    350348
Note: See TracChangeset for help on using the changeset viewer.