#308 closed task (fixed)
check that foreign callback returns take place in the correct order
| Reported by: | felix winkelmann | Owned by: | felix winkelmann | 
|---|---|---|---|
| Priority: | minor | Milestone: | |
| Component: | core libraries | Version: | 4.5.x | 
| Keywords: | foreign callback | Cc: | |
| Estimated difficulty: | 
Description
Multiple threads or use of continuations may result in returns from foreign callbacks happen not in the required order. By keeping a stack of addresses (for example from a local variable in the callback entry) this could be checked by the runtime system.
Note: See
        TracTickets for help on using
        tickets.
    
Currently only a check for returning twice from the same callback has been implemented by setting a flag inside the callback return-continuation closure, which should handle the case of code doing funny things with continuations.