// 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 An unconditional ordinary method invocation i has the form
 * o.m(a1, ..., an, xn+1 : an+1, ..., xn+k : an+k).
 * @description Checks that argument list may have comma on the end.
 * @author msyabro
 */
import "../../../../Utils/expect.dart";

main() {
  var o;
  Expect.throws(() {
    o.f(1, 2, 3,  );
  });
}
