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

Issue 2996063002: Implement type arguments in redirecting factories.

Created:
3 years, 4 months ago by ahe
Modified:
3 years, 3 months ago
CC:
reviews_dartlang.org, dart-fe-team+reviews_google.com
Target Ref:
refs/heads/master
Visibility:
Public.

Description

Implement type arguments in redirecting factories.

Patch Set 1 #

Patch Set 2 : Add test case. #

Patch Set 3 : Merged with 6eff945874618a5a59cf62eb6d9356c6774abd3c. #

Total comments: 7

Patch Set 4 : Merged with 36ddbead91b9c8eacd0b50eabbabe1c77d41a1e9. #

Patch Set 5 : Address Johnni's comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+450 lines, -94 lines) Patch
M pkg/front_end/lib/src/fasta/builder/constructor_reference_builder.dart View 1 3 chunks +68 lines, -16 lines 0 comments Download
M pkg/front_end/lib/src/fasta/fasta_codes_generated.dart View 1 2 3 4 chunks +41 lines, -2 lines 0 comments Download
M pkg/front_end/lib/src/fasta/kernel/body_builder.dart View 1 2 3 4 3 chunks +44 lines, -19 lines 0 comments Download
M pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart View 1 2 chunks +11 lines, -3 lines 0 comments Download
M pkg/front_end/lib/src/fasta/kernel/kernel_named_type_builder.dart View 1 2 chunks +8 lines, -0 lines 0 comments Download
M pkg/front_end/lib/src/fasta/kernel/redirecting_factory_body.dart View 1 2 3 4 2 chunks +100 lines, -31 lines 0 comments Download
M pkg/front_end/messages.yaml View 1 2 3 1 chunk +7 lines, -1 line 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_redirecting_factory.dart.direct.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_redirecting_factory.dart.strong.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_redirecting_factory_to_factory.dart.direct.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_redirecting_factory_to_factory.dart.outline.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_redirecting_factory_to_factory.dart.strong.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/rasta/class_hierarchy.dart.outline.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/rasta/generic_factory.dart.outline.expect View 1 1 chunk +5 lines, -5 lines 0 comments Download
M pkg/front_end/testcases/rasta/issue_000044.dart.outline.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/rasta/issue_000067.dart.direct.expect View 1 2 chunks +2 lines, -2 lines 0 comments Download
M pkg/front_end/testcases/rasta/issue_000067.dart.outline.expect View 1 2 chunks +2 lines, -2 lines 0 comments Download
M pkg/front_end/testcases/redirecting_constructor.dart.direct.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/redirecting_constructor.dart.outline.expect View 1 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/redirecting_factory.dart.outline.expect View 1 2 chunks +4 lines, -4 lines 0 comments Download
A pkg/front_end/testcases/redirecting_factory_type_arguments.dart View 1 1 chunk +32 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/redirecting_factory_type_arguments.dart.direct.expect View 1 1 chunk +42 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/redirecting_factory_type_arguments.dart.outline.expect View 1 1 chunk +33 lines, -0 lines 0 comments Download
A pkg/front_end/testcases/redirecting_factory_type_arguments.dart.strong.expect View 1 1 chunk +42 lines, -0 lines 0 comments Download

Messages

Total messages: 5 (1 generated)
ahe
3 years, 3 months ago (2017-08-29 12:03:50 UTC) #2
Johnni Winther
lgtm https://codereview.chromium.org/2996063002/diff/40001/pkg/front_end/lib/src/fasta/kernel/body_builder.dart File pkg/front_end/lib/src/fasta/kernel/body_builder.dart (right): https://codereview.chromium.org/2996063002/diff/40001/pkg/front_end/lib/src/fasta/kernel/body_builder.dart#newcode2334 pkg/front_end/lib/src/fasta/kernel/body_builder.dart:2334: "Cyclic definition of factory '${debugName(type.name, name)}'.", Long line. ...
3 years, 3 months ago (2017-08-30 12:18:46 UTC) #3
ahe
Thank you, Johnni! https://codereview.chromium.org/2996063002/diff/40001/pkg/front_end/lib/src/fasta/kernel/body_builder.dart File pkg/front_end/lib/src/fasta/kernel/body_builder.dart (right): https://codereview.chromium.org/2996063002/diff/40001/pkg/front_end/lib/src/fasta/kernel/body_builder.dart#newcode2334 pkg/front_end/lib/src/fasta/kernel/body_builder.dart:2334: "Cyclic definition of factory '${debugName(type.name, name)}'.", ...
3 years, 3 months ago (2017-08-30 15:07:22 UTC) #4
ahe
3 years, 3 months ago (2017-08-30 15:13:09 UTC) #5
https://codereview.chromium.org/2996063002/diff/40001/pkg/front_end/lib/src/f...
File pkg/front_end/lib/src/fasta/kernel/body_builder.dart (right):

https://codereview.chromium.org/2996063002/diff/40001/pkg/front_end/lib/src/f...
pkg/front_end/lib/src/fasta/kernel/body_builder.dart:2342:
arguments.types.clear();
On 2017/08/30 15:07:22, ahe wrote:
> On 2017/08/30 12:18:46, Johnni Winther wrote:
> > Has the type argument mismatch been reported?
> 
> No. I've added a TODO for that. I would like this logic to be shared with
> buildStaticInvocation.

And filed this bug: https://github.com/dart-lang/sdk/issues/30579

Powered by Google App Engine
This is Rietveld 408576698