#include <iostream> struct B; struct A { A() = default; operator (B *)() { return new B(); } }; struct B { B() = default; }; int main() { A a; B *b = &a; }
Standard input is empty
prog.cpp:8:14: error: expected type-specifier before '(' token prog.cpp: In function 'int main()': prog.cpp:19:13: error: cannot convert 'A*' to 'B*' in initialization
Standard output is empty