1// { dg-do assemble  }
2// Bug: g++ thinks there is a conversion from void * to B *.
3
4struct A {
5  operator void* ();
6};
7
8struct B: public A { };
9
10void bar (A& a) {
11  B* bp = (B*)a;		// { dg-error "" }
12}
13