Details
-
Improvement
-
Resolution: Gone away
-
Major - P3
-
None
-
None
-
None
-
None
Description
Because a pointer to the uninitialized most-derived class is passed to the ctor for whatever decoration is registered with `Decorable::declareDecorationWithOwner`, there is a risk that the ctor can use that pointer in such a way which is illegal but has "expected" behavior some of the time. This can be in a link dependent way.
We'd like to change this such that the ctor for a decoration with owner accepts a "handle" (perhaps a functor) to the actual most derived class to allow for runtime detection of misuse.