Ignore:
Timestamp:
Mar 3, 2016, 1:28:56 PM (8 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
Children:
3627356
Parents:
9d7b3ea (diff), 4040425 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/ParseNode.h

    r9d7b3ea r36ebd03  
    1010// Created On       : Sat May 16 13:28:16 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Mon Feb  1 13:32:32 2016
    13 // Update Count     : 184
     12// Last Modified On : Wed Mar  2 17:26:35 2016
     13// Update Count     : 190
    1414//
    1515
     
    329329        enum BasicType { Char, Int, Float, Double, Void, Bool, Complex, Imaginary };
    330330        enum Modifier  { Signed, Unsigned, Short, Long };
    331         enum Aggregate { Struct, Union, Context };
     331        enum Aggregate { Struct, Union, Trait };
    332332        enum TypeClass { Type, Dtype, Ftype };
     333        enum BuiltinType { Valist };
    333334
    334335        static const char *storageName[]; 
     
    338339        static const char *aggregateName[];
    339340        static const char *typeClassName[];
     341        static const char *builtinTypeName[];
    340342
    341343        static DeclarationNode *newFunction( std::string *name, DeclarationNode *ret, DeclarationNode *param, StatementNode *body, bool newStyle = false );
     
    352354        static DeclarationNode *newFromTypeGen( std::string *, ExpressionNode *params );
    353355        static DeclarationNode *newTypeParam( TypeClass, std::string *);
    354         static DeclarationNode *newContext( std::string *name, DeclarationNode *params, DeclarationNode *asserts );
    355         static DeclarationNode *newContextUse( std::string *name, ExpressionNode *params );
     356        static DeclarationNode *newTrait( std::string *name, DeclarationNode *params, DeclarationNode *asserts );
     357        static DeclarationNode *newTraitUse( std::string *name, ExpressionNode *params );
    356358        static DeclarationNode *newTypeDecl( std::string *name, DeclarationNode *typeParams );
    357359        static DeclarationNode *newPointer( DeclarationNode *qualifiers );
     
    363365        static DeclarationNode *newAttr( std::string *, ExpressionNode *expr );
    364366        static DeclarationNode *newAttr( std::string *, DeclarationNode *type );
     367        static DeclarationNode *newBuiltinType( BuiltinType );
    365368
    366369        DeclarationNode *addQualifiers( DeclarationNode *);
     
    401404        LinkageSpec::Type get_linkage() const { return linkage; }
    402405        DeclarationNode *extractAggregate() const;
     406        ExpressionNode *get_enumeratorValue() const { return enumeratorValue; }
    403407
    404408        DeclarationNode();
     
    413417        std::list< std::string > attributes;
    414418        ExpressionNode *bitfieldWidth;
     419        ExpressionNode *enumeratorValue;
    415420        InitializerNode *initializer;
    416421        bool hasEllipsis;
Note: See TracChangeset for help on using the changeset viewer.