C++11 mapping for IDL exceptions

All IDL exceptions should:

inherit, directly or indirectly, from std::exception
with the what() method overloaded to return a string consisting of:
the exception name (generated into the class)
a description of the error's cause (from parameter in the constructor)

Obviously for exceptions thrown by the middleware (such as CORBA system exceptions), the description of the error's cause would be vendor-specific due to differences in implementation.

Other than that, the mapping itself should be equivalent to the IDL struct mapping (assuming IDL struct is mapped to C++ class).

No votes yet

potential common base exception class for CORBA exceptions

Would it be possible that system and user exceptions share a common base exception class (like corbaexception) ?
That way an application could generically catch both user and system exceptions in on catch statement.

base exception class

All CORBA system and user exceptions do derive from CORBA::Exception. This language mapping also defined that CORBA::Exception is derived from std::exception. A catch of std::exception will than catch any std exceptions, but also any CORBA exception

Implementation IDL2C++0x exception support ready

I've just finished the CORBA (user) exceptions support in our C++0x CORBA mapping implementation. A new example has been added to code at osportal.remedy.nl.

Missing file

It looks like that example doesn't have the TestC.h file so the actual mapping of the exceptions is unavailable.

Trent Nadeau
Northrop Grumman Corp.

It does now ;-) Thanks for

It does now ;-)
Thanks for the heads up.