09418f4402
Closes https://github.com/dart-lang/sdk/issues/37144
This is a re-land of 00eb034de7.
Change-Id: Ib46d4590de460a520415280b3253e75d8f947b81
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/109584
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Markov <alexmarkov@google.com>