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

Side by Side Diff: lib/src/codegen/reify_coercions.dart

Issue 1160223006: Fix DDC errors on DDC (Closed) Base URL: https://github.com/dart-lang/dev_compiler.git@master
Patch Set: address comments Created 5 years, 6 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
« no previous file with comments | « lib/src/codegen/js_metalet.dart ('k') | lib/src/codegen/side_effect_analysis.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) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 dev_compiler.src.codegen.reify_coercions; 5 library dev_compiler.src.codegen.reify_coercions;
6 6
7 import 'package:analyzer/analyzer.dart' as analyzer; 7 import 'package:analyzer/analyzer.dart' as analyzer;
8 import 'package:analyzer/src/generated/ast.dart'; 8 import 'package:analyzer/src/generated/ast.dart';
9 import 'package:analyzer/src/generated/element.dart'; 9 import 'package:analyzer/src/generated/element.dart';
10 import 'package:analyzer/src/generated/engine.dart' show AnalysisContext; 10 import 'package:analyzer/src/generated/engine.dart' show AnalysisContext;
(...skipping 357 matching lines...) Expand 10 before | Expand all | Expand 10 after
368 } 368 }
369 369
370 ///////////////// Private ////////////////////////////////// 370 ///////////////// Private //////////////////////////////////
371 Tuple2<Identifier, Function1<Expression, Expression>> _bindExpression( 371 Tuple2<Identifier, Function1<Expression, Expression>> _bindExpression(
372 String hint, Expression e1) { 372 String hint, Expression e1) {
373 if (e1 is Identifier) { 373 if (e1 is Identifier) {
374 return new Tuple2(e1, (e2) => e2); 374 return new Tuple2(e1, (e2) => e2);
375 } 375 }
376 var id = _vm.freshIdentifier(hint); 376 var id = _vm.freshIdentifier(hint);
377 var fp = AstBuilder.simpleFormal(id, null); 377 var fp = AstBuilder.simpleFormal(id, null);
378 f(e2) => AstBuilder.parenthesize(AstBuilder.letExpression(fp, e1, e2)); 378 Expression f(Expression e2) =>
379 AstBuilder.parenthesize(AstBuilder.letExpression(fp, e1, e2));
379 return new Tuple2(id, f); 380 return new Tuple2(id, f);
380 } 381 }
381 382
382 Expression _wrapExpression(Expression e, Wrapper w, String k, String loc) { 383 Expression _wrapExpression(Expression e, Wrapper w, String k, String loc) {
383 var q = _addWrapper(w, loc); 384 var q = _addWrapper(w, loc);
384 if (_runtime == null) { 385 if (_runtime == null) {
385 var app = AstBuilder.application(q, <Expression>[e]); 386 var app = AstBuilder.application(q, <Expression>[e]);
386 app.staticType = w.toType; 387 app.staticType = w.toType;
387 return app; 388 return app;
388 } 389 }
(...skipping 473 matching lines...) Expand 10 before | Expand all | Expand 10 after
862 assert(_runtime != null); 863 assert(_runtime != null);
863 if (t.typeArguments != null && t.typeArguments.length > 0) { 864 if (t.typeArguments != null && t.typeArguments.length > 0) {
864 var w = AstBuilder.identifierFromString("_"); 865 var w = AstBuilder.identifierFromString("_");
865 var fp = AstBuilder.simpleFormal(w, t); 866 var fp = AstBuilder.simpleFormal(w, t);
866 var f = AstBuilder.blockFunction(<FormalParameter>[fp], <Statement>[]); 867 var f = AstBuilder.blockFunction(<FormalParameter>[fp], <Statement>[]);
867 return _runtime.type(f); 868 return _runtime.type(f);
868 } 869 }
869 return t.name; 870 return t.name;
870 } 871 }
871 } 872 }
OLDNEW
« no previous file with comments | « lib/src/codegen/js_metalet.dart ('k') | lib/src/codegen/side_effect_analysis.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698