summaryrefslogtreecommitdiff
path: root/cpp/src/slice2objc/ObjCUtil.cpp
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2018-09-19 13:59:51 +0200
committerJose <jose@zeroc.com>2018-09-19 13:59:51 +0200
commit240e9350d8d340b8658f287939b20baa5af6388a (patch)
treedb029675395ec6a42d16f7e314130d761ce85e4b /cpp/src/slice2objc/ObjCUtil.cpp
parentFix JS Ice/timeout test failure on Slow VMs (diff)
downloadice-240e9350d8d340b8658f287939b20baa5af6388a.tar.bz2
ice-240e9350d8d340b8658f287939b20baa5af6388a.tar.xz
ice-240e9350d8d340b8658f287939b20baa5af6388a.zip
Fix slice2objc bogus generated code for Ice::Value data member
Diffstat (limited to 'cpp/src/slice2objc/ObjCUtil.cpp')
-rw-r--r--cpp/src/slice2objc/ObjCUtil.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/cpp/src/slice2objc/ObjCUtil.cpp b/cpp/src/slice2objc/ObjCUtil.cpp
index f9c9606185a..242ed701287 100644
--- a/cpp/src/slice2objc/ObjCUtil.cpp
+++ b/cpp/src/slice2objc/ObjCUtil.cpp
@@ -445,6 +445,7 @@ Slice::ObjCGenerator::isValueType(const TypePtr& type)
{
case Builtin::KindString:
case Builtin::KindObject:
+ case Builtin::KindValue:
case Builtin::KindObjectProxy:
case Builtin::KindLocalObject:
{
@@ -481,7 +482,7 @@ Slice::ObjCGenerator::isClass(const TypePtr& type)
BuiltinPtr builtin = BuiltinPtr::dynamicCast(type);
if(builtin)
{
- return builtin->kind() == Builtin::KindObject;
+ return builtin->kind() == Builtin::KindObject || builtin->kind() == Builtin::KindValue;
}
return ClassDeclPtr::dynamicCast(type);
}
@@ -551,6 +552,7 @@ Slice::ObjCGenerator::getBuiltinName(const BuiltinPtr& builtin)
return "String";
}
case Builtin::KindObject:
+ case Builtin::KindValue:
{
return "Object";
}
@@ -711,7 +713,7 @@ Slice::ObjCGenerator::writeMarshalUnmarshalCode(Output &out, const TypePtr& type
if(builtin)
{
string name;
- if(builtin->kind() == Builtin::KindObject)
+ if(builtin->kind() == Builtin::KindObject || builtin->kind() == Builtin::KindValue)
{
if(marshal)
{