Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(85)

Side by Side Diff: dart/lib/compiler/implementation/compiler.dart

Issue 10823290: Abort earlier on compilation errors (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | dart/lib/compiler/implementation/resolver.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 5
6 /** 6 /**
7 * If true, print a warning for each method that was resolved, but not 7 * If true, print a warning for each method that was resolved, but not
8 * compiled. 8 * compiled.
9 */ 9 */
10 final bool REPORT_EXCESS_RESOLUTION = false; 10 final bool REPORT_EXCESS_RESOLUTION = false;
(...skipping 608 matching lines...) Expand 10 before | Expand all | Expand 10 after
619 } 619 }
620 620
621 void processQueue(Enqueuer world, Element main) { 621 void processQueue(Enqueuer world, Element main) {
622 backend.processNativeClasses(world, libraries.getValues()); 622 backend.processNativeClasses(world, libraries.getValues());
623 world.addToWorkList(main); 623 world.addToWorkList(main);
624 progress.reset(); 624 progress.reset();
625 world.forEach((WorkItem work) { 625 world.forEach((WorkItem work) {
626 withCurrentElement(work.element, () => work.run(this, world)); 626 withCurrentElement(work.element, () => work.run(this, world));
627 }); 627 });
628 world.queueIsClosed = true; 628 world.queueIsClosed = true;
629 if (compilationFailed) return;
629 assert(world.checkNoEnqueuedInvokedInstanceMethods()); 630 assert(world.checkNoEnqueuedInvokedInstanceMethods());
630 } 631 }
631 632
632 void processRecompilationQueue(Enqueuer world) { 633 void processRecompilationQueue(Enqueuer world) {
633 assert(phase == PHASE_RECOMPILING); 634 assert(phase == PHASE_RECOMPILING);
634 while (!world.recompilationCandidates.isEmpty()) { 635 while (!world.recompilationCandidates.isEmpty()) {
635 WorkItem work = world.recompilationCandidates.next(); 636 WorkItem work = world.recompilationCandidates.next();
636 CodeBuffer oldCode = world.universe.generatedCode[work.element]; 637 CodeBuffer oldCode = world.universe.generatedCode[work.element];
637 world.universe.generatedCode.remove(work.element); 638 world.universe.generatedCode.remove(work.element);
638 world.universe.generatedBailoutCode.remove(work.element); 639 world.universe.generatedBailoutCode.remove(work.element);
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after
948 final endOffset = end.charOffset + end.slowCharCount; 949 final endOffset = end.charOffset + end.slowCharCount;
949 950
950 // [begin] and [end] might be the same for the same empty token. This 951 // [begin] and [end] might be the same for the same empty token. This
951 // happens for instance when scanning '$$'. 952 // happens for instance when scanning '$$'.
952 assert(endOffset >= beginOffset); 953 assert(endOffset >= beginOffset);
953 return f(beginOffset, endOffset); 954 return f(beginOffset, endOffset);
954 } 955 }
955 956
956 String toString() => 'SourceSpan($uri, $begin, $end)'; 957 String toString() => 'SourceSpan($uri, $begin, $end)';
957 } 958 }
OLDNEW
« no previous file with comments | « no previous file | dart/lib/compiler/implementation/resolver.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698