summaryrefslogtreecommitdiff
path: root/cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp')
-rw-r--r--cpp/CHANGES5
-rw-r--r--cpp/src/slice2cpp/Gen.cpp7
2 files changed, 11 insertions, 1 deletions
diff --git a/cpp/CHANGES b/cpp/CHANGES
index 6781265a1d8..588dd1c4b0c 100644
--- a/cpp/CHANGES
+++ b/cpp/CHANGES
@@ -1,6 +1,11 @@
Changes since version 3.0.1
---------------------------
+- Fixed a bug in slice2cpp that caused a compiler warning about
+ an unused parameter in the generated code for operations on
+ classes with void return type, no parameters, and no exception
+ specification.
+
- Fixed a bug in IceGrid deployment mechanism which would prevent
defining with a variable object identities with a category.
diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp
index b97f44a2b5e..f3c845e086e 100644
--- a/cpp/src/slice2cpp/Gen.cpp
+++ b/cpp/src/slice2cpp/Gen.cpp
@@ -3049,7 +3049,12 @@ Slice::Gen::ObjectVisitor::visitOperation(const OperationPtr& p)
C << sp;
C << nl << "::IceInternal::DispatchStatus" << nl << scope.substr(2) << "___" << name
- << "(::IceInternal::Incoming& __inS, const ::Ice::Current& __current)" << (nonmutating ? " const" : "");
+ << "(::IceInternal::Incoming&";
+ if(!paramList.empty() || !p->throws().empty() || ret)
+ {
+ C << "__inS";
+ }
+ C << ", const ::Ice::Current& __current)" << (nonmutating ? " const" : "");
C << sb;
if(!amd)
{