dart-sdk/tests/language_2/implicit_downcast_during_logical_expression_test.dart
Paul Berry d22b6950c1 Insert implicit downcasts for the operands of logical expressions.
Change-Id: I25a2ca31d09d3577d1d056ca156146472c999c97
Reviewed-on: https://dart-review.googlesource.com/22900
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-22 04:49:28 +00:00

28 lines
617 B
Dart

// Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import "package:expect/expect.dart";
void main() {
Object t = true;
Object f = false;
Object o = new Object();
t || o; // No error
f || f; // No error
Expect.throwsTypeError(() {
o || t;
});
Expect.throwsTypeError(() {
f || o;
});
f && o; // No error
t && t; // No error
Expect.throwsTypeError(() {
o && f;
});
Expect.throwsTypeError(() {
t && o;
});
}