@dart._internal::ExternalName::•("dart-ext:here")
@dart._internal::ExternalName::•("dart-ext:foo/../there")
@dart._internal::ExternalName::•("dart-ext:/usr/local/somewhere")
library;
//
// Problems in library:
//
// pkg/front_end/testcases/general/external_import.dart:7:1: Info: Dart native extensions are deprecated and will be removed in the 2.15 release of Dart SDK.
// Migrate to using FFI instead (https://dart.dev/guides/libraries/c-interop)
// import 'dart-ext:here';
// ^
//
// pkg/front_end/testcases/general/external_import.dart:8:1: Info: Dart native extensions are deprecated and will be removed in the 2.15 release of Dart SDK.
// Migrate to using FFI instead (https://dart.dev/guides/libraries/c-interop)
// import 'dart-ext:foo/../there';
// ^
//
// pkg/front_end/testcases/general/external_import.dart:9:1: Info: Dart native extensions are deprecated and will be removed in the 2.15 release of Dart SDK.
// Migrate to using FFI instead (https://dart.dev/guides/libraries/c-interop)
// import 'dart-ext:/usr/local/somewhere';
// ^
//
import self as self;
import "dart:_internal" as _in;

static method main() → dynamic
  ;


Extra constant evaluation status:
Evaluated: ConstructorInvocation @ null -> InstanceConstant(const ExternalName{ExternalName.name: "dart-ext:here"})
Evaluated: ConstructorInvocation @ null -> InstanceConstant(const ExternalName{ExternalName.name: "dart-ext:foo/../there"})
Evaluated: ConstructorInvocation @ null -> InstanceConstant(const ExternalName{ExternalName.name: "dart-ext:/usr/local/somewhere"})
Extra constant evaluation: evaluated: 3, effectively constant: 3
