Samir Jindel uploaded patch set #4 to this 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.
--
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.
I've updated the commit message. Please let me know if anything is still unclear.