Hi, everyone. I have a doubt about this concept. That is, one of the bullets in the definition of potentially constant evaluated, which is: 
> an immediate subexpression of a braced-init-list  

However, there's no such definition in the standard that describes what are immediate subexpressions of a braced-init-list. The definition of immediate subexpressions of an expression E is defined as: 
The immediate subexpressions of an expression E are
1. the constituent expressions of E's operands
2. any function call that E implicitly invokes,  
3. if E is a lambda-expression ([expr.prim.lambda]), the initialization of the entities captured by copy and the constituent expressions of the initializer of the init-captures  
4. if E is a function call or implicitly invokes a function, the constituent expressions of each default argument ([dcl.fct.default]) used in the call, or
5. if E creates an aggregate object ([dcl.init.aggr]), the constituent expressions of each default member initializer ([class.mem]) used in the initialization.  

The key point here is a braced-init-list is not an expression, how to determine what are its immediate subexpressions? I guess Does the intent of that rule mean these constitute expressions of a braced-init-list? If not that, I think it's necessary to word a rule that clarifies what are immediate subexpressions of a braced-init-list.