A form of syntactic ambiguity resolution in C++ where the C++ grammar can’t distinguish between creation of object parameter and specification of function type;
void f(double my_dbl){
int i(int(my_dbl));
}- Could either create a variable
iwith valueint(my_dbl) - Could call the function
iwith argumentint(my_dbl)