4d045c9f82
Restructure condition to nest 'right' branch within conditional scope
guarded by 'left' branch.
The left branch is used directly as the condition (rather than
indirectly though a tmp variable) so that promotions are preserved.
```
e1 && e2
```
```
->
bool tmp = false;
if (e1) {
tmp = e2;
}
```
With `||` the `tmp = e2` simply goes in the 'else' branch rather than
the 'then'.
The `== true` was also unnecessary as e1 and e2 are required to be
statically typed as bools.
Change-Id: I051f36380c35332752ec2d49a490eff135c0067b
Tested: Updated transformer expectation.
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/457240
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Commit-Queue: Nate Biggs <natebiggs@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
This package hosts VM specific Dart code and helper scripts.