main = main::main;
library from "org-dartlang-test:///lib.dart" as lib {

  import "org-dartlang-test:///nonexisting.dart";

  static method foo() → dynamic {}
}
library from "org-dartlang-test:///lib2.dart" as lib2 {

  static method bar() → dynamic {
    dart.core::print("hello2");
  }
}
library from "org-dartlang-test:///main.dart" as main {

  import "org-dartlang-test:///lib.dart";
  import "org-dartlang-test:///lib2.dart";

  static method main() → dynamic {
    lib::foo();
    lib2::bar();
  }
}
library from "org-dartlang-test:///nonexisting.dart" as non {
//
// Problems in library:
//
// org-dartlang-test:///lib.dart:1:8: Error: Error when reading 'org-dartlang-test:///nonexisting.dart': File org-dartlang-test:///nonexisting.dart does not exist.
// import 'nonexisting.dart';
//        ^
//

}
