blob: 73810952327fc355539aade897cf495e88f9a1a2 [file] [log] [blame]
floitsch@google.com48b16562013-06-24 12:45:10 +00001// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2// for details. All rights reserved. Use of this source code is governed by a
3// BSD-style license that can be found in the LICENSE file.
4
5import "package:expect/expect.dart";
6
Jacob Richman2dcd56e2017-04-17 14:52:57 -07007class A {
8 const A();
9}
10
11class B extends A {
12 const B();
13}
floitsch@google.com48b16562013-06-24 12:45:10 +000014
15main() {
16 var set1 = new Set<B>();
17 set1.add(const B());
18 var set2 = new Set<B>();
Jacob Richman2dcd56e2017-04-17 14:52:57 -070019 var list = <B>[const B()];
floitsch@google.com48b16562013-06-24 12:45:10 +000020 var set3 = list.toSet();
21
22 var sets = [set1, set2, set3];
23 for (var setToTest in sets) {
24 // Test that the set accepts a list that is not of the same type:
25 // Set<B>.retainAll(List<A>)
26 setToTest.retainAll(<A>[new A()]);
27 }
28}