Ignore:
Timestamp:
May 22, 2019, 1:36:01 PM (3 years ago)
Author:
Aaron Moss <a3moss@…>
Branches:
arm-eh, cleanup-dtors, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr
Children:
d8938622, dd6d7c6
Parents:
4073b16 (diff), 0f740d6 (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/AST/Convert.cpp

    r4073b16 r37eef7a  
    12871287
    12881288        const ast::Designation * visit( const ast::Designation * node ) override final {
    1289                 (void)node;
     1289                auto designation = new Designation( get<Expression>().acceptL( node->designators ) );
     1290                designation->location = node->location;
     1291                this->node = designation;
    12901292                return nullptr;
    12911293        }
    12921294
    12931295        const ast::Init * visit( const ast::SingleInit * node ) override final {
    1294                 (void)node;
     1296                auto init = new SingleInit(
     1297                        get<Expression>().accept1( node->value ),
     1298                        ast::MaybeConstruct == node->maybeConstructed
     1299                );
     1300                init->location = node->location;
     1301                this->node = init;
    12951302                return nullptr;
    12961303        }
    12971304
    12981305        const ast::Init * visit( const ast::ListInit * node ) override final {
    1299                 (void)node;
     1306                auto init = new ListInit(
     1307                        get<Initializer>().acceptL( node->initializers ),
     1308                        get<Designation>().acceptL( node->designations ),
     1309                        ast::MaybeConstruct == node->maybeConstructed
     1310                );
     1311                init->location = node->location;
     1312                this->node = init;
    13001313                return nullptr;
    13011314        }
    13021315
    13031316        const ast::Init * visit( const ast::ConstructorInit * node ) override final {
    1304                 (void)node;
     1317                auto init = new ConstructorInit(
     1318                        get<Statement>().accept1( node->ctor ),
     1319                        get<Statement>().accept1( node->dtor ),
     1320                        get<Initializer>().accept1( node->init )
     1321                );
     1322                init->location = node->location;
     1323                this->node = init;
    13051324                return nullptr;
    13061325        }
     
    26172636        }
    26182637
    2619         virtual void visit( Designation * ) override final {
    2620 
    2621         }
    2622 
    2623         virtual void visit( SingleInit * ) override final {
    2624 
    2625         }
    2626 
    2627         virtual void visit( ListInit * ) override final {
    2628 
    2629         }
    2630 
    2631         virtual void visit( ConstructorInit * ) override final {
    2632 
     2638        virtual void visit( Designation * old ) override final {
     2639                this->node = new ast::Designation(
     2640                        old->location,
     2641                        GET_ACCEPT_V(designators, Expr)
     2642                );
     2643        }
     2644
     2645        virtual void visit( SingleInit * old ) override final {
     2646                this->node = new ast::SingleInit(
     2647                        old->location,
     2648                        GET_ACCEPT_1(value, Expr),
     2649                        (old->get_maybeConstructed()) ? ast::MaybeConstruct : ast::DoConstruct
     2650                );
     2651        }
     2652
     2653        virtual void visit( ListInit * old ) override final {
     2654                this->node = new ast::ListInit(
     2655                        old->location,
     2656                        GET_ACCEPT_V(initializers, Init),
     2657                        GET_ACCEPT_V(designations, Designation),
     2658                        (old->get_maybeConstructed()) ? ast::MaybeConstruct : ast::DoConstruct
     2659                );
     2660        }
     2661
     2662        virtual void visit( ConstructorInit * old ) override final {
     2663                this->node = new ast::ConstructorInit(
     2664                        old->location,
     2665                        GET_ACCEPT_1(ctor, Stmt),
     2666                        GET_ACCEPT_1(dtor, Stmt),
     2667                        GET_ACCEPT_1(init, Init)
     2668                );
    26332669        }
    26342670
Note: See TracChangeset for help on using the changeset viewer.