This file was autogenerated from running the shaker test suite.
To update this file, either copy the output from a failing test or run
pkg/front_end/tool/fasta testing shaker -DupdateExpectations=true
----- pkg/front_end/testcases/shaker/export_references.dart
library;
import self as self;
import "./export_references_lib.dart" as exp;
import "./export_references_lib2.dart" as exp2;
additionalExports = (exp::B, exp2::A)


----- external pkg/front_end/testcases/shaker/export_references_lib.dart
library;
import self as self;
import "dart:core" as core;

class B extends core::Object {
  synthetic constructor •() → void
    : super core::Object::•();
}

----- external pkg/front_end/testcases/shaker/export_references_lib2.dart
library;
import self as self;
import "dart:core" as core;

class A extends core::Object {
  synthetic constructor •() → void
    : super core::Object::•();
}
