dart-sdk/tests/language_2/implicit_downcast_during_null_aware_method_invocation_test.dart
Paul Berry 2f93a29176 Create additional tests for implicit downcasts in invocations.
Change-Id: I0c2f07e93f0910ee6bca1abaedb8be61b1304f38
Reviewed-on: https://dart-review.googlesource.com/22882
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2017-11-22 04:49:19 +00:00

24 lines
457 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";
class A {}
class B extends A {}
class C {
void f(B b) {}
}
main() {
C c = new C();
A a1 = new B();
A a2 = new A();
c?.f(a1); // No error
Expect.throwsTypeError(() {
c?.f(a2);
});
}