blob: 4ebaa6c22de34ea2455dcebc9f60cdaebc376704 [file] [log] [blame]
/*
* 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.
*/
/**
* @description Regression test for the Issue 34741: Analyzer doesn't allow
* function to use type parameter [<Instance of 'TypeParameterMember'>] as a
* type argument whereas dart does allow this.
* @Issue 34741
* @author iarkh@unipro.ru
*/
Type typeOf<X>() => X;
typedef G = Function<X extends num>();
typedef G1<X> = Function();
main() {
typeOf<G>();
//^
// [cfe] A generic function type can't be used as a type argument.
// ^
// [analyzer] COMPILE_TIME_ERROR.GENERIC_FUNCTION_TYPE_CANNOT_BE_TYPE_ARGUMENT
typeOf<G1>();
}