Re: Change in dart/sdk[master]: Revert "Revert "Revert "Revert "Fix incorrect handling of NSM forward...

6 views
Skip to first unread message

Dan Grove

unread,
May 9, 2018, 12:25:30 PM5/9/18
to Samir Jindel, Alexander Aprelev, vm-...@dartlang.org, Kevin Millikin, Dmitry Stefantsov, Jens Johansen, Matan Lurey, Vyacheslav Egorov, dart-fe-te...@google.com, rev...@dartlang.org, Karl Klose, Jennifer Messerly
At a high level, can we get some sort of comment about what's going on in this changes?

revert "revert "revert "revert "..."

is hard to understand

On Wed, May 9, 2018 at 4:58 AM 'Samir Jindel (Gerrit)' via Dart Code Reviews <rev...@dartlang.org> wrote:

Samir Jindel uploaded patch set #4 to this change.

View Change

Revert "Revert "Revert "Revert "Fix incorrect handling of NSM forwarders and pull all logic into CFE.""""

This reverts commit 2765fcf2aecd3841d082fedaeafc00a73a965f8c.

Failures on precompiler bots are fixed in Patchset 2.
(https://logs.chromium.org/v/?s=chromium%2Fbb%2Fclient.dart%2Fvm-kernel-precomp-linux-debug-x64-5-8-be%2F1116%2F%2B%2Frecipes%2Fsteps%2Fvm_strong_tests%2F0%2Fstdout

According to discussion on #33031 we will be able to re-land this soon without breaking Mockito.

Change-Id: If1b7fe4cf6da5ef38f330e1ad226121bcfc958a1
---
M pkg/front_end/lib/src/fasta/kernel/body_builder.dart
M pkg/front_end/lib/src/fasta/kernel/kernel_class_builder.dart
M pkg/front_end/lib/src/fasta/source/source_loader.dart
M pkg/front_end/testcases/argument_mismatch.dart.direct.expect
M pkg/front_end/testcases/argument_mismatch.dart.direct.transformed.expect
M pkg/front_end/testcases/expression/class_invalid_static.expression.yaml.expect
M pkg/front_end/testcases/expression/class_invalid_static_setter.expression.yaml.expect
M pkg/front_end/testcases/expression/class_static2.expression.yaml.expect
M pkg/front_end/testcases/expression/invalid.expression.yaml.expect
M pkg/front_end/testcases/expression/lib_nonreference.expression.yaml.expect
M pkg/front_end/testcases/expression/lib_nonshown_ctor.expression.yaml.expect
M pkg/front_end/testcases/inference/future_then.dart.direct.expect
M pkg/front_end/testcases/inference/future_then.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then.dart.outline.expect
M pkg/front_end/testcases/inference/future_then.dart.strong.expect
M pkg/front_end/testcases/inference/future_then.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_2.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_2.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_2.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_2.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_2.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_3.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_3.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_3.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_3.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_3.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_4.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_4.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_4.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_4.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_4.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_5.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_5.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_5.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_5.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_5.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_6.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_6.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_6.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_6.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_6.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_conditional.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_conditional.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_conditional.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_2.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_conditional_2.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_2.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_conditional_2.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_conditional_2.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_3.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_conditional_3.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_3.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_conditional_3.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_conditional_3.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_4.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_conditional_4.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_4.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_conditional_4.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_conditional_4.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_5.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_conditional_5.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_5.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_conditional_5.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_conditional_5.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_6.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_conditional_6.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_conditional_6.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_conditional_6.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_conditional_6.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_ifNull.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_ifNull.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_ifNull.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_ifNull.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_ifNull.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_upwards.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_upwards.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_upwards.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_upwards.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_upwards.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_upwards_2.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_upwards_2.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_upwards_2.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_upwards_2.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_upwards_2.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_then_upwards_3.dart.direct.expect
M pkg/front_end/testcases/inference/future_then_upwards_3.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_then_upwards_3.dart.outline.expect
M pkg/front_end/testcases/inference/future_then_upwards_3.dart.strong.expect
M pkg/front_end/testcases/inference/future_then_upwards_3.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_union_async_conditional.dart.direct.expect
M pkg/front_end/testcases/inference/future_union_async_conditional.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_union_async_conditional.dart.outline.expect
M pkg/front_end/testcases/inference/future_union_async_conditional.dart.strong.expect
M pkg/front_end/testcases/inference/future_union_async_conditional.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_union_async_conditional_2.dart.direct.expect
M pkg/front_end/testcases/inference/future_union_async_conditional_2.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_union_async_conditional_2.dart.outline.expect
M pkg/front_end/testcases/inference/future_union_async_conditional_2.dart.strong.expect
M pkg/front_end/testcases/inference/future_union_async_conditional_2.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards.dart.direct.expect
M pkg/front_end/testcases/inference/future_union_downwards.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards.dart.outline.expect
M pkg/front_end/testcases/inference/future_union_downwards.dart.strong.expect
M pkg/front_end/testcases/inference/future_union_downwards.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards_2.dart.direct.expect
M pkg/front_end/testcases/inference/future_union_downwards_2.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards_2.dart.outline.expect
M pkg/front_end/testcases/inference/future_union_downwards_2.dart.strong.expect
M pkg/front_end/testcases/inference/future_union_downwards_2.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards_3.dart.direct.expect
M pkg/front_end/testcases/inference/future_union_downwards_3.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards_3.dart.outline.expect
M pkg/front_end/testcases/inference/future_union_downwards_3.dart.strong.expect
M pkg/front_end/testcases/inference/future_union_downwards_3.dart.strong.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards_4.dart.direct.expect
M pkg/front_end/testcases/inference/future_union_downwards_4.dart.direct.transformed.expect
M pkg/front_end/testcases/inference/future_union_downwards_4.dart.outline.expect
M pkg/front_end/testcases/inference/future_union_downwards_4.dart.strong.expect
M pkg/front_end/testcases/inference/future_union_downwards_4.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/abstract_interface_nsm_inherited.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/abstract_interface_nsm_inherited.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/abstract_interface_nsm_inherited.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/abstract_interface_nsm_inherited.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/abstract_interface_nsm_inherited.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_concrete.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_concrete.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_concrete.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_concrete.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_concrete.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_nsm.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_nsm.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_nsm.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_nsm.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/interface_with_nsm.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/no_dup_from_mixin.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/no_dup_from_mixin.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/no_dup_from_mixin.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/no_dup_from_mixin.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/no_dup_from_mixin.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_inherited.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_inherited.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_inherited.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_inherited.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_inherited.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_mixed_in.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_mixed_in.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_mixed_in.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_mixed_in.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/nsm_mixed_in.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/private.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/private.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/private.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/private.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/private.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/private_same.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/private_same.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/private_same.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/private_same.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/private_same.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/same.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/same.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/same.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/same.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/same.dart.strong.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/subst_on_forwarder.dart.direct.expect
M pkg/front_end/testcases/no_such_method_forwarders/subst_on_forwarder.dart.direct.transformed.expect
M pkg/front_end/testcases/no_such_method_forwarders/subst_on_forwarder.dart.outline.expect
M pkg/front_end/testcases/no_such_method_forwarders/subst_on_forwarder.dart.strong.expect
M pkg/front_end/testcases/no_such_method_forwarders/subst_on_forwarder.dart.strong.transformed.expect
M pkg/front_end/testcases/rasta/static.dart.direct.expect
M pkg/front_end/testcases/rasta/static.dart.direct.transformed.expect
M pkg/front_end/testcases/rasta/unresolved_for_in.dart.direct.expect
M pkg/front_end/testcases/rasta/unresolved_for_in.dart.direct.transformed.expect
M pkg/front_end/testcases/regress/issue_31299.dart.direct.expect
M pkg/front_end/testcases/regress/issue_31299.dart.direct.transformed.expect
M pkg/front_end/testcases/regress/issue_31299.dart.strong.expect
M pkg/kernel/lib/ast.dart
M pkg/kernel/lib/core_types.dart
M pkg/kernel/lib/target/vm.dart
M pkg/vm/testcases/transformations/type_flow/transformer/no_such_method.dart.expect
M runtime/vm/compiler/frontend/kernel_binary_flowgraph.h
M runtime/vm/kernel_loader.cc
M tests/corelib_2/map_unmodifiable_cast_test.dart
M tests/language_2/language_2_dartdevc.status
M tests/language_2/nosuchmethod_forwarding/nosuchmethod_forwarding_arguments_test.dart
187 files changed, 1,223 insertions(+), 632 deletions(-)

To view, visit change 54401. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: sdk
Gerrit-Branch: master
Gerrit-Change-Id: If1b7fe4cf6da5ef38f330e1ad226121bcfc958a1
Gerrit-Change-Number: 54401
Gerrit-PatchSet: 4
Gerrit-Owner: Samir Jindel <sji...@google.com>
Gerrit-Reviewer: Dmitry Stefantsov <dmit...@google.com>
Gerrit-Reviewer: Samir Jindel <sji...@google.com>
Gerrit-CC: Alexander Aprelev <a...@google.com>
Gerrit-CC: Jenny Messerly <jmes...@google.com>
Gerrit-CC: Jens Johansen <je...@google.com>
Gerrit-CC: Karl Klose <karl...@google.com>
Gerrit-CC: Kevin Millikin <kmil...@google.com>
Gerrit-CC: Vyacheslav Egorov <veg...@google.com>
Gerrit-MessageType: newpatchset

--
You received this message because you are subscribed to the Google Groups "Dart Code Reviews" group.
To unsubscribe from this group and stop receiving emails from it, send an email to reviews+u...@dartlang.org.

Dan Grove

unread,
May 9, 2018, 6:49:24 PM5/9/18
to Samir Jindel, Alexander Aprelev, vm-...@dartlang.org, Kevin Millikin, Dmitry Stefantsov, Jens Johansen, Matan Lurey, Vyacheslav Egorov, dart-fe-te...@google.com, rev...@dartlang.org, Karl Klose, Jennifer Messerly
Thanks! That make it clear to me.

On Wed, May 9, 2018 at 3:47 PM Samir Jindel <sji...@google.com> wrote:
I've updated the commit message. Please let me know if anything is still unclear.
Reply all
Reply to author
Forward
0 new messages