OLD | NEW |
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 js_backend.backend; | 5 library js_backend.backend; |
6 | 6 |
7 import 'dart:async' show Future; | 7 import 'dart:async' show Future; |
8 | 8 |
9 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames; | 9 import 'package:js_runtime/shared/embedded_names.dart' as embeddedNames; |
10 | 10 |
(...skipping 2805 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2816 case Feature.COMPILE_TIME_ERROR: | 2816 case Feature.COMPILE_TIME_ERROR: |
2817 if (backend.compiler.options.generateCodeWithCompileTimeErrors) { | 2817 if (backend.compiler.options.generateCodeWithCompileTimeErrors) { |
2818 // TODO(johnniwinther): This should have its own uncatchable error. | 2818 // TODO(johnniwinther): This should have its own uncatchable error. |
2819 registerBackendImpact(transformed, impacts.throwRuntimeError); | 2819 registerBackendImpact(transformed, impacts.throwRuntimeError); |
2820 } | 2820 } |
2821 break; | 2821 break; |
2822 case Feature.FALL_THROUGH_ERROR: | 2822 case Feature.FALL_THROUGH_ERROR: |
2823 registerBackendImpact(transformed, impacts.fallThroughError); | 2823 registerBackendImpact(transformed, impacts.fallThroughError); |
2824 break; | 2824 break; |
2825 case Feature.FIELD_WITHOUT_INITIALIZER: | 2825 case Feature.FIELD_WITHOUT_INITIALIZER: |
| 2826 case Feature.LOCAL_WITHOUT_INITIALIZER: |
2826 transformed.registerTypeUse( | 2827 transformed.registerTypeUse( |
2827 new TypeUse.instantiation(backend.coreTypes.nullType)); | 2828 new TypeUse.instantiation(backend.coreTypes.nullType)); |
2828 registerBackendImpact(transformed, impacts.nullLiteral); | 2829 registerBackendImpact(transformed, impacts.nullLiteral); |
2829 break; | 2830 break; |
2830 case Feature.LAZY_FIELD: | 2831 case Feature.LAZY_FIELD: |
2831 registerBackendImpact(transformed, impacts.lazyField); | 2832 registerBackendImpact(transformed, impacts.lazyField); |
2832 break; | 2833 break; |
2833 case Feature.STACK_TRACE_IN_CATCH: | 2834 case Feature.STACK_TRACE_IN_CATCH: |
2834 registerBackendImpact(transformed, impacts.stackTraceInCatch); | 2835 registerBackendImpact(transformed, impacts.stackTraceInCatch); |
2835 break; | 2836 break; |
(...skipping 386 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3222 | 3223 |
3223 @override | 3224 @override |
3224 void onImpactUsed(ImpactUseCase impactUse) { | 3225 void onImpactUsed(ImpactUseCase impactUse) { |
3225 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { | 3226 if (impactUse == DeferredLoadTask.IMPACT_USE && !supportSerialization) { |
3226 // TODO(johnniwinther): Allow emptying when serialization has been | 3227 // TODO(johnniwinther): Allow emptying when serialization has been |
3227 // performed. | 3228 // performed. |
3228 resolution.emptyCache(); | 3229 resolution.emptyCache(); |
3229 } | 3230 } |
3230 } | 3231 } |
3231 } | 3232 } |
OLD | NEW |