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

Issue 1323513005: Strong mode foreach inference. Infer the type of declared identifiers (Closed)

Created:
5 years, 3 months ago by Leaf
Modified:
5 years, 3 months ago
CC:
reviews_dartlang.org
Base URL:
git@github.com:dart-lang/sdk.git@master
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Strong mode foreach inference. Infer the type of declared identifiers in foreach blocks. BUG= R=brianwilkerson@google.com, paulberry@google.com Committed: https://github.com/dart-lang/sdk/commit/f90c09df4822f95bfd4c4e239bd0f139d8c31457

Patch Set 1 #

Total comments: 10

Patch Set 2 : Address comments 2 #

Patch Set 3 : Formatter run #

Patch Set 4 : Alphabetize #

Total comments: 5

Patch Set 5 : Eliminate null aware operators, add async test #

Total comments: 2

Patch Set 6 : Cycle detection based on class elements #

Unified diffs Side-by-side diffs Delta from patch set Stats (+161 lines, -27 lines) Patch
M pkg/analyzer/lib/src/generated/resolver.dart View 1 2 3 chunks +3 lines, -14 lines 0 comments Download
M pkg/analyzer/lib/src/generated/static_type_analyzer.dart View 1 2 3 4 5 4 chunks +81 lines, -13 lines 0 comments Download
M pkg/analyzer/test/generated/resolver_test.dart View 1 2 3 4 2 chunks +77 lines, -0 lines 0 comments Download

Messages

Total messages: 13 (1 generated)
Leaf
5 years, 3 months ago (2015-08-28 20:33:07 UTC) #2
Paul Berry
https://codereview.chromium.org/1323513005/diff/1/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1323513005/diff/1/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1243 pkg/analyzer/lib/src/generated/static_type_analyzer.dart:1243: var parent = node.parent as ForEachStatement; Isn't this going ...
5 years, 3 months ago (2015-08-28 20:51:10 UTC) #3
Brian Wilkerson
LGTM. Your call on whether to address comments in this CL or a follow-on CL. ...
5 years, 3 months ago (2015-08-28 20:59:33 UTC) #4
Leaf
PTAL. https://codereview.chromium.org/1323513005/diff/1/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1323513005/diff/1/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1218 pkg/analyzer/lib/src/generated/static_type_analyzer.dart:1218: var typeArguments = type.typeArguments; On 2015/08/28 20:59:33, Brian ...
5 years, 3 months ago (2015-09-01 21:21:02 UTC) #5
Paul Berry
lgtm assuming null-aware operator issue is addressed. https://codereview.chromium.org/1323513005/diff/60001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1323513005/diff/60001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1421 pkg/analyzer/lib/src/generated/static_type_analyzer.dart:1421: return _find(type.superclass) ...
5 years, 3 months ago (2015-09-01 21:34:01 UTC) #6
Brian Wilkerson
LGTM https://codereview.chromium.org/1323513005/diff/1/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1323513005/diff/1/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1243 pkg/analyzer/lib/src/generated/static_type_analyzer.dart:1243: var parent = node.parent as ForEachStatement; > As ...
5 years, 3 months ago (2015-09-01 21:37:29 UTC) #7
Leaf
PTAL. Eliminated ??, added test for "await for", and made _findIteratedType defensive against cycles in ...
5 years, 3 months ago (2015-09-01 23:11:32 UTC) #8
Paul Berry
https://codereview.chromium.org/1323513005/diff/80001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): https://codereview.chromium.org/1323513005/diff/80001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart#newcode1403 pkg/analyzer/lib/src/generated/static_type_analyzer.dart:1403: HashSet<DartType> visitedTypes = new HashSet<DartType>(); visitedTypes should be a ...
5 years, 3 months ago (2015-09-01 23:20:20 UTC) #9
Brian Wilkerson
LGTM
5 years, 3 months ago (2015-09-01 23:21:33 UTC) #10
Leaf
One more once? Changed cycle detection over to use class elements. https://codereview.chromium.org/1323513005/diff/80001/pkg/analyzer/lib/src/generated/static_type_analyzer.dart File pkg/analyzer/lib/src/generated/static_type_analyzer.dart (right): ...
5 years, 3 months ago (2015-09-01 23:50:25 UTC) #11
Paul Berry
lgtm
5 years, 3 months ago (2015-09-02 00:04:04 UTC) #12
Leaf
5 years, 3 months ago (2015-09-02 00:38:05 UTC) #13
Message was sent while issue was closed.
Committed patchset #6 (id:100001) manually as
f90c09df4822f95bfd4c4e239bd0f139d8c31457 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698