diff options
Diffstat (limited to 'cpp/src/Ice/Exception.cpp')
-rw-r--r-- | cpp/src/Ice/Exception.cpp | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/cpp/src/Ice/Exception.cpp b/cpp/src/Ice/Exception.cpp index d9d1f929fc1..848d7260502 100644 --- a/cpp/src/Ice/Exception.cpp +++ b/cpp/src/Ice/Exception.cpp @@ -116,7 +116,15 @@ const std::string& Ice::UserException::ice_staticId() { return __Ice__UserException_ids[0]; -}; +} + +#ifdef ICE_CPP11_MAPPING +unique_ptr<Ice::UserException> +Ice::UserException::ice_clone() const +{ + return unique_ptr<UserException>(static_cast<UserException*>(ice_cloneImpl())); +} +#endif void Ice::UserException::__write(::Ice::OutputStream* os) const @@ -153,6 +161,14 @@ Ice::LocalException::~LocalException() // Out of line to avoid weak vtable } +#ifdef ICE_CPP11_MAPPING +unique_ptr<Ice::LocalException> +Ice::LocalException::ice_clone() const +{ + return unique_ptr<LocalException>(static_cast<LocalException*>(ice_cloneImpl())); +} +#endif + namespace { @@ -181,6 +197,14 @@ Ice::SystemException::~SystemException() { } +#ifdef ICE_CPP11_MAPPING +unique_ptr<Ice::SystemException> +Ice::SystemException::ice_clone() const +{ + return unique_ptr<SystemException>(static_cast<SystemException*>(ice_cloneImpl())); +} +#endif + namespace { |