// 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 A function literal is an object that encapsulates an executable | |
/// unit of code. | |
/// functionExpression: | |
/// formalParameterList functionExpressionBody | |
/// ; | |
/// @description Checks that various valid function literal invocation | |
/// expressions don't produce compile-time errors. | |
/// @author kaigorodov | |
abstract class I {} | |
class C implements I{} | |
typedef tf(); | |
main() { | |
() {}(); | |
(k) { return k; }(1); | |
(() => 1)(); | |
((C? x, y) => new C())(null, null); | |
((C? p1, tf? p2, [tf? p3]) => null)(null, null); | |
((C? p1, tf? p2, {tf? p3}) => null)(null, null); | |
(tf? p1, tf? p2, [tf? p3]) => null; | |
try { | |
((tf? p1, tf? p2, [tf? p3]) => null)(null, null); | |
} catch (x) {} | |
} |