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

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

Issue 1140903002: Handle constant constructors with parse errors. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Rebased Created 5 years, 7 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 | pkg/compiler/lib/src/resolution/semantic_visitor.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) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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.ir_builder_task; 5 library dart2js.ir_builder_task;
6 6
7 import '../closure.dart' as closurelib; 7 import '../closure.dart' as closurelib;
8 import '../closure.dart' hide ClosureScope; 8 import '../closure.dart' hide ClosureScope;
9 import '../constants/expressions.dart'; 9 import '../constants/expressions.dart';
10 import '../dart_types.dart'; 10 import '../dart_types.dart';
(...skipping 1936 matching lines...) Expand 10 before | Expand all | Expand 10 after
1947 Selector selector, _) { 1947 Selector selector, _) {
1948 // If the class is there but the constructor is missing, it's an NSM error. 1948 // If the class is there but the constructor is missing, it's an NSM error.
1949 return buildStaticNoSuchMethod(selector, 1949 return buildStaticNoSuchMethod(selector,
1950 translateDynamicArguments(arguments, selector.callStructure)); 1950 translateDynamicArguments(arguments, selector.callStructure));
1951 } 1951 }
1952 1952
1953 @override 1953 @override
1954 ir.Primitive errorNonConstantConstructorInvoke( 1954 ir.Primitive errorNonConstantConstructorInvoke(
1955 ast.NewExpression node, 1955 ast.NewExpression node,
1956 Element element, 1956 Element element,
1957 InterfaceType type, 1957 DartType type,
1958 ast.NodeList arguments, 1958 ast.NodeList arguments,
1959 CallStructure callStructure, _) { 1959 CallStructure callStructure, _) {
1960 assert(compiler.compilationFailed); 1960 assert(compiler.compilationFailed);
1961 return irBuilder.buildNullConstant(); 1961 return irBuilder.buildNullConstant();
1962 } 1962 }
1963 1963
1964 @override 1964 @override
1965 ir.Primitive visitUnresolvedGet( 1965 ir.Primitive visitUnresolvedGet(
1966 ast.Send node, 1966 ast.Send node,
1967 Element element, _) { 1967 Element element, _) {
(...skipping 1734 matching lines...) Expand 10 before | Expand all | Expand 10 after
3702 node.body = replacementFor(node.body); 3702 node.body = replacementFor(node.body);
3703 } 3703 }
3704 } 3704 }
3705 3705
3706 /// Visit a just-deleted subterm and unlink all [Reference]s in it. 3706 /// Visit a just-deleted subterm and unlink all [Reference]s in it.
3707 class RemovalVisitor extends ir.RecursiveVisitor { 3707 class RemovalVisitor extends ir.RecursiveVisitor {
3708 processReference(ir.Reference reference) { 3708 processReference(ir.Reference reference) {
3709 reference.unlink(); 3709 reference.unlink();
3710 } 3710 }
3711 } 3711 }
OLDNEW
« no previous file with comments | « no previous file | pkg/compiler/lib/src/resolution/semantic_visitor.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698