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

Issue 2916533003: Set return type of factory constructors properly. (Closed)

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

Description

Set return type of factory constructors properly. And remove workarounds from type inference logic.

Patch Set 1 #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+41 lines, -49 lines) Patch
M pkg/front_end/lib/src/fasta/kernel/body_builder.dart View 1 chunk +0 lines, -3 lines 1 comment Download
M pkg/front_end/lib/src/fasta/kernel/kernel_procedure_builder.dart View 3 chunks +20 lines, -1 line 1 comment Download
M pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart View 1 chunk +1 line, -22 lines 1 comment Download
M pkg/front_end/test/fasta/outline.status View 1 chunk +0 lines, -3 lines 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_factory.dart.strong.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_factory_calls_constructor.dart.strong.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_named_factory.dart.strong.expect View 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 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 2 chunks +2 lines, -2 lines 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_redirecting_factory_to_factory.dart.outline.expect View 1 chunk +2 lines, -2 lines 0 comments Download
M pkg/front_end/testcases/inference/constructors_infer_from_arguments_redirecting_factory_to_factory.dart.strong.expect View 2 chunks +2 lines, -2 lines 0 comments Download
M pkg/front_end/testcases/inference/downwards_inference_for_each.dart.strong.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/inference/downwards_inference_yield_yield_star.dart.strong.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/rasta/class_hierarchy.dart.outline.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/rasta/issue_000002.dart.direct.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/redirecting_constructor.dart.direct.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/redirecting_constructor.dart.outline.expect View 1 chunk +1 line, -1 line 0 comments Download
M pkg/front_end/testcases/redirecting_factory.dart.outline.expect View 2 chunks +4 lines, -4 lines 0 comments Download

Messages

Total messages: 4 (1 generated)
Paul Berry
3 years, 6 months ago (2017-05-31 17:51:32 UTC) #2
ahe
Thank you, Paul. It looks like the final CL will be an amalgamation of our ...
3 years, 6 months ago (2017-06-01 09:10:09 UTC) #3
Paul Berry
3 years, 6 months ago (2017-06-01 13:03:47 UTC) #4
On 2017/06/01 09:10:09, ahe wrote:
> Thank you, Paul. It looks like the final CL will be an amalgamation of our two
> CLs, this and 2917853002.
> 
> I think you can close this now, but this was very helpful!
> 
>
https://codereview.chromium.org/2916533003/diff/1/pkg/front_end/lib/src/fasta...
> File pkg/front_end/lib/src/fasta/kernel/body_builder.dart (left):
> 
>
https://codereview.chromium.org/2916533003/diff/1/pkg/front_end/lib/src/fasta...
> pkg/front_end/lib/src/fasta/kernel/body_builder.dart:487: }
> I have to "steal" this :-)
> 
>
https://codereview.chromium.org/2916533003/diff/1/pkg/front_end/lib/src/fasta...
> File pkg/front_end/lib/src/fasta/kernel/kernel_procedure_builder.dart (right):
> 
>
https://codereview.chromium.org/2916533003/diff/1/pkg/front_end/lib/src/fasta...
> pkg/front_end/lib/src/fasta/kernel/kernel_procedure_builder.dart:128: if (kind
> == ProcedureKind.Factory) {
> This I have a different solution for.
> 
>
https://codereview.chromium.org/2916533003/diff/1/pkg/front_end/lib/src/fasta...
> File pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart (right):
> 
>
https://codereview.chromium.org/2916533003/diff/1/pkg/front_end/lib/src/fasta...
> pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart:40: return
> constructor.function.returnType;
> I also have to "steal" all these changes :-)

Thanks for "stealing" my changes--it saved me a bunch of effort :)

I looked over your CL and I agree that we don't need this one anymore. 
Closing...

Powered by Google App Engine
This is Rietveld 408576698