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

Side by Side Diff: sdk/lib/_internal/compiler/implementation/compile_time_constants.dart

Issue 169763003: Update dart2js diagnostics to prepare for filtering. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Remove optional Uri. Created 6 years, 10 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
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 part of dart2js; 5 part of dart2js;
6 6
7 /** 7 /**
8 * The [ConstantHandler] keeps track of compile-time constants, 8 * The [ConstantHandler] keeps track of compile-time constants,
9 * initializations of global and static fields, and default values of 9 * initializations of global and static fields, and default values of
10 * optional parameters. 10 * optional parameters.
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after
298 List<Constant> keys = <Constant>[]; 298 List<Constant> keys = <Constant>[];
299 Map<Constant, Constant> map = new Map<Constant, Constant>(); 299 Map<Constant, Constant> map = new Map<Constant, Constant>();
300 for (Link<Node> link = node.entries.nodes; 300 for (Link<Node> link = node.entries.nodes;
301 !link.isEmpty; 301 !link.isEmpty;
302 link = link.tail) { 302 link = link.tail) {
303 LiteralMapEntry entry = link.head; 303 LiteralMapEntry entry = link.head;
304 Constant key = evaluateConstant(entry.key); 304 Constant key = evaluateConstant(entry.key);
305 if (!map.containsKey(key)) { 305 if (!map.containsKey(key)) {
306 keys.add(key); 306 keys.add(key);
307 } else { 307 } else {
308 compiler.reportWarningCode(entry.key, MessageKind.EQUAL_MAP_ENTRY_KEY); 308 compiler.reportWarning(entry.key, MessageKind.EQUAL_MAP_ENTRY_KEY);
309 } 309 }
310 map[key] = evaluateConstant(entry.value); 310 map[key] = evaluateConstant(entry.value);
311 } 311 }
312 312
313 bool onlyStringKeys = true; 313 bool onlyStringKeys = true;
314 Constant protoValue = null; 314 Constant protoValue = null;
315 for (var key in keys) { 315 for (var key in keys) {
316 if (key.isString()) { 316 if (key.isString()) {
317 if (key.value == MapConstant.PROTO_PROPERTY) { 317 if (key.value == MapConstant.PROTO_PROPERTY) {
318 protoValue = map[key]; 318 protoValue = map[key];
(...skipping 634 matching lines...) Expand 10 before | Expand all | Expand 10 after
953 if (fieldValue == null) { 953 if (fieldValue == null) {
954 // Use the default value. 954 // Use the default value.
955 fieldValue = handler.compileConstant(field); 955 fieldValue = handler.compileConstant(field);
956 } 956 }
957 jsNewArguments.add(fieldValue); 957 jsNewArguments.add(fieldValue);
958 }, 958 },
959 includeSuperAndInjectedMembers: true); 959 includeSuperAndInjectedMembers: true);
960 return jsNewArguments; 960 return jsNewArguments;
961 } 961 }
962 } 962 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698