76f803a41c
Two of these tests (`recordPattern_nullable_beforeAs` and `recordPattern_nullable_beforeWhen`) verify that the fix for #52439 (Destructuring with explicit type of nullable record is a parsing error), which causes `(...)? identifier` to be recognized as a variable pattern, doesn't get confused by the pseudo-identifiers `as` and `when`, and so it continues to correctly parse `(...)? as ...` as a cast pattern and `(...)? when ...` as a guarded pattern. The other two tests (`recordPattern_nonNullable_beforeAs` and `recordPattern_nonNullable_beforeWhen`) verify that `(...) as ...` and `(...) when ...` are parsed correctly. These forms were never broken, but they were not well tested either. Bug: https://github.com/dart-lang/sdk/issues/52439 Change-Id: I866e1c7a6a8e47e0cd91a1a77654405f395b50da Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/305844 Reviewed-by: Jens Johansen <jensj@google.com> Commit-Queue: Paul Berry <paulberry@google.com>