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

Issue 1043843003: Rework handling of factory redirects in constant evaluation. (Closed)

Created:
5 years, 8 months ago by Paul Berry
Modified:
5 years, 8 months ago
Reviewers:
Brian Wilkerson
CC:
reviews_dartlang.org
Target Ref:
refs/remotes/git-svn
Visibility:
Public.

Description

Rework handling of factory redirects in constant evaluation. This change limits the set of elements that need to be examined in order to determine the constant evaluation dependency graph. Previously, when encountering a constant constructor invocation, we would chase the sequence of factory redirects to a non-redirecting constructor (being careful to avoid infinite regress in the case of invalid input), and then mark the invocation as dependent on the non-redirecting constructor. Now, we mark the invocation as dependent on the constructor it immediately references, and mark redirecting factory constructors as dependent on the constructors they redirect to. This is a prerequisite to converting constant evaluation over to the new task model, since once we're in the new task model there will be no guarantee that the full sequence of factory redirects has been resolved at the time we need to compute dependencies. R=brianwilkerson@google.com Committed: https://code.google.com/p/dart/source/detail?r=44797

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+55 lines, -29 lines) Patch
M pkg/analyzer/lib/src/generated/constant.dart View 4 chunks +55 lines, -29 lines 0 comments Download

Messages

Total messages: 4 (1 generated)
Paul Berry
5 years, 8 months ago (2015-03-30 21:41:16 UTC) #2
Brian Wilkerson
LGTM
5 years, 8 months ago (2015-03-30 21:46:31 UTC) #3
Paul Berry
5 years, 8 months ago (2015-03-30 21:50:50 UTC) #4
Message was sent while issue was closed.
Committed patchset #1 (id:1) manually as 44797 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698