| Index: pkg/analyzer/lib/src/task/driver.dart
|
| diff --git a/pkg/analyzer/lib/src/task/driver.dart b/pkg/analyzer/lib/src/task/driver.dart
|
| index 91d7d3fc2be51a917b770bc7b505c8598094cd46..88df107a3bc479c8aa6046653c6d118e0eff9f6a 100644
|
| --- a/pkg/analyzer/lib/src/task/driver.dart
|
| +++ b/pkg/analyzer/lib/src/task/driver.dart
|
| @@ -10,6 +10,7 @@ import 'dart:collection';
|
| import 'package:analyzer/src/context/cache.dart';
|
| import 'package:analyzer/src/generated/engine.dart' hide AnalysisTask;
|
| import 'package:analyzer/src/generated/java_engine.dart';
|
| +import 'package:analyzer/src/generated/resolver.dart';
|
| import 'package:analyzer/src/task/inputs.dart';
|
| import 'package:analyzer/src/task/manager.dart';
|
| import 'package:analyzer/task/model.dart';
|
| @@ -233,6 +234,7 @@ class AnalysisDriver {
|
| abstract class ExtendedAnalysisContext implements InternalAnalysisContext {
|
| List<AnalysisTarget> get explicitTargets;
|
| List<AnalysisTarget> get priorityTargets;
|
| + void set typeProvider(TypeProvider typeProvider);
|
| CacheEntry getCacheEntry(AnalysisTarget target);
|
| }
|
|
|
| @@ -281,8 +283,12 @@ class WorkItem {
|
| * described by the given descriptor.
|
| */
|
| WorkItem(this.context, this.target, this.descriptor) {
|
| + AnalysisTarget actualTarget = identical(
|
| + target, AnalysisContextTarget.request)
|
| + ? new AnalysisContextTarget(context)
|
| + : target;
|
| Map<String, TaskInput> inputDescriptors =
|
| - descriptor.createTaskInputs(target);
|
| + descriptor.createTaskInputs(actualTarget);
|
| builder = new TopLevelTaskInputBuilder(inputDescriptors);
|
| if (!builder.moveNext()) {
|
| builder = null;
|
|
|