anchor.diff:    'pkg/pkg/pkg.dart': '',
   };
   
  -Future test(Uri entryPoint,
  -            {bool showPackageWarnings: false,
  -             bool suppressHints: false,
  -             int hints: 0}) async {
  +Future<Compiler> test(Uri entryPoint,
  +                      {bool showPackageWarnings: false,
  +                       bool suppressHints: false,
  +                       int hints: 0,
  +                       Compiler cachedCompiler}) async {
     print('==================================================================');
     print('test: $entryPoint showPackageWarnings=$showPackageWarnings '
           'suppressHints=$suppressHints');
  -  var options = [Flags.analyzeOnly, Flags.analyzeAll];
  +  var options = [Flags.analyzeOnly];
     if (showPackageWarnings) {
       options.add(Flags.showPackageWarnings);
     }
  
positive.code: import 'package:async_helper/async_helper.dart';
  import 'package:expect/expect.dart';
  import 'package:compiler/src/commandline_options.dart';
  import 'memory_compiler.dart';
  
  const SOURCE = const {
    'show_local.dart': """
  import 'lib.dart' show Foo;
  """,
  
    'hide_local.dart': """
  import 'lib.dart' hide Foo;
  """,
  
    'show_package.dart': """
  import 'package:pkg/pkg.dart' show Foo;
  """,
  
    'hide_package.dart': """
  import 'package:pkg/pkg.dart' hide Foo;
  """,
  
    'lib.dart': '',
  
negative.code:   Expect.equals(0, collector.infos.length,
                  'Unexpected infos: ${collector.infos}');
    print('==================================================================');
    return result.compiler;
  }
  
  Future<Compiler> testUri(Uri entrypoint,
                           {bool suppressed: false,
                            Compiler cachedCompiler}) async {
    cachedCompiler = await test(
        entrypoint,
        showPackageWarnings: true,
        suppressHints: false,
        hints: 1,
        cachedCompiler: cachedCompiler);
    cachedCompiler = await test(
        entrypoint,
        showPackageWarnings: false,
        suppressHints: false,
        hints: suppressed ? 0 : 1,
        cachedCompiler: cachedCompiler);
    cachedCompiler = await test(
        entrypoint,
        showPackageWarnings: true,
        suppressHints: true,
        hints: 0,
        cachedCompiler: cachedCompiler);
    cachedCompiler = await test(
        entrypoint,
        showPackageWarnings: false,
        suppressHints: true,
        hints: 0,
        cachedCompiler: cachedCompiler);
    return cachedCompiler;
  }
  
  void main() {
    asyncTest(() async {
      Compiler cachedCompiler = await testUri(
          Uri.parse('memory:show_local.dart'));
      cachedCompiler = await testUri(
          Uri.parse('memory:hide_local.dart'),
          cachedCompiler: cachedCompiler);
      cachedCompiler = await testUri(
          Uri.parse('memory:show_package.dart'),
          cachedCompiler: cachedCompiler);
      cachedCompiler = await testUri(
          Uri.parse('memory:hide_package.dart'),
          suppressed: true,
          cachedCompiler: cachedCompiler);
    });
  }
  
  