Don't store the data for case statements of the form LHS ... RHS if not needed.
This cuts the size of CaseStmt by 1 pointer + 1 SourceLocation in
the common case.
Also use the newly available space in the bit-fields of Stmt to store the
keyword location of SwitchCase and move the small accessor
SwitchCase::getSubStmt to the header.
ELLIPSISLOC is dead.
Much like the other patch, I'm not sure it's okay to reorder the children here. Using a dynamic offset for extracting the sub-statement is probably fine. If you're worried about that cost, StmtIterator is already pretty complicated, and it's not frequently-used by the compiler; I think it would be fine to find ways to get it to visit the elements of an array out of order.