Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/concurrency/coroutine.cfa

    recfd758 r85ac70e8  
    4646
    4747//-----------------------------------------------------------------------------
    48 EHM_VIRTUAL_TABLE(SomeCoroutineCancelled, std_coroutine_cancelled);
     48FORALL_DATA_INSTANCE(CoroutineCancelled, (coroutine_t &), (coroutine_t))
     49
     50forall(T &)
     51void mark_exception(CoroutineCancelled(T) *) {}
    4952
    5053forall(T &)
     
    6871
    6972        // TODO: Remove explitate vtable set once trac#186 is fixed.
    70         SomeCoroutineCancelled except;
    71         except.virtual_table = &std_coroutine_cancelled;
     73        CoroutineCancelled(T) except;
     74        except.virtual_table = &get_exception_vtable(&except);
    7275        except.the_coroutine = &cor;
    7376        except.the_exception = except;
    74         // Why does this need a cast?
    75         throwResume (SomeCoroutineCancelled &)except;
     77        throwResume except;
    7678
    7779        except->virtual_table->free( except );
Note: See TracChangeset for help on using the changeset viewer.