| Index: pkg/compiler/lib/src/js_backend/lookup_map_analysis.dart
 | 
| diff --git a/pkg/compiler/lib/src/js_backend/lookup_map_analysis.dart b/pkg/compiler/lib/src/js_backend/lookup_map_analysis.dart
 | 
| index 929a74282fa954c8a46ede82193b4acea91ddcef..21a643a1e68428f3eb408bd8314efecb431ce22c 100644
 | 
| --- a/pkg/compiler/lib/src/js_backend/lookup_map_analysis.dart
 | 
| +++ b/pkg/compiler/lib/src/js_backend/lookup_map_analysis.dart
 | 
| @@ -7,14 +7,17 @@ library compiler.src.js_backend.lookup_map_analysis;
 | 
|  
 | 
|  import '../common/registry.dart' show Registry;
 | 
|  import '../compiler.dart' show Compiler;
 | 
| -import '../diagnostics/messages.dart' show MessageKind;
 | 
| +import '../diagnostics/diagnostic_listener.dart' show
 | 
| +    DiagnosticReporter;
 | 
| +import '../diagnostics/messages.dart' show
 | 
| +    MessageKind;
 | 
|  import '../constants/values.dart' show
 | 
| -     ConstantValue,
 | 
| -     ConstructedConstantValue,
 | 
| -     ListConstantValue,
 | 
| -     NullConstantValue,
 | 
| -     StringConstantValue,
 | 
| -     TypeConstantValue;
 | 
| +    ConstantValue,
 | 
| +    ConstructedConstantValue,
 | 
| +    ListConstantValue,
 | 
| +    NullConstantValue,
 | 
| +    StringConstantValue,
 | 
| +    TypeConstantValue;
 | 
|  import '../dart_types.dart' show DartType;
 | 
|  import '../elements/elements.dart' show
 | 
|      ClassElement,
 | 
| @@ -72,6 +75,10 @@ class LookupMapAnalysis {
 | 
|    /// discover that a key in a map is potentially used.
 | 
|    final JavaScriptBackend backend;
 | 
|  
 | 
| +  /// Reference the diagnostic reporting system for logging and reporting issues
 | 
| +  /// to the end-user.
 | 
| +  final DiagnosticReporter reporter;
 | 
| +
 | 
|    /// The resolved [VariableElement] associated with the top-level `_version`.
 | 
|    VariableElement lookupMapVersionVariable;
 | 
|  
 | 
| @@ -119,7 +126,7 @@ class LookupMapAnalysis {
 | 
|    /// Whether the backend is currently processing the codegen queue.
 | 
|    bool _inCodegen = false;
 | 
|  
 | 
| -  LookupMapAnalysis(this.backend);
 | 
| +  LookupMapAnalysis(this.backend, this.reporter);
 | 
|  
 | 
|    /// Whether this analysis and optimization is enabled.
 | 
|    bool get _isEnabled {
 | 
| @@ -136,7 +143,7 @@ class LookupMapAnalysis {
 | 
|      // the lookup_map package. We otherwise produce a warning.
 | 
|      lookupMapVersionVariable = library.implementation.findLocal('_version');
 | 
|      if (lookupMapVersionVariable == null) {
 | 
| -      backend.compiler.reportInfo(library,
 | 
| +      reporter.reportInfo(library,
 | 
|            MessageKind.UNRECOGNIZED_VERSION_OF_LOOKUP_MAP);
 | 
|      } else {
 | 
|        backend.compiler.enqueuer.resolution.addToWorkList(
 | 
| @@ -155,7 +162,7 @@ class LookupMapAnalysis {
 | 
|      StringConstantValue value =
 | 
|          backend.constants.getConstantValueForVariable(lookupMapVersionVariable);
 | 
|      if (value == null) {
 | 
| -      backend.compiler.reportInfo(lookupMapVersionVariable,
 | 
| +      reporter.reportInfo(lookupMapVersionVariable,
 | 
|            MessageKind.UNRECOGNIZED_VERSION_OF_LOOKUP_MAP);
 | 
|        return;
 | 
|      }
 | 
| @@ -168,7 +175,7 @@ class LookupMapAnalysis {
 | 
|      } catch (e) {}
 | 
|  
 | 
|      if (version == null || !_validLookupMapVersionConstraint.allows(version)) {
 | 
| -      backend.compiler.reportInfo(lookupMapVersionVariable,
 | 
| +      reporter.reportInfo(lookupMapVersionVariable,
 | 
|            MessageKind.UNRECOGNIZED_VERSION_OF_LOOKUP_MAP);
 | 
|        return;
 | 
|      }
 | 
| @@ -311,7 +318,7 @@ class LookupMapAnalysis {
 | 
|            count++;
 | 
|          }
 | 
|        }
 | 
| -      compiler.log(count == 0
 | 
| +      reporter.log(count == 0
 | 
|            ? 'lookup-map: nothing was tree-shaken'
 | 
|            : 'lookup-map: found $count unused keys ($sb)');
 | 
|      }
 | 
| 
 |