Closed
Description
When a proxy for a base class is built (without mapping the proxy as an interface), a wrong proxy is built if the base class has sub-classes mapping their proxy as an interface.
The built proxy for the base class does not inherits from the base class. It should.
This causes a type cast exception when attempting a Load<BaseClass>(id)
.
(This is extracted out of #2052, which suspect this bug as being the cause of the trouble in #2052 (interface access causing a proxy load since v5.1). But the built proxy for the base class was also wrong in 4.x/5.0.x, it was also not inheriting from the base class. So I consider we need to handle separately the proxy building issue from the proxy loading one.)