summaryrefslogtreecommitdiff
path: root/cpp/src/Slice/CPlusPlusUtil.cpp
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2012-09-12 11:31:55 +0200
committerBenoit Foucher <benoit@zeroc.com>2012-09-12 11:31:55 +0200
commit2f989306407bf36d3630bc1978c579bb9c60ec5c (patch)
treec0373a56dabde536aaaa010eefff849d24282c4a /cpp/src/Slice/CPlusPlusUtil.cpp
parentMore Solaris / Sun CC 5.10 fixes (diff)
downloadice-2f989306407bf36d3630bc1978c579bb9c60ec5c.tar.bz2
ice-2f989306407bf36d3630bc1978c579bb9c60ec5c.tar.xz
ice-2f989306407bf36d3630bc1978c579bb9c60ec5c.zip
Fixed bug with optional return type not being marshalled
Diffstat (limited to 'cpp/src/Slice/CPlusPlusUtil.cpp')
-rw-r--r--cpp/src/Slice/CPlusPlusUtil.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/cpp/src/Slice/CPlusPlusUtil.cpp b/cpp/src/Slice/CPlusPlusUtil.cpp
index c14476148c2..9eaed2ebcc5 100644
--- a/cpp/src/Slice/CPlusPlusUtil.cpp
+++ b/cpp/src/Slice/CPlusPlusUtil.cpp
@@ -310,6 +310,11 @@ writeMarshalUnmarshalParams(Output& out, const ParamDeclList& params, const Oper
writeMarshalUnmarshalCode(out, (*p)->type(), true, (*p)->tag(), fixKwd((*p)->name()), marshal,
(*p)->getMetaData(), typeCtx);
}
+ if(checkReturnType)
+ {
+ writeMarshalUnmarshalCode(out, op->returnType(), true, op->returnTag(), "__ret", marshal, op->getMetaData(),
+ typeCtx);
+ }
}
}