16ddfc1565
This makes explicit downcasts more efficient by re-using the optimizations we already have for implicit downcasts. For implicit/explicit as checks we use the symbol to distinguish which exception to throw if the check fails. So this does not actually require unification of _CastError and _TypeError. Issue https://github.com/dart-lang/sdk/issues/34582 Issue https://github.com/dart-lang/sdk/issues/30632 Issue https://github.com/dart-lang/sdk/issues/30571 Change-Id: I7b8818d2698e249c90a3e1b8790bad69ada649a9 Reviewed-on: https://dart-review.googlesource.com/c/78748 Commit-Queue: Martin Kustermann <kustermann@google.com> Reviewed-by: Alexander Markov <alexmarkov@google.com> Reviewed-by: Vyacheslav Egorov <vegorov@google.com>