blob: c78a6be288ccce222451573b4ab6f11a1463e5de [file] [log] [blame]
/*
* 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.
*/
/**
* @assertion The type parameters of a generic G are in scope in the bounds of all of
* the type parameters of G. The type parameters of a generic class
* declaration G are also in scope in the extends and implements clauses of G
* (if these exist) and in the body of G.
* @description Checks that type parameters are in scope in the extends and implements clauses of G
* (if G is a generic class declaration).
* @author iefremov
* @reviewer kaigorodov
*/
class C<T, U>{}
class A<N, S, U> extends C<S, U> implements I<S, U, N>
{ }
abstract class J<U, V>{}
abstract class I<X, Y, Z> extends J<Y, Z>
{ }
main() {
new A<num, double, A>();
}