More effectively disable the helper class when pure virtual methods are found that cannot be generated.

This commit is contained in:
Gustavo J. A. M. Carneiro committed 2008-01-02 16:06:13 +00:00
1 parent 7359345adc
commit f48e3618a6
2 files changed
+7

No files matched your search

+5
View File
@@ -680,6 +680,11 @@ public:
if self.have_pure_virtual_methods and self.helper_class is None:
self.cannot_be_constructed = True
def set_helper_class_disabled(self, flag=True):
self.helper_class_disabled = flag
if flag:
self.helper_class = None
def set_cannot_be_constructed(self, flag=True):
self.cannot_be_constructed = flag
+2
View File
@@ -600,6 +600,7 @@ class ModuleParser(object):
Warning, member.location.file_name, member.location.line)
if pure_virtual:
class_wrapper.set_cannot_be_constructed(True)
class_wrapper.set_helper_class_disabled(True)
continue
arguments = []
ok = True
@@ -615,6 +616,7 @@ class ModuleParser(object):
if not ok:
if pure_virtual:
class_wrapper.set_cannot_be_constructed(True)
class_wrapper.set_helper_class_disabled(True)
continue
if pure_virtual and not class_wrapper.allow_subclassing: