/*
 * 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 libraryDefinition:
 *   scriptTag? libraryName? importOrExport* partDirective* topLevelDefinition*
 * ;
 * scriptTag:
 *   ‘#!’ ( ̃NEWLINE)* NEWLINE
 * ;
 * libraryName:
 *   metadata library identifier (‘.’ identifier)* ‘;’
 * ;
 * importOrExport:
 *   libraryImport |
 *   libraryExport
 * ;
 * Libraries may be explicitly named or implicitly named. An explicitly named
 * library begins with the word library (possibly prefaced with any applicable
 * metadata annotations), followed by a qualified identifier that gives the
 * name of the library.
 * @description Checks that valid library directives (according to the spec)
 * do not cause compile-time errors.
 * @author msyabro
 */

import "definition_syntax_t13_p1.dart" as lib1;
import "definition_syntax_t13_p2.dart" as lib2;
import "definition_syntax_t13_p3.dart" as lib3;
import "definition_syntax_t13_p4.dart" as lib4;
import "definition_syntax_t13_p5.dart" as lib5;
import "definition_syntax_t13_p6.dart" as lib6;

main() {
  lib1.foo;
  lib2.foo;
  lib3.foo;
  lib4.foo;
  lib5.foo;
  lib6.foo;
}
