class foo
{
foo(int) {} //Implicit conversion enabled constructor
}
foo& operator=(foo&, const foo&)
{} //Imagine that it is possible
int main
{
foo x;
5 = foo;
//5 gets converted to foo, assigment takes place and.... What?
//Does converted temporary just disappear?
//Or there would miraclously happens to be a foo obkect instead of integer 5?
//Even better possibilities:
//5()
// 5[]
}