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

Side by Side Diff: pkg/compiler/lib/src/compiler.dart

Issue 1414913002: Introduce .isMalformed (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Address review Created 5 years, 1 month 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
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 library dart2js.compiler_base; 5 library dart2js.compiler_base;
6 6
7 import 'dart:async' show 7 import 'dart:async' show
8 EventSink, 8 EventSink,
9 Future; 9 Future;
10 10
(...skipping 872 matching lines...) Expand 10 before | Expand all | Expand 10 after
883 MessageKind.CONSIDER_ANALYZE_ALL, {'main': Identifiers.main}, 883 MessageKind.CONSIDER_ANALYZE_ALL, {'main': Identifiers.main},
884 Identifiers.main, mainApp); 884 Identifiers.main, mainApp);
885 } 885 }
886 } else { 886 } else {
887 // Compilation requires a main method. 887 // Compilation requires a main method.
888 errorElement = new ErroneousElementX( 888 errorElement = new ErroneousElementX(
889 MessageKind.MISSING_MAIN, {'main': Identifiers.main}, 889 MessageKind.MISSING_MAIN, {'main': Identifiers.main},
890 Identifiers.main, mainApp); 890 Identifiers.main, mainApp);
891 } 891 }
892 mainFunction = backend.helperForMissingMain(); 892 mainFunction = backend.helperForMissingMain();
893 } else if (main.isErroneous && main.isSynthesized) { 893 } else if (main.isError && main.isSynthesized) {
894 if (main is ErroneousElement) { 894 if (main is ErroneousElement) {
895 errorElement = main; 895 errorElement = main;
896 } else { 896 } else {
897 reporter.internalError(main, 'Problem with ${Identifiers.main}.'); 897 reporter.internalError(main, 'Problem with ${Identifiers.main}.');
898 } 898 }
899 mainFunction = backend.helperForBadMain(); 899 mainFunction = backend.helperForBadMain();
900 } else if (!main.isFunction) { 900 } else if (!main.isFunction) {
901 errorElement = new ErroneousElementX( 901 errorElement = new ErroneousElementX(
902 MessageKind.MAIN_NOT_A_FUNCTION, {'main': Identifiers.main}, 902 MessageKind.MAIN_NOT_A_FUNCTION, {'main': Identifiers.main},
903 Identifiers.main, main); 903 Identifiers.main, main);
(...skipping 194 matching lines...) Expand 10 before | Expand all | Expand 10 after
1098 void emptyQueue(Enqueuer world) { 1098 void emptyQueue(Enqueuer world) {
1099 world.forEach((WorkItem work) { 1099 world.forEach((WorkItem work) {
1100 reporter.withCurrentElement(work.element, () { 1100 reporter.withCurrentElement(work.element, () {
1101 world.applyImpact(work.element, work.run(this, world)); 1101 world.applyImpact(work.element, work.run(this, world));
1102 }); 1102 });
1103 }); 1103 });
1104 } 1104 }
1105 1105
1106 void processQueue(Enqueuer world, Element main) { 1106 void processQueue(Enqueuer world, Element main) {
1107 world.nativeEnqueuer.processNativeClasses(libraryLoader.libraries); 1107 world.nativeEnqueuer.processNativeClasses(libraryLoader.libraries);
1108 if (main != null && !main.isErroneous) { 1108 if (main != null && !main.isMalformed) {
1109 FunctionElement mainMethod = main; 1109 FunctionElement mainMethod = main;
1110 mainMethod.computeType(resolution); 1110 mainMethod.computeType(resolution);
1111 if (mainMethod.functionSignature.parameterCount != 0) { 1111 if (mainMethod.functionSignature.parameterCount != 0) {
1112 // The first argument could be a list of strings. 1112 // The first argument could be a list of strings.
1113 backend.listImplementation.ensureResolved(resolution); 1113 backend.listImplementation.ensureResolved(resolution);
1114 backend.registerInstantiatedType( 1114 backend.registerInstantiatedType(
1115 backend.listImplementation.rawType, world, globalDependencies); 1115 backend.listImplementation.rawType, world, globalDependencies);
1116 backend.stringImplementation.ensureResolved(resolution); 1116 backend.stringImplementation.ensureResolved(resolution);
1117 backend.registerInstantiatedType( 1117 backend.registerInstantiatedType(
1118 backend.stringImplementation.rawType, world, globalDependencies); 1118 backend.stringImplementation.rawType, world, globalDependencies);
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
1293 } 1293 }
1294 } 1294 }
1295 prevToken = currentToken; 1295 prevToken = currentToken;
1296 currentToken = currentToken.next; 1296 currentToken = currentToken.next;
1297 } 1297 }
1298 return firstToken; 1298 return firstToken;
1299 } 1299 }
1300 1300
1301 void reportUnusedCode() { 1301 void reportUnusedCode() {
1302 void checkLive(member) { 1302 void checkLive(member) {
1303 if (member.isErroneous) return; 1303 if (member.isMalformed) return;
1304 if (member.isFunction) { 1304 if (member.isFunction) {
1305 if (!enqueuer.resolution.hasBeenProcessed(member)) { 1305 if (!enqueuer.resolution.hasBeenProcessed(member)) {
1306 reporter.reportHintMessage( 1306 reporter.reportHintMessage(
1307 member, MessageKind.UNUSED_METHOD, {'name': member.name}); 1307 member, MessageKind.UNUSED_METHOD, {'name': member.name});
1308 } 1308 }
1309 } else if (member.isClass) { 1309 } else if (member.isClass) {
1310 if (!member.isResolved) { 1310 if (!member.isResolved) {
1311 reporter.reportHintMessage( 1311 reporter.reportHintMessage(
1312 member, MessageKind.UNUSED_CLASS, {'name': member.name}); 1312 member, MessageKind.UNUSED_CLASS, {'name': member.name});
1313 } else { 1313 } else {
(...skipping 728 matching lines...) Expand 10 before | Expand all | Expand 10 after
2042 if (_otherDependencies == null) { 2042 if (_otherDependencies == null) {
2043 _otherDependencies = new Setlet<Element>(); 2043 _otherDependencies = new Setlet<Element>();
2044 } 2044 }
2045 _otherDependencies.add(element.implementation); 2045 _otherDependencies.add(element.implementation);
2046 } 2046 }
2047 2047
2048 Iterable<Element> get otherDependencies { 2048 Iterable<Element> get otherDependencies {
2049 return _otherDependencies != null ? _otherDependencies : const <Element>[]; 2049 return _otherDependencies != null ? _otherDependencies : const <Element>[];
2050 } 2050 }
2051 } 2051 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/compile_time_constants.dart ('k') | pkg/compiler/lib/src/cps_ir/cps_ir_builder.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698