From b5e2c394907b6e5c69d2a2907aeae3a6ede59905 Mon Sep 17 00:00:00 2001 From: Mark Spruiell Date: Tue, 7 Apr 2009 17:23:19 -0700 Subject: bug 3739 - generate concrete Python/Ruby class for Slice class that inherits no operations from interface --- cpp/src/Slice/RubyUtil.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'cpp/src/Slice/RubyUtil.cpp') diff --git a/cpp/src/Slice/RubyUtil.cpp b/cpp/src/Slice/RubyUtil.cpp index 86869339cab..abbb02ddd0f 100644 --- a/cpp/src/Slice/RubyUtil.cpp +++ b/cpp/src/Slice/RubyUtil.cpp @@ -594,8 +594,8 @@ Slice::Ruby::CodeVisitor::visitClassDefStart(const ClassDefPtr& p) _out << nl << "end"; _classHistory.insert(scoped); // Avoid redundant declarations. - _out << sp << nl << "T_" << name << ".defineClass(" << name << ", " - << (p->isAbstract() ? "true" : "false") << ", "; + bool isAbstract = p->isInterface() || p->allOperations().size() > 0; // Don't use isAbstract() here - see bug 3739 + _out << sp << nl << "T_" << name << ".defineClass(" << name << ", " << (isAbstract ? "true" : "false") << ", "; if(!base) { _out << "nil"; -- cgit v1.2.3