summaryrefslogtreecommitdiff
path: root/cpp/src/Slice/CPlusPlusUtil.cpp
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2019-07-09 17:13:39 +0200
committerJose <jose@zeroc.com>2019-07-09 17:13:39 +0200
commitf0352140506800ed3a53a7fa7caca63f251bb1a4 (patch)
tree355dc0f3bb7ea8534e087474a35371140b3d0b18 /cpp/src/Slice/CPlusPlusUtil.cpp
parentIceSSL fixes for RHEL8 (diff)
downloadice-f0352140506800ed3a53a7fa7caca63f251bb1a4.tar.bz2
ice-f0352140506800ed3a53a7fa7caca63f251bb1a4.tar.xz
ice-f0352140506800ed3a53a7fa7caca63f251bb1a4.zip
Remove forward declarations limitation - Close #97
Diffstat (limited to 'cpp/src/Slice/CPlusPlusUtil.cpp')
-rw-r--r--cpp/src/Slice/CPlusPlusUtil.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/cpp/src/Slice/CPlusPlusUtil.cpp b/cpp/src/Slice/CPlusPlusUtil.cpp
index 8a729092a71..a38c8c4bbf9 100644
--- a/cpp/src/Slice/CPlusPlusUtil.cpp
+++ b/cpp/src/Slice/CPlusPlusUtil.cpp
@@ -752,13 +752,13 @@ Slice::typeToString(const TypePtr& type, const string& scope, const StringList&
// Non local classes without operations map to the base
// proxy class shared_ptr<Ice::ObjectPrx>
//
- if(def && !def->isInterface() && def->allOperations().empty())
+ if(!def || def->isAbstract())
{
- return getUnqualified(cpp11BuiltinTable[Builtin::KindObjectProxy], scope);
+ return "::std::shared_ptr<" + getUnqualified(fixKwd(proxy->_class()->scoped() + "Prx"), scope) + ">";
}
else
{
- return "::std::shared_ptr<" + getUnqualified(fixKwd(proxy->_class()->scoped() + "Prx"), scope) + ">";
+ return getUnqualified(cpp11BuiltinTable[Builtin::KindObjectProxy], scope);
}
}
else