31e5cab243
- negative tests merged into non-negative tests - lots of factory tests Change-Id: I825e3ab6153f0dce243c3b8f1c4d223ab8ec5f9b Reviewed-on: https://dart-review.googlesource.com/12126 Reviewed-by: Janice Collins <jcollins@google.com> Reviewed-by: Jaime Wren <jwren@google.com>
24 lines
691 B
Dart
24 lines
691 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>> fsb = new FBound<SubBaz<Bar>>(); // //# 02: compile-time error
|
|
}
|