|  | // Copyright (c) 2018, 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'; | 
|  |  | 
|  | List<T?> foo<T>([T? a1, T? a2, T? a3, T? a4, T? a5, T? a6, T? a7]) => | 
|  | [a1, a2, a3, a4, a5, a6, a7]; | 
|  |  | 
|  | class CC { | 
|  | List<T?> bar<T, U, V>([T? a1, T? a2, T? a3, T? a4, T? a5, T? a6]) => | 
|  | [a1, a2, a3, a4, a5, a6]; | 
|  | } | 
|  |  | 
|  | main() { | 
|  | // We expect a call$1$5 entry for foo, accessed nowhere else in the program | 
|  | // except via the call$5 entry on the instantiation. | 
|  | List<int?> Function(int?, int?, int?, int?, int?) f = foo; | 
|  | Expect.equals(4, f(1, 2, 3, 4, 5)[3]); | 
|  |  | 
|  | // We expect a bar$3$4 entry for bar, accessed nowhere else in the program | 
|  | // except via the call$4 entry on the instantiation. | 
|  | var o = CC(); | 
|  | List<String?> Function(String?, String?, String?, String?) g = o.bar; | 
|  | Expect.equals('abcdnullnull', g('a', 'b', 'c', 'd').join('')); | 
|  | } |