Which cast operation will not work

Question | Apr 19, 2016 | hkumar 

Here is a simple C++ code with inheritance:

struct A {
    void Foo() { ... }
};

struct B : public A {
    void Foo() { ... }
};

Suppose we have:

A* aPtr = new B(); 

Note that A and B are not polymorphic. Which one of following cast operations cannot be used for down casting aPtr to B* type: