Files
sdk/tests/language_2/f_bounded_quantification_test.dart
T
Aske Simon Christensen f5130108ea Some triage of missing compile-time errors in Fasta
Change-Id: Ia7601f7296e2da66ca234a94c57105c366d94a06
Reviewed-on: https://dart-review.googlesource.com/52800
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Karl Klose <karlklose@google.com>
2018-05-14 10:18:17 +00:00

24 lines
692 B
Dart

// Copyright (c) 2011, 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.
// Test for F-Bounded Quantification.
class FBound<F extends FBound<F>> {}
class Bar extends FBound<Bar> {}
class SubBar extends Bar {}
class Baz<T> extends FBound<Baz<T>> {}
class SubBaz<T> extends Baz<T> {}
main() {
FBound<Bar> fb = new FBound<Bar>();
FBound<SubBar> fsb = new FBound<SubBar>(); // //# 01: compile-time error
FBound<Baz<Bar>> fbb = new FBound<Baz<Bar>>();
FBound<SubBaz<Bar>> fsbb = new FBound<SubBaz<Bar>>(); // //# 02: compile-time error
}