Most vexing parse cause ambiguous grammar
The most vexing parse is a counterintuitive form of syntactic ambiguity resolution in the C++ programming language. In certain situations, the C++ grammar cannot distinguish between the creation of an object parameter and specification of a function's type.  In those situations, the compiler is required to interpret the line as a function type specification.Occurrence
The term "most vexing parse" was first used by Scott Meyers in his 2001 book Effective STL.  While unusual in C, the phenomenon was quite common in C++ until the introduction of uniform initialization in C++11.
trigger bring about initiate provoke instigate