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

Issue 2092873002: fix #25794, infer parameter type from default value (Closed)

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

Description

Patch Set 1 #

Total comments: 7

Patch Set 2 : fix element summaries, still need AST ones #

Patch Set 3 : Merge remote-tracking branch 'origin/master' into 25794_param_infer #

Unified diffs Side-by-side diffs Delta from patch set Stats (+75 lines, -28 lines) Patch
M pkg/analyzer/lib/src/generated/resolver.dart View 1 2 4 chunks +20 lines, -3 lines 0 comments Download
M pkg/analyzer/lib/src/summary/summarize_elements.dart View 1 1 chunk +6 lines, -2 lines 0 comments Download
M pkg/analyzer/test/src/summary/resynthesize_ast_test.dart View 1 1 chunk +6 lines, -0 lines 0 comments Download
M pkg/analyzer/test/src/summary/resynthesize_test.dart View 1 3 chunks +15 lines, -22 lines 0 comments Download
M pkg/analyzer/test/src/task/strong/inferred_type_test.dart View 1 2 chunks +28 lines, -1 line 0 comments Download

Messages

Total messages: 12 (3 generated)
Jennifer Messerly
https://codereview.chromium.org/2092873002/diff/1/pkg/analyzer/lib/src/generated/resolver.dart File pkg/analyzer/lib/src/generated/resolver.dart (right): https://codereview.chromium.org/2092873002/diff/1/pkg/analyzer/lib/src/generated/resolver.dart#newcode6309 pkg/analyzer/lib/src/generated/resolver.dart:6309: InferenceContext.setType(node.defaultValue, element.type); I verified with an assert that `node.parameter.element ...
4 years, 6 months ago (2016-06-23 20:14:46 UTC) #2
Leaf
lgtm https://codereview.chromium.org/2092873002/diff/1/pkg/analyzer/lib/src/generated/resolver.dart File pkg/analyzer/lib/src/generated/resolver.dart (right): https://codereview.chromium.org/2092873002/diff/1/pkg/analyzer/lib/src/generated/resolver.dart#newcode6321 pkg/analyzer/lib/src/generated/resolver.dart:6321: if (!type.isBottom && !type.isDynamic) { Are we quite ...
4 years, 6 months ago (2016-06-23 22:21:17 UTC) #3
Jennifer Messerly
Hi Paul, wanted to get your thoughts on this change. I've fixed a bug you ...
4 years, 6 months ago (2016-06-24 18:33:59 UTC) #5
Paul Berry
On 2016/06/24 18:33:59, John Messerly wrote: > Hi Paul, wanted to get your thoughts on ...
4 years, 6 months ago (2016-06-24 18:48:20 UTC) #6
Leaf
still lgtm https://codereview.chromium.org/2092873002/diff/1/pkg/analyzer/lib/src/generated/resolver.dart File pkg/analyzer/lib/src/generated/resolver.dart (right): https://codereview.chromium.org/2092873002/diff/1/pkg/analyzer/lib/src/generated/resolver.dart#newcode6321 pkg/analyzer/lib/src/generated/resolver.dart:6321: if (!type.isBottom && !type.isDynamic) { On 2016/06/24 ...
4 years, 6 months ago (2016-06-24 21:48:53 UTC) #7
Jennifer Messerly
Thanks! I'll take a shot at landing this but will keep working on the AST ...
4 years, 6 months ago (2016-06-24 22:25:15 UTC) #8
Jennifer Messerly
Committed patchset #3 (id:40001) manually as d43f6870b3a47fab5da3262fe28036af7f5c6bf5 (presubmit successful).
4 years, 6 months ago (2016-06-24 22:29:13 UTC) #10
Jennifer Messerly
Hmmm, this change regressed https://github.com/dart-lang/sdk/issues/26785, apparently Dart allows cyclic default values(!) despite not supporting cyclic ...
4 years, 5 months ago (2016-06-28 19:50:07 UTC) #11
Paul Berry
4 years, 5 months ago (2016-06-28 21:18:33 UTC) #12
Message was sent while issue was closed.
On 2016/06/28 19:50:07, John Messerly wrote:
> Hmmm, this change regressed https://github.com/dart-lang/sdk/issues/26785,
> apparently Dart allows cyclic default values(!) despite not supporting cyclic
> constants generally.
> 
> Thoughts? Maybe I should revert this.

Oh, that's unfortunate.

In the long run I think we could address this situation similarly to how we
address circularities among toplevel variables (just let everything involved in
the circularity be dynamic).  But if that's hard to achieve in the short term I
would be ok with reverting the CL for now.

Powered by Google App Engine
This is Rietveld 408576698