blob: 7379da69eed1e1e6ef8642e202f674ce34e91cb0 [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.
*/
/**
* @assertion A generic class declaration introduces a generic class into the
* enclosing library scope. A generic class is a mapping that accepts a list of
* actual type arguments and maps them to a class. Consider a generic class
* declaration [G] named [C] with formal type parameter declarations [X1 extends
* B1,..., Xm extends Bm], and a parameterized type [T] of the form
* [C<T1,..., Tl>].
* It is a compile-time error if [m != l].
* @description Checks that compile error is thrown for the case with many
* type arguments
* @author iarkh@unipro.ru
*/
class ManyParameters<
T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,
T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,
T39,T40,T41,T42,T43,T44,T45,T46,T47,T48,T49,T50,T51,T52,T53,T54,T55,T56,
T57,T58,T59,T60,T61,T62,T63,T64,T65,T66,T67,T68,T69,T70,T71,T72,T73,T74,
T75,T76,T77,T78,T79,T80,T81,T82,T83,T84,T85,T86,T87,T88,T89,T90,T91,T92,
T93,T94,T95,T96,T97,T98,T99,T100,T101> {}
main() {
new ManyParameters();
new ManyParameters<int, int, int, int, int, int, int, int, int, int, int, int,
int, int, int, int, int, int, int, int, int, int, int, int, int, int,
int, int, int, int, int, int, int, int, int, int, int, int, int, int,
int, int, int, int, int, int, int, int, int, int, int, int, int, int,
int, int, int, int, int, int, int, int, int, int, int, int, int, int,
int, int, int, int, int, int, int, int, int, int, int, int, int, int,
int, int, int, int, int, int, int, int, int, int, int, int, int, int,
int, int, int, int, int, int>();
new ManyParameters<int>(); //# 01: compile-time error
new ManyParameters<int, int>(); //# 02: compile-time error
new ManyParameters<int, int, int>(); //# 03: compile-time error
new ManyParameters<int, int, int, int, int, int, int, int, int, int, int, int, //# 04: compile-time error
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 04: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 04: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 04: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 04: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 04: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 04: continued
int, int, int, int>(); //# 04: continued
new ManyParameters<int, int, int, int, int, int, int, int, int, int, int, int, //# 05: compile-time error
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 05: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 05: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 05: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 05: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 05: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 05: continued
int, int, int, int, int>(); //# 05: continued
new ManyParameters<int, int, int, int, int, int, int, int, int, int, int, int, //# 06: compile-time error
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 06: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 06: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 06: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 06: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 06: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 06: continued
int, int, int, int, int, int, int>(); //# 06: continued
new ManyParameters<int, int, int, int, int, int, int, int, int, int, int, int, //# 07: compile-time error
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 07: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 07: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 07: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 07: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 07: continued
int, int, int, int, int, int, int, int, int, int, int, int, int, int, //# 07: continued
int, int, int, int, int, int, int, int>(); //# 07: continued
}