Files
sdk/pkg/front_end/testcases/nnbd/issue41415.dart
T
Johnni Winther ac85af3a0c [cfe] Handle type parameters bounded by Null/Never in local function parameter type inference
Closes #42206

Change-Id: Id36fe76d8581ab0712165a8c90f1734d4be1a913
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/156186
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2020-07-29 14:21:17 +00:00

30 lines
1.0 KiB
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.
main() {}
test<X extends Null, Y extends Never?, Z extends Never>() {
// Pre-NNBD bottom type.
int Function(Null) f = (x) => 1; // Runtime type is int Function(Object?)
// NNBD bottom type.
int Function(Never) g = (x) => 1; // Runtime type is int Function(Object?)
// NNBD bottom type.
int Function(Never?) h = (x) => 1; // Runtime type is int Function(Object?)
int Function(String) i = (x) => 1; // Runtime type is int Function(String)
// Pre-NNBD bottom type.
int Function(X) j = (x) => 1; // Runtime type is int Function(Object?)
// NNBD bottom type.
int Function(Y) k = (x) => 1; // Runtime type is int Function(Object?)
// NNBD bottom type.
int Function(Z) l = (x) => 1; // Runtime type is int Function(Object?)
// NNBD bottom type.
int Function(Z?) m = (x) => 1; // Runtime type is int Function(Object?)
}