struct C { C(char) : C(42.0) {} // ill-formed due to recursion C(double) : C('a') {} // ill-formed due to recursion }; int main(){ C('a'); C(3.5); }