// 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 unqualified function invocation i has the form
/// id(a1, ..., an, xn+1: an+1, ..., xn+k: an+k), where id is an identifier.
/// If there exists a lexically visible declaration named id, let fid be the
/// innermost such declaration. Then:
///  • If fid is a prefix object, a compile-time error occurs.
/// . . .
/// @description Checks that if fid is a prefix object, a compile-time error
/// occurs.
/// @author ngl@unipro.ru


import 'invocation_lib.dart' as lb;

main() {
  lb("ab");
//^
// [analyzer] unspecified
// [cfe] unspecified
}
