dart-sdk/tests/language/malbounded_type_test_test.dart
regis@google.com 5a5edb7f0c Report use of malbounded interface in type test.
Fix language tests related to malbounded types (issues 14123, 14131, 14132).

R=rmacnak@google.com

Review URL: https://codereview.chromium.org//33313003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28943 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-21 19:49:19 +00:00

20 lines
886 B
Dart

// Copyright (c) 2013, 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 Super<T extends num> {}
class Malbounded1 implements Super<String> {} /// 01: static type warning, dynamic type error
class Malbounded1 implements Super<String> {} /// 02: static type warning
class Malbounded2 extends Super<String> {} /// 03: static type warning, dynamic type error
main() {
var m = new Malbounded1(); /// 01: continued
Expect.isFalse(m is Super<int>); /// 01: continued
var s = new Super<int>();
Expect.isFalse(s is Malbounded1); /// 02: continued
Expect.isFalse(s is Malbounded2); /// 03: continued
Expect.isFalse(s is Super<String>); /// 04: static type warning, dynamic type error
}