Don't generate constructor wrappers if a base class has a private constructor

g++-5 errors out with this now with errors such as:

default_constructor_wrap.cxx:665:27: error: use of deleted function ‘FFF::FFF()’
   result = (FFF *)new FFF();
                           ^
default_constructor_wrap.cxx:314:7: note: ‘FFF::FFF()’ is implicitly deleted because the default definition would be ill-formed:
 class FFF : public F {
       ^
default_constructor_wrap.cxx:301:4: error: ‘F::~F()’ is private
    ~F() { }
    ^
default_constructor_wrap.cxx:314:7: error: within this context
This commit is contained in:
William S Fulton 2015-07-07 20:15:55 +01:00
commit 3718b810c7
13 changed files with 45 additions and 72 deletions

View file

@ -89,15 +89,6 @@ except AttributeError:
dc.F_destroy(f)
ff = dc.new_FFF()
try:
del_ff = dc.delete_FFF
print "Whoa. delete_FFF created"
except AttributeError:
pass
dc.F_destroy(ff)
g = dc.new_G()
try: