blob: d0bac43421bb4e38a91b22c33e75b4b1c93e1164 [file] [log] [blame]
// Copyright (c) 2011, 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 Let T be a parameterized type G < S1 , ..., Sn >. If G is not a
/// generic type, the type arguments Si, 1 ≤ i ≤ n are discarded. If G has
/// m <> n type parameters, T is treated as as a parameterized type with m
/// arguments, all of which are dynamic.
/// In short, any arity mismatch results in all type arguments being dropped,
/// and replaced with the correct number of type arguments, all set to dynamic.
/// Of course, a static warning will be issued.
/// @description Checks that a compile error is produced if G has fewer type
/// parameters than needed.
/// @author iefremov
class A<T, U> {}
main() {
A<int>? a = null;
//^
// [analyzer] unspecified
// [cfe] unspecified
}