 break binary compatibility between code
    generated by two different versions of the same compiler. As Matt Austern
    said, "One of the few times when you have the freedom to do this sort of
    thing is when you're targeting a new architecture...". On the other hand,
    many common compilers will use the empty base optimization for single
    inheritance hierarchies.</p>

    <p>Given the importance of the issue for the users of the library (which
    aims to be useful for writing light-weight classe