summaryrefslogtreecommitdiff
path: root/cpp/src/slice2cpp/Gen.cpp
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2016-01-07 22:10:59 +0100
committerJose <jose@zeroc.com>2016-01-07 22:10:59 +0100
commit290491fa71adff5f79a886ae76333ab6cd4b30b1 (patch)
tree2451683ba138e29f70c1dbd2a2989c145429dd99 /cpp/src/slice2cpp/Gen.cpp
parentICE-6921 - GC visit members fix for Ice::Value (diff)
downloadice-290491fa71adff5f79a886ae76333ab6cd4b30b1.tar.bz2
ice-290491fa71adff5f79a886ae76333ab6cd4b30b1.tar.xz
ice-290491fa71adff5f79a886ae76333ab6cd4b30b1.zip
ICE-6910 - C++11 remove public cto for proxy classes
Diffstat (limited to 'cpp/src/slice2cpp/Gen.cpp')
-rw-r--r--cpp/src/slice2cpp/Gen.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp
index b221d85c567..2a0bef6063c 100644
--- a/cpp/src/slice2cpp/Gen.cpp
+++ b/cpp/src/slice2cpp/Gen.cpp
@@ -6210,6 +6210,11 @@ Slice::Gen::Cpp11ProxyVisitor::visitClassDefEnd(const ClassDefPtr& p)
H << nl << "static const ::std::string& ice_staticId();";
H.dec();
+ H << sp << nl << "protected: ";
+ H.inc();
+ H << nl << prx << "() = default;";
+ H << nl << "friend ::std::shared_ptr<" << prx << "> IceInternal::createProxy<" << prx << ">();";
+ H.dec();
H << sp << nl << "private: ";
H.inc();
H << nl << "virtual ::std::shared_ptr<::Ice::ObjectPrx> __newInstance() const;";
@@ -6230,7 +6235,7 @@ Slice::Gen::Cpp11ProxyVisitor::visitClassDefEnd(const ClassDefPtr& p)
C << sp << nl << "::std::shared_ptr<::Ice::ObjectPrx>";
C << nl << scoped.substr(2) << "::__newInstance() const";
C << sb;
- C << nl << "return ::std::make_shared<" << prx << ">();";
+ C << nl << "return ::IceInternal::createProxy<" << prx << ">();";
C << eb;
_useWstring = resetUseWstring(_useWstringHist);