anchor.diff:          KernelFrontendStrategyForDeferredLoading {
     final CompilerOptions _options;
     final CompilerTask _compilerTask;
  -  /*late*/ KernelToElementMap _elementMap;
  -  RuntimeTypesNeedBuilder _runtimeTypesNeedBuilder;
  -
  -  KernelAnnotationProcessor _annotationProcessor;
  +  late final KernelToElementMap _elementMap;
  +  late final RuntimeTypesNeedBuilder _runtimeTypesNeedBuilder =
  +      _options.disableRtiOptimization
  +          ? const TrivialRuntimeTypesNeedBuilder()
  +          : RuntimeTypesNeedBuilderImpl(elementEnvironment);
  +
  +  RuntimeTypesNeedBuilder get runtimeTypesNeedBuilderForTesting =>
  +      _runtimeTypesNeedBuilder;
  +
  +  late KernelAnnotationProcessor _annotationProcessor;
   
     final Map<MemberEntity, ClosureScopeModel> closureModels = {};
   
  -  ModularStrategy _modularStrategy;
  -  IrAnnotationData _irAnnotationData;
  -
  -  NativeDataBuilder _nativeDataBuilder;
  +  late ModularStrategy _modularStrategy;
  +  late IrAnnotationData _irAnnotationData;
  +
  +  late NativeDataBuilder _nativeDataBuilder;
     NativeDataBuilder get nativeDataBuilder => _nativeDataBuilder;
   
  -  BackendUsageBuilder _backendUsageBuilder;
  -
  -  NativeResolutionEnqueuer _nativeResolutionEnqueuer;
  +  late BackendUsageBuilder _backendUsageBuilder;
  +
  +  late NativeResolutionEnqueuer _nativeResolutionEnqueuer;
   
     /// Resolution support for generating table of interceptors and
     /// constructors for custom elements.
  -  CustomElementsResolutionAnalysis _customElementsResolutionAnalysis;
  -
  -  KFieldAnalysis _fieldAnalysis;
  +  late CustomElementsResolutionAnalysis _customElementsResolutionAnalysis;
  +
  +  late KFieldAnalysis _fieldAnalysis;
   
     /// Support for classifying `noSuchMethod` implementations.
  -  NoSuchMethodRegistry noSuchMethodRegistry;
  +  late NoSuchMethodRegistry noSuchMethodRegistry;
   
     KernelFrontendStrategy(this._compilerTask, this._options,
  -      DiagnosticReporter reporter, env.Environment environment) {
  -    assert(_compilerTask != null);
  -    _elementMap = KernelToElementMap(reporter, environment, _options);
  +      DiagnosticReporter reporter, env.Environment environment)
  +      : _elementMap = KernelToElementMap(reporter, environment, _options) {
       _modularStrategy = KernelModularStrategy(_compilerTask, _elementMap);
       _backendUsageBuilder = BackendUsageBuilderImpl(this);
       noSuchMethodRegistry =
  
positive.code:           _modularStrategy.getModularMemberData(node, annotations);
        ScopeModel scopeModel = modularMemberData.scopeModel;
        if (scopeModel.closureScopeModel != null) {
          _closureModels[element] = scopeModel.closureScopeModel;
        }
        if (element.isField && !element.isInstanceMember) {
          _fieldAnalysis.registerStaticField(
              element, scopeModel.initializerComplexity);
        }
        ImpactBuilderData impactBuilderData = modularMemberData.impactBuilderData;
        return _compilerTask.measureSubtask('worldImpact', () {
          WorldImpact worldImpact = _elementMap.computeWorldImpact(
              element,
              _impacts,
              _nativeResolutionEnqueuer,
              _backendUsageBuilder,
  
negative.code: // Copyright (c) 2017, the Dart project authors.  Please see the AUTHORS file
  // for details. All rights reserved. Use of this source code is governed by a
  // BSD-style license that can be found in the LICENSE file.
  
  library dart2js.kernel.frontend_strategy;
  
  