Proper parsing of alt-lists with empty branches, parsing of subexpr capture