summaryrefslogtreecommitdiff
path: root/cpp/src/slice2java/Gen.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/slice2java/Gen.cpp')
-rw-r--r--cpp/src/slice2java/Gen.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/cpp/src/slice2java/Gen.cpp b/cpp/src/slice2java/Gen.cpp
index ff4022b97c5..2e7e239b4c9 100644
--- a/cpp/src/slice2java/Gen.cpp
+++ b/cpp/src/slice2java/Gen.cpp
@@ -2993,6 +2993,14 @@ Slice::Gen::DispatcherVisitor::visitClassDefStart(const ClassDefPtr& p)
out << nl << "public"
<< nl << '_' << name << "Disp(" << name << " __d)";
out << sb;
+ if (p->isInterface())
+ {
+ out << nl << "super((Ice.Object)__d);";
+ }
+ else
+ {
+ out << nl << "super(__d);";
+ }
out << nl << "_delegate = __d;";
out << eb;