| // Copyright (c) 2019, 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. | |
| T method1<T>(T t) => t; | |
| Map<T, S> method2<T, S>(T t, S s) => {t: s}; | |
| const function0 = /*cfe.Function(method1)*/ method1; | |
| const int Function(int) instantiation0 = | |
| /*cfe.Instantiation(method1<int!>)*/ method1; | |
| const Map<String, int> Function(String, int) instantiation1 = | |
| /*cfe.Instantiation(method2<String!,int!>)*/ method2; | |
| main() { | |
| print( | |
| /*cfe|dart2js.Function(method1)*/ | |
| /*analyzer.Function(method1,type=T Function<T>(T))*/ | |
| function0, | |
| ); | |
| print( | |
| /*cfe.Instantiation(method1<int!>)*/ | |
| /*dart2js.Instantiation(method1<int>)*/ | |
| /*analyzer.Function(method1,type=int Function(int))*/ | |
| instantiation0, | |
| ); | |
| print( | |
| /*cfe.Instantiation(method2<String!,int!>)*/ | |
| /*dart2js.Instantiation(method2<String,int>)*/ | |
| /*analyzer.Function(method2,type=Map<String, int> Function(String, int))*/ | |
| instantiation1, | |
| ); | |
| } |