
3 Dec
2016
3 Dec
'16
6:07 p.m.
Am 03.12.2016 um 18:56 schrieb Peter Dimov:
Klemens Morgenstern wrote:
But really having a void* as part of a public interface would've given you a no, even if everything else was perfect with this library.
This objection of yours doesn't make much sense to me. What problem are you trying to prevent? Objects of different types don't typically share the same address, so type safety can hardly be violated. Well, I suppose you could use the wrong member of a union by mistake. Or a boost.variant. Or you could just by coincidence have a new object at the address of an old one, long after it has been deleted - which is actually easy to do, since you can put the objects that emit on the stack.