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

Issue 1132363003: dart2js: keep track of non-final static fields. (Closed)

Created:
5 years, 7 months ago by floitsch
Modified:
5 years, 7 months ago
Reviewers:
herhut, sra1
CC:
reviews_dartlang.org
Target Ref:
refs/remotes/git-svn
Visibility:
Public.

Description

dart2js: keep track of non-final static fields. Dart2js used to just emit static non-final fields, even if they were not referenced. This is bad, because in some cases it referenced a constant that didn't exist (was tree-shaken away). In the old emitter this just became a reference to a non-existing property, but in the new emitter it crashed. This CL also fixes (partially) static non-final fields for the lazy emitter. R=sra@google.com Committed: https://code.google.com/p/dart/source/detail?r=45752

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+28 lines, -14 lines) Patch
M pkg/compiler/lib/src/enqueue.dart View 1 chunk +3 lines, -0 lines 0 comments Download
M pkg/compiler/lib/src/js_emitter/code_emitter_task.dart View 2 chunks +4 lines, -3 lines 0 comments Download
M pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart View 1 chunk +4 lines, -3 lines 2 comments Download
M pkg/compiler/lib/src/js_emitter/program_builder.dart View 1 chunk +5 lines, -8 lines 0 comments Download
M pkg/compiler/lib/src/universe/universe.dart View 2 chunks +12 lines, -0 lines 0 comments Download

Messages

Total messages: 5 (1 generated)
floitsch
5 years, 7 months ago (2015-05-12 06:54:33 UTC) #2
sra1
lgtm https://chromiumcodereview.appspot.com/1132363003/diff/1/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart File pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart (right): https://chromiumcodereview.appspot.com/1132363003/diff/1/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart#newcode458 pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart:458: FYI you could interpolate this with js.statement('{ # ...
5 years, 7 months ago (2015-05-12 23:20:02 UTC) #3
floitsch
https://chromiumcodereview.appspot.com/1132363003/diff/1/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart File pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart (right): https://chromiumcodereview.appspot.com/1132363003/diff/1/pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart#newcode458 pkg/compiler/lib/src/js_emitter/new_emitter/model_emitter.dart:458: On 2015/05/12 23:20:02, sra1 wrote: > FYI you could ...
5 years, 7 months ago (2015-05-12 23:34:11 UTC) #4
floitsch
5 years, 7 months ago (2015-05-12 23:34:56 UTC) #5
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as 45752 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698