Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/ExpressionNode.cc

    ra839867 rab57786  
    1010// Created On       : Sat May 16 13:17:07 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Aug 25 21:39:40 2016
    13 // Update Count     : 503
     12// Last Modified On : Sun Aug 21 09:43:31 2016
     13// Update Count     : 501
    1414//
    1515
     
    184184        "SizeOf", "AlignOf", "OffsetOf", "?+?", "?-?", "?*?", "?/?", "?%?", "||", "&&",
    185185        "?|?", "?&?", "?^?", "Cast", "?<<?", "?>>?", "?<?", "?>?", "?<=?", "?>=?", "?==?", "?!=?",
    186         "?=?", "?@=?", "?*=?", "?/=?", "?%=?", "?+=?", "?-=?", "?<<=?", "?>>=?", "?&=?", "?^=?", "?|=?",
     186        "?=?", "?*=?", "?/=?", "?%=?", "?+=?", "?-=?", "?<<=?", "?>>=?", "?&=?", "?^=?", "?|=?",
    187187        "?[?]", "...",
    188188        // monadic
     
    191191
    192192Expression *build_cast( DeclarationNode *decl_node, ExpressionNode *expr_node ) {
    193         Type *targetType = maybeMoveBuildType( decl_node );
     193        Type *targetType = decl_node->buildType();
    194194        if ( dynamic_cast< VoidType * >( targetType ) ) {
    195195                delete targetType;
     
    221221}
    222222Expression *build_sizeOftype( DeclarationNode *decl_node ) {
    223         return new SizeofExpr( maybeMoveBuildType( decl_node ) );
     223        Expression* ret = new SizeofExpr( decl_node->buildType() );
     224        delete decl_node;
     225        return ret;
    224226}
    225227Expression *build_alignOfexpr( ExpressionNode *expr_node ) {
     
    227229}
    228230Expression *build_alignOftype( DeclarationNode *decl_node ) {
    229         return new AlignofExpr( maybeMoveBuildType( decl_node) );
     231        return new AlignofExpr( decl_node->buildType() );
    230232}
    231233Expression *build_offsetOf( DeclarationNode *decl_node, NameExpr *member ) {
    232         Expression* ret = new UntypedOffsetofExpr( maybeMoveBuildType( decl_node ), member->get_name() );
     234        Expression* ret = new UntypedOffsetofExpr( decl_node->buildType(), member->get_name() );
     235        delete decl_node;
    233236        delete member;
    234237        return ret;
     
    274277}
    275278Expression *build_attrtype( NameExpr *var, DeclarationNode * decl_node ) {
    276         return new AttrExpr( var, maybeMoveBuildType( decl_node ) );
     279        return new AttrExpr( var, decl_node->buildType() );
    277280}
    278281
     
    301304}
    302305Expression *build_typevalue( DeclarationNode *decl ) {
    303         return new TypeExpr( maybeMoveBuildType( decl ) );
     306        return new TypeExpr( decl->buildType() );
    304307}
    305308
Note: See TracChangeset for help on using the changeset viewer.