Call for bikeshed -- break replacement in expression switch

John Rose john.r.rose at
Mon May 20 20:33:01 UTC 2019

On May 17, 2019, at 4:06 PM, Alex Buckley <alex.buckley at> wrote:
> the decision still has to be taken about whether "in a SwitchLabeledBlock" or "in <something else>" is the proper context to recognize something new.

From Tagir's note it seems we want to use less
context than "in a SLB", because IDEs (and human
eyes) won't always have enough enclosing context
to classify the token.

It also seems like it would be workable to classify
"yield" as a keyword if it occurs at the beginning
of a statement.  This is almost exactly the same
place that "var" is classified as a conditional
keyword:  The place in a block where we might
be parsing either an expression-statement or
a declaration or a block-structured sub-statement.

So the rule for "yield" might be that it is classified
as a keyword exactly where "var" would be.  If
it were that easy, that would be nice, since we
have a precedent.

— John

More information about the amber-spec-experts mailing list