Will accessing a class object through a pointer to its derived class break strict aliasing rules?
<pre><code>void foobar(Base* base)
{
    Derived* derived = dynamic_cast&lt;Derived*&gt;(base); // or static_cast
    derived-&gt;blabla = 0xC0FFEE;
    if (base-&gt;blabla == 0xC0FFEE)
        ...
}
</code></pre>

<p>On compilers with <strong>strict aliasing</strong>, is "derived" an alias for "base"?</p>
