Store the controlling expression, the association expressions and the corresponding
TypeSourceInfos as trailing objects.
Additionally use the bit-fields of Stmt to store one SourceLocation, saving one
additional pointer. This saves 3 pointers in total per GenericSelectionExpr.
Do we want to use ControllingIndex and AssocExprStartIndex and combine with the enum you introduced above?