All Cafe OS shared libraries are built with C++ exceptions turned off so that there are no dependencies on how you build applications.
- Cafe OS shared libraries do not throw C++ exceptions. If a dynamic library uses C++ exceptions, the RPX that links to it, either directly or through another RPL, must enable exceptions.
- Do not throw exceptions in routines that may be called by the Cafe OS. Instead, signal an exception to other code in a manner that can handle the exception. For example, set a flag in a callback or send a message.
- The keyword
try incurs significant runtime overhead in C++ applications that rely on C++ exceptions.
- If you are using middleware that requires exceptions, all programs which use that middleware must have exceptions enabled. Optionally, the middleware provider may provide two implementations that allow the application to select the appropriate implementation.
2013-03-20 Initial version.