blob: 7cc9119ee5b8946902aad7c2f8355f4512055aac [file] [log] [blame]
// 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);
}