Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • tests/concurrency/actors/inline.cfa

    r7edf912 r0388a99  
    33
    44struct d_actor {
    5         inline actor;
     5    inline actor;
    66};
    77struct msg_wrapper {
    8         int b;
    9         inline message;
     8    int b;
     9    inline message;
    1010};
    1111void ^?{}( msg_wrapper & this ) { sout | "msg_wrapper dtor"; }
    1212
    1313struct d_msg {
    14         int m;
    15         inline msg_wrapper;
     14    int m;
     15    inline msg_wrapper;
    1616};
    1717void ?{}( d_msg & this, int m, int b ) { this.m = m; this.b = b; set_allocation( this, Delete ); }
     
    1919
    2020allocation receive( d_actor &, d_msg & msg ) {
    21         sout | msg.m;
    22         sout | msg.b;
    23         return Finished;
     21    sout | msg.m;
     22    sout | msg.b;
     23    return Finished;
    2424}
    2525
    2626struct d_msg2 {
    27         int m;
    28         inline msg_wrapper;
     27    int m;
     28    inline msg_wrapper;
    2929};
    3030void ^?{}( d_msg2 & this ) { sout | "d_msg2 dtor";}
    3131
    3232allocation receive( d_actor &, d_msg2 & msg ) {
    33         sout | msg.m;
    34         return Finished;
     33    sout | msg.m;
     34    return Finished;
    3535}
    3636
    3737int main() {
    38         processor p;
    39         {
    40                 start_actor_system();                                                           // sets up executor
    41                 d_actor da;
    42                 d_msg * dm = alloc();
    43                 (*dm){ 42, 2423 };
    44                 da | *dm;
    45                 stop_actor_system();                                                            // waits until actors finish
    46         }
    47         {
    48                 start_actor_system();                                                           // sets up executor
    49                 d_actor da;
    50                 d_msg2 dm{ 29079 };
    51                 set_allocation( dm, Nodelete );
    52                 msg_wrapper * mw = &dm;
    53                 message * mg = &dm;
    54                 virtual_dtor * v = &dm;
    55                 da | dm;
    56                 stop_actor_system();                                                            // waits until actors finish
    57         }
     38    processor p;
     39    {
     40        start_actor_system();                                // sets up executor
     41        d_actor da;
     42        d_msg * dm = alloc();
     43        (*dm){ 42, 2423 };
     44        da | *dm;
     45        stop_actor_system();                                // waits until actors finish
     46    }
     47    {
     48        start_actor_system();                                // sets up executor
     49        d_actor da;
     50        d_msg2 dm{ 29079 };
     51        set_allocation( dm, Nodelete );
     52        msg_wrapper * mw = &dm;
     53        message * mg = &dm;
     54        virtual_dtor * v = &dm;
     55        da | dm;
     56        stop_actor_system();                                // waits until actors finish
     57    }
    5858}
Note: See TracChangeset for help on using the changeset viewer.