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

Unified Diff: dart/sdk/lib/_internal/compiler/implementation/enqueue.dart

Issue 15861028: Implement MethodMirror.metadata. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Address comments and deal with private members of BoundClosure Created 7 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 side-by-side diff with in-line comments
Download patch
Index: dart/sdk/lib/_internal/compiler/implementation/enqueue.dart
diff --git a/dart/sdk/lib/_internal/compiler/implementation/enqueue.dart b/dart/sdk/lib/_internal/compiler/implementation/enqueue.dart
index 7397b2f3ea3e96396d712953df555cd66dbd7b8a..f60fd00fa70382d8b8a766c786c9d2690bbecfc2 100644
--- a/dart/sdk/lib/_internal/compiler/implementation/enqueue.dart
+++ b/dart/sdk/lib/_internal/compiler/implementation/enqueue.dart
@@ -231,9 +231,12 @@ abstract class Enqueuer {
// Native fields need to go into instanceMembersByName as they
// are virtual instantiation points and escape points.
} else {
- // The codegen inlines instance fields initialization, so it
- // does not need to add individual fields in the work list.
if (isResolutionQueue) {
+ // All field initializers must be resolved as they could
+ // have an observable side-effect (and cannot be tree-shaken
+ // away). However, codegen inlines field initializers, so
+ // it does not need to add individual fields in the work
+ // list.
addToWorkList(member);
}
return;

Powered by Google App Engine
This is Rietveld 408576698