| Index: pkg/compiler/lib/src/compiler.dart
 | 
| diff --git a/pkg/compiler/lib/src/compiler.dart b/pkg/compiler/lib/src/compiler.dart
 | 
| index 1e2fc08afe324154dbf894fabbbdf1ee5118bf8d..b9b0fa121bf22cff994d55886ccc3764aa460c82 100644
 | 
| --- a/pkg/compiler/lib/src/compiler.dart
 | 
| +++ b/pkg/compiler/lib/src/compiler.dart
 | 
| @@ -65,7 +65,7 @@ import 'scanner/scanner_task.dart' show ScannerTask;
 | 
|  import 'script.dart' show Script;
 | 
|  import 'serialization/task.dart' show SerializationTask;
 | 
|  import 'ssa/nodes.dart' show HInstruction;
 | 
| -import 'tokens/token.dart' show StringToken, Token, TokenPair;
 | 
| +import 'package:dart_scanner/dart_scanner.dart' show StringToken, Token;
 | 
|  import 'tokens/token_map.dart' show TokenMap;
 | 
|  import 'tracer.dart' show Tracer;
 | 
|  import 'tree/tree.dart' show Node, TypeAnnotation;
 | 
| @@ -270,7 +270,7 @@ abstract class Compiler implements LibraryLoaderListener {
 | 
|      }
 | 
|  
 | 
|      _parsingContext =
 | 
| -        new ParsingContext(reporter, parser, patchParser, backend);
 | 
| +        new ParsingContext(reporter, parser, scanner, patchParser, backend);
 | 
|  
 | 
|      tasks.addAll(backend.tasks);
 | 
|    }
 | 
| @@ -1643,6 +1643,9 @@ class CompilerDiagnosticReporter extends DiagnosticReporter {
 | 
|          api.Diagnostic.CRASH);
 | 
|    }
 | 
|  
 | 
| +  @override
 | 
| +  SourceSpan spanFromToken(Token token) => spanFromTokens(token, token);
 | 
| +
 | 
|    SourceSpan spanFromTokens(Token begin, Token end, [Uri uri]) {
 | 
|      if (begin == null || end == null) {
 | 
|        // TODO(ahe): We can almost always do better. Often it is only
 | 
| @@ -1791,10 +1794,6 @@ class CompilerDiagnosticReporter extends DiagnosticReporter {
 | 
|        return node;
 | 
|      } else if (node is Node) {
 | 
|        return spanFromNode(node);
 | 
| -    } else if (node is TokenPair) {
 | 
| -      return spanFromTokens(node.begin, node.end);
 | 
| -    } else if (node is Token) {
 | 
| -      return spanFromTokens(node, node);
 | 
|      } else if (node is HInstruction) {
 | 
|        return spanFromHInstruction(node);
 | 
|      } else if (node is Element) {
 | 
| 
 |