3d67e6f998
Some notes. 1. `Token.next` is `Token?` because there are null(s) for comment tokens. But I think that it is never `null` in code, because there is at least EOF token. So, lots of `!` null checks. 2. `Link.tail` is never null when `isNotEmpty`, but the type system cannot express it. So, some number of `!` null checks. 3. I keep assert(s) for now, and use comment `// ignore: unnecessary_null_comparison`. 4. I disabled `can_get_rid_of_nnbd_issue_error`, I think it fails because of changes in `_fe_analyzer_shared` language version. Smoke test in google3 looks green. https://test.corp.google.com/ui#id=OCL:346825148:BASE:346841611:1607632317129:6e87bf7 I have not tried yet full TAP, will do in the evening. I have not tried yet Golem, or looked at benchmarks. Change-Id: I651301e5d3a851dd77d73af960dac779cb0fc991 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/175620 Commit-Queue: Konstantin Shcheglov <scheglov@google.com> Reviewed-by: Paul Berry <paulberry@google.com>