Dean Moldovan 08cbe8dfed Make all classes with the same instance size derive from a common base
In order to fully satisfy Python's inheritance type layout requirements,
all types should have a common 'solid' base. A solid base is one which
has the same instance size as the derived type (not counting the space
required for the optional `dict_ptr` and `weakrefs_ptr`). Thus, `object`
does not qualify as a solid base for pybind11 types and this can lead to
issues with multiple inheritance.

To get around this, new base types are created: one per unique instance
size. There is going to be very few of these bases. They ensure Python's
MRO checks will pass when multiple bases are involved.
2017-02-23 15:45:26 +01:00
..
2017-02-14 10:59:59 +01:00
2016-12-16 15:00:46 +01:00
2017-01-31 17:28:29 +01:00
2017-01-31 17:05:44 +01:00
2016-12-16 15:00:46 +01:00
2016-12-16 15:00:46 +01:00
2016-12-16 15:00:46 +01:00
2016-12-16 15:00:46 +01:00
2016-12-16 15:00:46 +01:00
2016-12-16 15:00:46 +01:00