This is not a list of initializers, nor uniform initialization. What it is?
Your premise is incorrect. This is a uniform initialization, and in a standard expression - a parenthesis-bracket-initialization.
If a constructor accepting std::initializer_list is present, using curly braces to construct objects is equivalent to using parentheses.
The advantage of using curly braces is that the syntax is immune to the Most Vexing Parse problem:
struct Y { }; struct X { X(Y) { } };
source share