From 8b1b7cc0d93c0978c6c3282598f4cee44cd25a0c Mon Sep 17 00:00:00 2001 From: Johnni Winther Date: Mon, 7 Mar 2022 12:31:03 +0000 Subject: [PATCH] [cfe] Remove language version from testcases/general (Part 4 of ?) This in preparation for enabling all bleeding edge experimental features in testcases/general to get early feedback on how new features affect existing code. Change-Id: I6c49f3d4980f07934c91257a999fe42c70b07482 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/235600 Reviewed-by: Chloe Stefantsova Commit-Queue: Johnni Winther --- .../testcases/general/issue129167943.dart | 2 - ...issue129167943.dart.textual_outline.expect | 1 - ...67943.dart.textual_outline_modelled.expect | 1 - .../general/issue129167943.dart.weak.expect | 210 ++-------- .../issue129167943.dart.weak.modular.expect | 210 ++-------- .../issue129167943.dart.weak.outline.expect | 210 ++-------- ...ssue129167943.dart.weak.transformed.expect | 210 ++-------- .../testcases/general/issue31767.dart | 2 +- .../issue31767.dart.textual_outline.expect | 1 - ...31767.dart.textual_outline_modelled.expect | 1 - .../testcases/general/issue31767_lib.dart | 2 +- .../testcases/general/issue34515.dart | 2 +- .../issue34515.dart.textual_outline.expect | 1 - ...34515.dart.textual_outline_modelled.expect | 1 - .../general/issue34515.dart.weak.expect | 34 +- .../issue34515.dart.weak.modular.expect | 34 +- .../issue34515.dart.weak.outline.expect | 30 +- .../issue34515.dart.weak.transformed.expect | 34 +- .../testcases/general/issue34515_lib1.dart | 2 +- .../testcases/general/issue34515_lib2.dart | 2 +- .../testcases/general/issue34714.dart | 2 +- .../issue34714.dart.textual_outline.expect | 1 - ...34714.dart.textual_outline_modelled.expect | 1 - .../general/issue34714.dart.weak.expect | 34 +- .../issue34714.dart.weak.modular.expect | 34 +- .../issue34714.dart.weak.outline.expect | 34 +- .../issue34714.dart.weak.transformed.expect | 34 +- .../testcases/general/issue34899.dart | 6 +- .../issue34899.dart.textual_outline.expect | 5 +- ...34899.dart.textual_outline_modelled.expect | 5 +- .../general/issue34899.dart.weak.expect | 72 +--- .../issue34899.dart.weak.modular.expect | 72 +--- .../issue34899.dart.weak.outline.expect | 66 +-- .../issue34899.dart.weak.transformed.expect | 72 +--- .../testcases/general/issue35875.dart | 6 +- .../issue35875.dart.textual_outline.expect | 5 +- ...35875.dart.textual_outline_modelled.expect | 5 +- .../general/issue35875.dart.weak.expect | 16 +- .../issue35875.dart.weak.modular.expect | 16 +- .../issue35875.dart.weak.outline.expect | 16 +- .../issue35875.dart.weak.transformed.expect | 16 +- .../testcases/general/issue37027.dart | 3 +- .../testcases/general/issue37381.dart | 2 +- .../issue37381.dart.textual_outline.expect | 1 - ...37381.dart.textual_outline_modelled.expect | 1 - .../general/issue37381.dart.weak.expect | 24 +- .../issue37381.dart.weak.modular.expect | 24 +- .../issue37381.dart.weak.outline.expect | 18 +- .../issue37381.dart.weak.transformed.expect | 24 +- .../testcases/general/issue37753.dart | 2 - .../issue37753.dart.textual_outline.expect | 1 - ...37753.dart.textual_outline_modelled.expect | 1 - .../general/issue37753.dart.weak.expect | 10 +- .../issue37753.dart.weak.modular.expect | 10 +- .../issue37753.dart.weak.outline.expect | 4 +- .../issue37753.dart.weak.transformed.expect | 26 +- .../testcases/general/issue37776.dart | 2 +- .../issue37776.dart.textual_outline.expect | 1 - ...37776.dart.textual_outline_modelled.expect | 1 - .../general/issue37776.dart.weak.expect | 26 +- .../issue37776.dart.weak.modular.expect | 26 +- .../issue37776.dart.weak.outline.expect | 26 +- .../issue37776.dart.weak.transformed.expect | 26 +- .../testcases/general/issue38812.dart | 2 +- .../issue38812.dart.textual_outline.expect | 1 - ...38812.dart.textual_outline_modelled.expect | 1 - .../general/issue38812.dart.weak.expect | 20 +- .../issue38812.dart.weak.modular.expect | 20 +- .../issue38812.dart.weak.outline.expect | 18 +- .../issue38812.dart.weak.transformed.expect | 20 +- .../testcases/general/issue38938.dart | 6 +- .../issue38938.dart.textual_outline.expect | 5 +- ...38938.dart.textual_outline_modelled.expect | 5 +- .../general/issue38938.dart.weak.expect | 30 +- .../issue38938.dart.weak.modular.expect | 30 +- .../issue38938.dart.weak.outline.expect | 30 +- .../issue38938.dart.weak.transformed.expect | 30 +- .../testcases/general/issue38943.dart | 2 +- .../issue38943.dart.textual_outline.expect | 1 - ...38943.dart.textual_outline_modelled.expect | 1 - .../general/issue38943.dart.weak.expect | 22 +- .../issue38943.dart.weak.modular.expect | 22 +- .../issue38943.dart.weak.outline.expect | 18 +- .../issue38943.dart.weak.transformed.expect | 22 +- .../testcases/general/issue38944.dart | 2 +- .../issue38944.dart.textual_outline.expect | 1 - ...38944.dart.textual_outline_modelled.expect | 1 - .../general/issue38944.dart.weak.expect | 34 +- .../issue38944.dart.weak.modular.expect | 34 +- .../issue38944.dart.weak.outline.expect | 34 +- .../issue38944.dart.weak.transformed.expect | 34 +- .../testcases/general/issue38961.dart | 2 +- .../issue38961.dart.textual_outline.expect | 1 - ...38961.dart.textual_outline_modelled.expect | 1 - .../general/issue38961.dart.weak.expect | 14 +- .../issue38961.dart.weak.modular.expect | 14 +- .../issue38961.dart.weak.outline.expect | 14 +- .../issue38961.dart.weak.transformed.expect | 14 +- .../testcases/general/issue39344.dart | 6 +- .../issue39344.dart.textual_outline.expect | 5 +- ...39344.dart.textual_outline_modelled.expect | 15 +- .../general/issue39344.dart.weak.expect | 88 ++-- .../issue39344.dart.weak.modular.expect | 88 ++-- .../issue39344.dart.weak.outline.expect | 44 +- .../issue39344.dart.weak.transformed.expect | 88 ++-- .../testcases/general/issue39421.dart | 2 +- .../issue39421.dart.textual_outline.expect | 1 - ...39421.dart.textual_outline_modelled.expect | 1 - .../general/issue39421.dart.weak.expect | 44 +- .../issue39421.dart.weak.modular.expect | 44 +- .../issue39421.dart.weak.outline.expect | 44 +- .../issue39421.dart.weak.transformed.expect | 44 +- .../testcases/general/issue39817.dart | 2 + .../testcases/general/issue40242.dart | 2 +- .../issue40242.dart.textual_outline.expect | 1 - ...40242.dart.textual_outline_modelled.expect | 1 - .../general/issue40242.dart.weak.expect | 24 +- .../issue40242.dart.weak.modular.expect | 24 +- .../issue40242.dart.weak.outline.expect | 20 +- .../issue40242.dart.weak.transformed.expect | 24 +- .../testcases/general/issue40428.dart | 2 +- .../issue40428.dart.textual_outline.expect | 1 - ...40428.dart.textual_outline_modelled.expect | 1 - .../general/issue40428.dart.weak.expect | 50 +-- .../issue40428.dart.weak.modular.expect | 50 +-- .../issue40428.dart.weak.outline.expect | 46 +-- .../issue40428.dart.weak.transformed.expect | 50 +-- .../testcases/general/issue40662.dart | 4 +- .../testcases/general/issue40744.dart | 2 +- .../issue40744.dart.textual_outline.expect | 1 - ...40744.dart.textual_outline_modelled.expect | 1 - .../general/issue40744.dart.weak.expect | 8 +- .../issue40744.dart.weak.modular.expect | 8 +- .../issue40744.dart.weak.outline.expect | 6 +- .../issue40744.dart.weak.transformed.expect | 8 +- .../testcases/general/issue40982.dart | 2 +- .../issue40982.dart.textual_outline.expect | 1 - ...40982.dart.textual_outline_modelled.expect | 1 - .../general/issue40982.dart.weak.expect | 62 +-- .../issue40982.dart.weak.modular.expect | 62 +-- .../issue40982.dart.weak.outline.expect | 62 +-- .../issue40982.dart.weak.transformed.expect | 62 +-- .../testcases/general/issue41070.dart | 2 +- .../issue41070.dart.textual_outline.expect | 1 - ...41070.dart.textual_outline_modelled.expect | 1 - .../general/issue41070.dart.weak.expect | 34 +- .../issue41070.dart.weak.modular.expect | 34 +- .../issue41070.dart.weak.outline.expect | 30 +- .../issue41070.dart.weak.transformed.expect | 34 +- .../testcases/general/issue41210a.dart | 2 - .../issue41210a.dart.textual_outline.expect | 1 - ...1210a.dart.textual_outline_modelled.expect | 1 - .../general/issue41210a.dart.weak.expect | 148 ++----- .../issue41210a.dart.weak.modular.expect | 148 ++----- .../issue41210a.dart.weak.outline.expect | 146 ++----- .../general/issue41210a_no_error.dart | 2 - ...1210a_no_error.dart.textual_outline.expect | 1 - ...error.dart.textual_outline_modelled.expect | 1 - .../issue41210a_no_error.dart.weak.expect | 120 +----- ...ue41210a_no_error.dart.weak.modular.expect | 120 +----- ...ue41210a_no_error.dart.weak.outline.expect | 120 +----- ...210a_no_error.dart.weak.transformed.expect | 120 +----- .../testcases/general/issue42610.dart | 2 + .../general/issue42610.dart.weak.expect | 18 +- .../issue42610.dart.weak.modular.expect | 18 +- .../issue42610.dart.weak.transformed.expect | 18 +- .../testcases/general/issue42610b.dart | 13 + .../issue42610b.dart.textual_outline.expect | 2 + ...2610b.dart.textual_outline_modelled.expect | 2 + .../general/issue42610b.dart.weak.expect | 40 ++ .../issue42610b.dart.weak.modular.expect | 40 ++ .../issue42610b.dart.weak.outline.expect | 7 + .../issue42610b.dart.weak.transformed.expect | 40 ++ .../testcases/general/issue42615.dart | 2 + .../testcases/general/issue42694.dart | 2 +- .../issue42694.dart.textual_outline.expect | 1 - ...42694.dart.textual_outline_modelled.expect | 1 - .../general/issue42694.dart.weak.expect | 32 +- .../issue42694.dart.weak.modular.expect | 32 +- .../issue42694.dart.weak.outline.expect | 32 +- .../issue42694.dart.weak.transformed.expect | 32 +- .../testcases/general/issue42997.dart | 2 +- .../issue42997.dart.textual_outline.expect | 1 - .../general/issue42997.dart.weak.expect | 16 +- .../issue42997.dart.weak.modular.expect | 16 +- .../issue42997.dart.weak.outline.expect | 16 +- .../issue42997.dart.weak.transformed.expect | 16 +- .../testcases/general/issue43290.dart | 4 +- .../issue43290.dart.textual_outline.expect | 3 +- ...43290.dart.textual_outline_modelled.expect | 3 +- .../general/issue43290.dart.weak.expect | 22 +- .../issue43290.dart.weak.modular.expect | 22 +- .../issue43290.dart.weak.outline.expect | 16 +- .../issue43290.dart.weak.transformed.expect | 22 +- .../testcases/general/issue43363.dart | 2 +- .../issue43363.dart.textual_outline.expect | 1 - .../general/issue43363.dart.weak.expect | 20 +- .../issue43363.dart.weak.modular.expect | 20 +- .../issue43363.dart.weak.outline.expect | 20 +- .../issue43363.dart.weak.transformed.expect | 20 +- .../testcases/general/issue43975.dart | 2 +- .../issue43975.dart.textual_outline.expect | 1 - ...43975.dart.textual_outline_modelled.expect | 1 - .../general/issue43975.dart.weak.expect | 2 +- .../issue43975.dart.weak.modular.expect | 2 +- .../issue43975.dart.weak.outline.expect | 2 +- .../issue43975.dart.weak.transformed.expect | 2 +- .../testcases/general/issue44347.dart | 2 - .../issue44347.dart.textual_outline.expect | 1 - ...44347.dart.textual_outline_modelled.expect | 1 - .../general/issue44347.dart.weak.expect | 13 +- .../issue44347.dart.weak.modular.expect | 13 +- .../issue44347.dart.weak.outline.expect | 2 +- .../issue44347.dart.weak.transformed.expect | 13 +- .../testcases/general/issue44476.dart | 2 +- .../issue44476.dart.textual_outline.expect | 1 - ...44476.dart.textual_outline_modelled.expect | 1 - .../general/issue44476.dart.weak.expect | 26 +- .../issue44476.dart.weak.modular.expect | 26 +- .../issue44476.dart.weak.outline.expect | 18 +- .../issue44476.dart.weak.transformed.expect | 26 +- .../testcases/general/issue44654.dart | 2 +- .../issue44654.dart.textual_outline.expect | 1 - ...44654.dart.textual_outline_modelled.expect | 1 - .../testcases/general/issue45598_2.dart | 4 +- .../issue45598_2.dart.textual_outline.expect | 1 - ...598_2.dart.textual_outline_modelled.expect | 1 - .../general/issue45598_2.dart.weak.expect | 8 +- .../issue45598_2.dart.weak.modular.expect | 8 +- .../issue45598_2.dart.weak.outline.expect | 4 +- .../issue45598_2.dart.weak.transformed.expect | 8 +- .../testcases/general/issue45660_2.dart | 12 + .../issue45660_2.dart.textual_outline.expect | 3 + ...660_2.dart.textual_outline_modelled.expect | 3 + .../general/issue45660_2.dart.weak.expect | 23 ++ .../issue45660_2.dart.weak.modular.expect | 23 ++ .../issue45660_2.dart.weak.outline.expect | 9 + .../issue45660_2.dart.weak.transformed.expect | 23 ++ .../testcases/general/issue47495.dart | 3 +- .../issue47495.dart.textual_outline.expect | 4 +- ...47495.dart.textual_outline_modelled.expect | 10 + .../general/issue47495.dart.weak.expect | 64 +-- .../issue47495.dart.weak.modular.expect | 64 +-- .../issue47495.dart.weak.outline.expect | 63 +-- .../issue47495.dart.weak.transformed.expect | 64 +-- pkg/front_end/testcases/general/literals.dart | 2 +- .../literals.dart.textual_outline.expect | 1 - ...erals.dart.textual_outline_modelled.expect | 1 - .../general/literals.dart.weak.expect | 6 +- .../general/literals.dart.weak.modular.expect | 6 +- .../general/literals.dart.weak.outline.expect | 2 +- .../literals.dart.weak.transformed.expect | 6 +- .../general/local_generic_function.dart | 2 +- ...neric_function.dart.textual_outline.expect | 1 - ...ction.dart.textual_outline_modelled.expect | 1 - .../local_generic_function.dart.weak.expect | 8 +- ..._generic_function.dart.weak.modular.expect | 8 +- ..._generic_function.dart.weak.outline.expect | 2 +- ...eric_function.dart.weak.transformed.expect | 8 +- .../general/long_chain_of_typedefs.dart | 2 +- ...in_of_typedefs.dart.textual_outline.expect | 1 - ...edefs.dart.textual_outline_modelled.expect | 1 - .../long_chain_of_typedefs.dart.weak.expect | 42 +- ...chain_of_typedefs.dart.weak.modular.expect | 42 +- ...chain_of_typedefs.dart.weak.outline.expect | 42 +- ...n_of_typedefs.dart.weak.transformed.expect | 42 +- .../testcases/general/magic_const.dart | 2 +- .../magic_const.dart.textual_outline.expect | 1 - ...const.dart.textual_outline_modelled.expect | 1 - .../general/magic_const.dart.weak.expect | 26 +- .../magic_const.dart.weak.modular.expect | 26 +- .../magic_const.dart.weak.outline.expect | 26 +- .../magic_const.dart.weak.transformed.expect | 26 +- .../testcases/general/main_declaration.dart | 2 + .../general/main_declaration_lib.dart | 2 + .../testcases/general/many_errors.dart | 2 + .../general/many_errors.dart.weak.expect | 32 +- .../many_errors.dart.weak.modular.expect | 32 +- .../many_errors.dart.weak.outline.expect | 14 +- .../many_errors.dart.weak.transformed.expect | 32 +- .../testcases/general/many_errors2.dart | 32 ++ .../many_errors2.dart.textual_outline.expect | 16 + .../general/many_errors2.dart.weak.expect | 109 +++++ .../many_errors2.dart.weak.modular.expect | 109 +++++ .../many_errors2.dart.weak.outline.expect | 62 +++ .../many_errors2.dart.weak.transformed.expect | 109 +++++ .../testcases/general/metadata_enum.dart | 2 +- .../metadata_enum.dart.textual_outline.expect | 1 - ..._enum.dart.textual_outline_modelled.expect | 1 - .../general/metadata_enum.dart.weak.expect | 25 +- .../metadata_enum.dart.weak.modular.expect | 25 +- .../metadata_enum.dart.weak.outline.expect | 25 +- ...metadata_enum.dart.weak.transformed.expect | 25 +- .../metadata_named_mixin_application.dart | 2 +- ...in_application.dart.textual_outline.expect | 1 - ...ation.dart.textual_outline_modelled.expect | 1 - ...a_named_mixin_application.dart.weak.expect | 28 +- ...mixin_application.dart.weak.modular.expect | 28 +- ...mixin_application.dart.weak.outline.expect | 28 +- ...n_application.dart.weak.transformed.expect | 28 +- ..._covariant_generic_type_check_opt_out.dart | 2 +- ..._check_opt_out.dart.textual_outline.expect | 2 +- ...t_out.dart.textual_outline_modelled.expect | 2 +- pkg/front_end/testcases/general/micro.dart | 2 +- .../general/micro.dart.textual_outline.expect | 1 - ...micro.dart.textual_outline_modelled.expect | 1 - .../testcases/general/micro.dart.weak.expect | 110 +---- .../general/micro.dart.weak.modular.expect | 110 +---- .../general/micro.dart.weak.outline.expect | 94 +---- .../micro.dart.weak.transformed.expect | 110 +---- .../testcases/general/minimum_int.dart | 1 - .../minimum_int.dart.textual_outline.expect | 1 - ...m_int.dart.textual_outline_modelled.expect | 1 - .../general/minimum_int.dart.weak.expect | 4 +- .../minimum_int.dart.weak.modular.expect | 4 +- .../minimum_int.dart.weak.outline.expect | 2 +- .../minimum_int.dart.weak.transformed.expect | 6 +- .../general/missing_constructor.dart | 2 +- ...ng_constructor.dart.textual_outline.expect | 1 - ...uctor.dart.textual_outline_modelled.expect | 1 - .../missing_constructor.dart.weak.expect | 50 +-- ...ssing_constructor.dart.weak.modular.expect | 50 +-- ...ssing_constructor.dart.weak.outline.expect | 50 +-- ...g_constructor.dart.weak.transformed.expect | 50 +-- .../testcases/general/missing_toplevel.dart | 6 +- ...ssing_toplevel.dart.textual_outline.expect | 5 +- ...level.dart.textual_outline_modelled.expect | 5 +- .../general/missing_toplevel.dart.weak.expect | 78 +--- .../missing_toplevel.dart.weak.modular.expect | 78 +--- .../missing_toplevel.dart.weak.outline.expect | 68 +--- ...sing_toplevel.dart.weak.transformed.expect | 80 +--- pkg/front_end/testcases/general/mixin.dart | 2 +- .../general/mixin.dart.textual_outline.expect | 1 - ...mixin.dart.textual_outline_modelled.expect | 1 - .../testcases/general/mixin.dart.weak.expect | 102 +---- .../general/mixin.dart.weak.modular.expect | 102 +---- .../general/mixin.dart.weak.outline.expect | 90 +---- .../mixin.dart.weak.transformed.expect | 104 +---- ...n_application_inferred_parameter_type.dart | 2 +- ...parameter_type.dart.textual_outline.expect | 1 - ..._type.dart.textual_outline_modelled.expect | 1 - ...n_inferred_parameter_type.dart.weak.expect | 32 +- ...ed_parameter_type.dart.weak.modular.expect | 32 +- ...ed_parameter_type.dart.weak.outline.expect | 30 +- ...arameter_type.dart.weak.transformed.expect | 32 +- .../general/mixin_application_lub.dart | 2 + .../general/mixin_application_lub_2.dart | 31 ++ ...lication_lub_2.dart.textual_outline.expect | 14 + ...lub_2.dart.textual_outline_modelled.expect | 15 + .../mixin_application_lub_2.dart.weak.expect | 48 +++ ...application_lub_2.dart.weak.modular.expect | 48 +++ ...application_lub_2.dart.weak.outline.expect | 40 ++ ...ication_lub_2.dart.weak.transformed.expect | 48 +++ .../general/mixin_application_override.dart | 2 +- ...ation_override.dart.textual_outline.expect | 1 - ...rride.dart.textual_outline_modelled.expect | 1 - ...ixin_application_override.dart.weak.expect | 134 ++---- ...lication_override.dart.weak.modular.expect | 134 ++---- ...lication_override.dart.weak.outline.expect | 134 ++---- .../testcases/general/mixin_conflicts.dart | 2 +- ...ixin_conflicts.dart.textual_outline.expect | 1 - ...licts.dart.textual_outline_modelled.expect | 1 - .../general/mixin_conflicts.dart.weak.expect | 104 +---- .../mixin_conflicts.dart.weak.modular.expect | 104 +---- .../mixin_conflicts.dart.weak.outline.expect | 104 +---- ...xin_conflicts.dart.weak.transformed.expect | 104 +---- ...ixin_constructors_with_default_values.dart | 2 +- ...default_values.dart.textual_outline.expect | 1 - ...alues.dart.textual_outline_modelled.expect | 1 - ...ctors_with_default_values.dart.weak.expect | 52 +-- ...th_default_values.dart.weak.modular.expect | 52 +-- ...th_default_values.dart.weak.outline.expect | 42 +- ...efault_values.dart.weak.transformed.expect | 52 +-- .../testcases/general/mixin_covariant.dart | 54 +-- ...ixin_covariant.dart.textual_outline.expect | 51 ++- ...riant.dart.textual_outline_modelled.expect | 51 ++- .../general/mixin_covariant.dart.weak.expect | 320 ++++----------- .../mixin_covariant.dart.weak.modular.expect | 320 ++++----------- .../mixin_covariant.dart.weak.outline.expect | 260 +++--------- ...xin_covariant.dart.weak.transformed.expect | 320 ++++----------- .../testcases/general/mixin_covariant2.dart | 2 +- ...xin_covariant2.dart.textual_outline.expect | 1 - ...iant2.dart.textual_outline_modelled.expect | 1 - .../general/mixin_covariant2.dart.weak.expect | 94 ++--- .../mixin_covariant2.dart.weak.modular.expect | 94 ++--- .../mixin_covariant2.dart.weak.outline.expect | 56 +-- ...in_covariant2.dart.weak.transformed.expect | 94 ++--- ...n_inherited_setter_for_mixed_in_field.dart | 2 + ..._inherited_setter_for_mixed_in_field2.dart | 24 ++ ...ixed_in_field2.dart.textual_outline.expect | 14 + ...ield2.dart.textual_outline_modelled.expect | 12 + ...etter_for_mixed_in_field2.dart.weak.expect | 48 +++ ...r_mixed_in_field2.dart.weak.modular.expect | 48 +++ ...r_mixed_in_field2.dart.weak.outline.expect | 40 ++ ...xed_in_field2.dart.weak.transformed.expect | 46 +++ .../general/mixin_interface_conflict.dart | 2 +- ...rface_conflict.dart.textual_outline.expect | 1 - ...flict.dart.textual_outline_modelled.expect | 1 - .../mixin_interface_conflict.dart.weak.expect | 42 +- ...nterface_conflict.dart.weak.modular.expect | 42 +- ...nterface_conflict.dart.weak.outline.expect | 42 +- ...face_conflict.dart.weak.transformed.expect | 42 +- .../testcases/general/mixin_stubs.dart | 2 +- .../mixin_stubs.dart.textual_outline.expect | 1 - ...stubs.dart.textual_outline_modelled.expect | 1 - .../general/mixin_stubs.dart.weak.expect | 104 ++--- .../mixin_stubs.dart.weak.modular.expect | 104 ++--- .../mixin_stubs.dart.weak.outline.expect | 56 +-- .../mixin_stubs.dart.weak.transformed.expect | 104 ++--- .../general/mixin_super_repeated.dart | 2 +- ...super_repeated.dart.textual_outline.expect | 1 - ...eated.dart.textual_outline_modelled.expect | 1 - .../mixin_super_repeated.dart.weak.expect | 40 +- ...in_super_repeated.dart.weak.modular.expect | 40 +- ...in_super_repeated.dart.weak.outline.expect | 34 +- ...uper_repeated.dart.weak.transformed.expect | 40 +- .../general/mixin_with_static_member.dart | 6 +- ..._static_member.dart.textual_outline.expect | 5 +- ...ember.dart.textual_outline_modelled.expect | 5 +- .../mixin_with_static_member.dart.weak.expect | 36 +- ...ith_static_member.dart.weak.modular.expect | 36 +- ...ith_static_member.dart.weak.outline.expect | 34 +- ...static_member.dart.weak.transformed.expect | 40 +- .../general/named_function_scope.dart | 10 +- ...function_scope.dart.textual_outline.expect | 1 - ...scope.dart.textual_outline_modelled.expect | 1 - .../named_function_scope.dart.weak.expect | 84 ++-- ...ed_function_scope.dart.weak.modular.expect | 84 ++-- ...ed_function_scope.dart.weak.outline.expect | 26 +- ...unction_scope.dart.weak.transformed.expect | 84 ++-- .../testcases/general/named_parameters.dart | 2 +- .../testcases/general/native_as_name.dart | 4 +- ...native_as_name.dart.textual_outline.expect | 3 +- ..._name.dart.textual_outline_modelled.expect | 3 +- .../general/native_as_name.dart.weak.expect | 74 +--- .../native_as_name.dart.weak.modular.expect | 74 +--- .../native_as_name.dart.weak.outline.expect | 64 +-- ...ative_as_name.dart.weak.transformed.expect | 74 +--- .../nested_implicit_const_with_env_var.dart | 2 +- ...t_with_env_var.dart.textual_outline.expect | 1 - ...v_var.dart.textual_outline_modelled.expect | 1 - ...plicit_const_with_env_var.dart.weak.expect | 44 +- ...onst_with_env_var.dart.weak.modular.expect | 44 +- ...onst_with_env_var.dart.weak.outline.expect | 44 +- ..._with_env_var.dart.weak.transformed.expect | 44 +- .../general/nested_property_set.dart | 2 + .../general/nested_variable_set.dart | 2 + .../testcases/general/nested_variance.dart | 2 + .../testcases/general/nested_variance2.dart | 242 +++++++++++ ...sted_variance2.dart.textual_outline.expect | 74 ++++ ...ance2.dart.textual_outline_modelled.expect | 71 ++++ .../general/nested_variance2.dart.weak.expect | 203 ++++++++++ .../nested_variance2.dart.weak.modular.expect | 203 ++++++++++ .../nested_variance2.dart.weak.outline.expect | 81 ++++ ...ted_variance2.dart.weak.transformed.expect | 203 ++++++++++ .../general/no_such_method_forwarder.dart | 2 - ...thod_forwarder.dart.textual_outline.expect | 1 - ...arder.dart.textual_outline_modelled.expect | 1 - .../no_such_method_forwarder.dart.weak.expect | 37 +- ..._method_forwarder.dart.weak.modular.expect | 37 +- ..._method_forwarder.dart.weak.outline.expect | 47 +-- ...hod_forwarder.dart.weak.transformed.expect | 49 +-- .../no_such_method_private_setter.dart | 2 +- ...private_setter.dart.textual_outline.expect | 1 - ...etter.dart.textual_outline_modelled.expect | 1 - ...uch_method_private_setter.dart.weak.expect | 47 +-- ...od_private_setter.dart.weak.modular.expect | 47 +-- ...od_private_setter.dart.weak.outline.expect | 40 +- ...rivate_setter.dart.weak.transformed.expect | 47 +-- .../no_such_method_private_setter_lib.dart | 2 +- .../general/non_covariant_checks.dart | 48 +-- ...variant_checks.dart.textual_outline.expect | 3 +- ...hecks.dart.textual_outline_modelled.expect | 3 +- .../non_covariant_checks.dart.weak.expect | 380 +++++++++--------- ..._covariant_checks.dart.weak.modular.expect | 380 +++++++++--------- ..._covariant_checks.dart.weak.outline.expect | 136 +++---- ...ariant_checks.dart.weak.transformed.expect | 380 +++++++++--------- .../testcases/general/nsm_covariance.dart | 2 - ...nsm_covariance.dart.textual_outline.expect | 1 - ...iance.dart.textual_outline_modelled.expect | 1 - .../general/nsm_covariance.dart.weak.expect | 258 ++++-------- .../nsm_covariance.dart.weak.modular.expect | 258 ++++-------- .../nsm_covariance.dart.weak.outline.expect | 334 ++++++--------- ...sm_covariance.dart.weak.transformed.expect | 258 ++++-------- .../testcases/general/nsm_covariance_lib.dart | 2 +- .../testcases/general/null_aware.dart | 2 + .../testcases/general/null_aware2.dart | 23 ++ .../null_aware2.dart.textual_outline.expect | 7 + ...ware2.dart.textual_outline_modelled.expect | 7 + .../general/null_aware2.dart.weak.expect | 74 ++++ .../null_aware2.dart.weak.modular.expect | 74 ++++ .../null_aware2.dart.weak.outline.expect | 21 + .../null_aware2.dart.weak.transformed.expect | 74 ++++ .../testcases/general/null_aware_for_in.dart | 2 +- ...l_aware_for_in.dart.textual_outline.expect | 1 - ...or_in.dart.textual_outline_modelled.expect | 1 - .../null_aware_for_in.dart.weak.expect | 18 +- ...null_aware_for_in.dart.weak.modular.expect | 18 +- ...null_aware_for_in.dart.weak.outline.expect | 14 +- ..._aware_for_in.dart.weak.transformed.expect | 18 +- .../testcases/general/null_aware_postfix.dart | 2 + .../general/null_aware_postfix2.dart | 21 + ...aware_postfix2.dart.textual_outline.expect | 12 + ...tfix2.dart.textual_outline_modelled.expect | 12 + .../null_aware_postfix2.dart.weak.expect | 27 ++ ...ll_aware_postfix2.dart.weak.modular.expect | 27 ++ ...ll_aware_postfix2.dart.weak.outline.expect | 21 + ...ware_postfix2.dart.weak.transformed.expect | 27 ++ .../testcases/general/null_aware_spread.dart | 2 + .../testcases/general/null_aware_spread2.dart | 21 + ..._aware_spread2.dart.textual_outline.expect | 4 + ...read2.dart.textual_outline_modelled.expect | 4 + .../null_aware_spread2.dart.weak.expect | 37 ++ ...ull_aware_spread2.dart.weak.modular.expect | 37 ++ ...ull_aware_spread2.dart.weak.outline.expect | 12 + ...aware_spread2.dart.weak.transformed.expect | 41 ++ .../null_safety_invalid_experiment.dart | 2 + ...safety_invalid_experiment.dart.weak.expect | 4 +- ...nvalid_experiment.dart.weak.modular.expect | 4 +- ...nvalid_experiment.dart.weak.outline.expect | 4 +- ...id_experiment.dart.weak.transformed.expect | 4 +- .../testcases/textual_outline.status | 3 +- 522 files changed, 6885 insertions(+), 10739 deletions(-) create mode 100644 pkg/front_end/testcases/general/issue42610b.dart create mode 100644 pkg/front_end/testcases/general/issue42610b.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/issue42610b.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/issue42610b.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/issue42610b.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/issue42610b.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/issue42610b.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/issue45660_2.dart create mode 100644 pkg/front_end/testcases/general/issue45660_2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/issue45660_2.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/issue45660_2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/issue45660_2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/issue45660_2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/issue45660_2.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/issue47495.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/many_errors2.dart create mode 100644 pkg/front_end/testcases/general/many_errors2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/many_errors2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/many_errors2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/many_errors2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/many_errors2.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/mixin_application_lub_2.dart create mode 100644 pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart create mode 100644 pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/nested_variance2.dart create mode 100644 pkg/front_end/testcases/general/nested_variance2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/nested_variance2.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/nested_variance2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/nested_variance2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/nested_variance2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/nested_variance2.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/null_aware2.dart create mode 100644 pkg/front_end/testcases/general/null_aware2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/null_aware2.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/null_aware2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/null_aware2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/null_aware2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/null_aware2.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/null_aware_postfix2.dart create mode 100644 pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.transformed.expect create mode 100644 pkg/front_end/testcases/general/null_aware_spread2.dart create mode 100644 pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline.expect create mode 100644 pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline_modelled.expect create mode 100644 pkg/front_end/testcases/general/null_aware_spread2.dart.weak.expect create mode 100644 pkg/front_end/testcases/general/null_aware_spread2.dart.weak.modular.expect create mode 100644 pkg/front_end/testcases/general/null_aware_spread2.dart.weak.outline.expect create mode 100644 pkg/front_end/testcases/general/null_aware_spread2.dart.weak.transformed.expect diff --git a/pkg/front_end/testcases/general/issue129167943.dart b/pkg/front_end/testcases/general/issue129167943.dart index 73d19677860..c7560eaed06 100644 --- a/pkg/front_end/testcases/general/issue129167943.dart +++ b/pkg/front_end/testcases/general/issue129167943.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - abstract class A {} abstract class B { diff --git a/pkg/front_end/testcases/general/issue129167943.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue129167943.dart.textual_outline.expect index 88e47083c6e..2d33b0a0d38 100644 --- a/pkg/front_end/testcases/general/issue129167943.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue129167943.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class A {} abstract class B { diff --git a/pkg/front_end/testcases/general/issue129167943.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue129167943.dart.textual_outline_modelled.expect index c1dd87666d1..3d5bb930eda 100644 --- a/pkg/front_end/testcases/general/issue129167943.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue129167943.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class A {} abstract class B { diff --git a/pkg/front_end/testcases/general/issue129167943.dart.weak.expect b/pkg/front_end/testcases/general/issue129167943.dart.weak.expect index dbcaed7b796..8ec3fecca58 100644 --- a/pkg/front_end/testcases/general/issue129167943.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue129167943.dart.weak.expect @@ -1,244 +1,94 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(core::num x) → void; } abstract class C extends core::Object implements self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D1 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D1* + synthetic constructor •() → self::D1 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } class D2 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D2* + synthetic constructor •() → self::D2 : super core::Object::•() ; - method foo(covariant-by-declaration core::int* x) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method foo(covariant-by-declaration core::int x) → void {} } abstract class D3 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D3* + synthetic constructor •() → self::D3 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub method foo(covariant-by-declaration core::num x) → void; } abstract class D4 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D4* + synthetic constructor •() → self::D4 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D5 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D5* + synthetic constructor •() → self::D5 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::num x) → void; } abstract class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super core::Object::•() ; - abstract set foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(core::num x) → void; } abstract class G extends core::Object implements self::E { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H1 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H1* + synthetic constructor •() → self::H1 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } class H2 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H2* + synthetic constructor •() → self::H2 : super core::Object::•() ; - set foo(covariant-by-declaration core::int* x) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + set foo(covariant-by-declaration core::int x) → void {} } abstract class H3 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H3* + synthetic constructor •() → self::H3 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub set foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub set foo(covariant-by-declaration core::num x) → void; } abstract class H4 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H4* + synthetic constructor •() → self::H4 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H5 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H5* + synthetic constructor •() → self::H5 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::num x) → void; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue129167943.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue129167943.dart.weak.modular.expect index dbcaed7b796..8ec3fecca58 100644 --- a/pkg/front_end/testcases/general/issue129167943.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue129167943.dart.weak.modular.expect @@ -1,244 +1,94 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(core::num x) → void; } abstract class C extends core::Object implements self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D1 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D1* + synthetic constructor •() → self::D1 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } class D2 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D2* + synthetic constructor •() → self::D2 : super core::Object::•() ; - method foo(covariant-by-declaration core::int* x) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method foo(covariant-by-declaration core::int x) → void {} } abstract class D3 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D3* + synthetic constructor •() → self::D3 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub method foo(covariant-by-declaration core::num x) → void; } abstract class D4 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D4* + synthetic constructor •() → self::D4 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D5 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D5* + synthetic constructor •() → self::D5 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::num x) → void; } abstract class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super core::Object::•() ; - abstract set foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(core::num x) → void; } abstract class G extends core::Object implements self::E { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H1 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H1* + synthetic constructor •() → self::H1 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } class H2 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H2* + synthetic constructor •() → self::H2 : super core::Object::•() ; - set foo(covariant-by-declaration core::int* x) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + set foo(covariant-by-declaration core::int x) → void {} } abstract class H3 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H3* + synthetic constructor •() → self::H3 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub set foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub set foo(covariant-by-declaration core::num x) → void; } abstract class H4 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H4* + synthetic constructor •() → self::H4 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H5 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H5* + synthetic constructor •() → self::H5 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::num x) → void; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue129167943.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue129167943.dart.weak.outline.expect index 6d18c9ababc..e4d23f93e34 100644 --- a/pkg/front_end/testcases/general/issue129167943.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue129167943.dart.weak.outline.expect @@ -1,232 +1,82 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B ; - abstract method foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(core::num x) → void; } abstract class C extends core::Object implements self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D1 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D1* + synthetic constructor •() → self::D1 ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } class D2 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D2* + synthetic constructor •() → self::D2 ; - method foo(covariant-by-declaration core::int* x) → void + method foo(covariant-by-declaration core::int x) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class D3 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D3* + synthetic constructor •() → self::D3 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub method foo(covariant-by-declaration core::num x) → void; } abstract class D4 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D4* + synthetic constructor •() → self::D4 ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D5 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D5* + synthetic constructor •() → self::D5 ; - abstract method foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::num x) → void; } abstract class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E ; - abstract set foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(core::num x) → void; } abstract class G extends core::Object implements self::E { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H1 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H1* + synthetic constructor •() → self::H1 ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } class H2 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H2* + synthetic constructor •() → self::H2 ; - set foo(covariant-by-declaration core::int* x) → void + set foo(covariant-by-declaration core::int x) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class H3 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H3* + synthetic constructor •() → self::H3 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub set foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub set foo(covariant-by-declaration core::num x) → void; } abstract class H4 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H4* + synthetic constructor •() → self::H4 ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H5 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H5* + synthetic constructor •() → self::H5 ; - abstract set foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::num x) → void; } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue129167943.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue129167943.dart.weak.transformed.expect index dbcaed7b796..8ec3fecca58 100644 --- a/pkg/front_end/testcases/general/issue129167943.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue129167943.dart.weak.transformed.expect @@ -1,244 +1,94 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(core::num x) → void; } abstract class C extends core::Object implements self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D1 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D1* + synthetic constructor •() → self::D1 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } class D2 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D2* + synthetic constructor •() → self::D2 : super core::Object::•() ; - method foo(covariant-by-declaration core::int* x) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method foo(covariant-by-declaration core::int x) → void {} } abstract class D3 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D3* + synthetic constructor •() → self::D3 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub method foo(covariant-by-declaration core::num x) → void; } abstract class D4 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D4* + synthetic constructor •() → self::D4 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::int x) → void; } abstract class D5 extends core::Object implements self::A, self::C, self::B { - synthetic constructor •() → self::D5* + synthetic constructor •() → self::D5 : super core::Object::•() ; - abstract method foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method foo(covariant-by-declaration core::num x) → void; } abstract class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super core::Object::•() ; - abstract set foo(core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(core::num x) → void; } abstract class G extends core::Object implements self::E { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H1 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H1* + synthetic constructor •() → self::H1 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } class H2 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H2* + synthetic constructor •() → self::H2 : super core::Object::•() ; - set foo(covariant-by-declaration core::int* x) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + set foo(covariant-by-declaration core::int x) → void {} } abstract class H3 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H3* + synthetic constructor •() → self::H3 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub set foo(covariant-by-declaration core::num* x) → void; + abstract forwarding-stub set foo(covariant-by-declaration core::num x) → void; } abstract class H4 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H4* + synthetic constructor •() → self::H4 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::int* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::int x) → void; } abstract class H5 extends core::Object implements self::A, self::E, self::G { - synthetic constructor •() → self::H5* + synthetic constructor •() → self::H5 : super core::Object::•() ; - abstract set foo(covariant-by-declaration core::num* x) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set foo(covariant-by-declaration core::num x) → void; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue31767.dart b/pkg/front_end/testcases/general/issue31767.dart index 4a9997b7b6a..045dced5364 100644 --- a/pkg/front_end/testcases/general/issue31767.dart +++ b/pkg/front_end/testcases/general/issue31767.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // @dart=2.9 import 'issue31767_lib.dart'; diff --git a/pkg/front_end/testcases/general/issue31767.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue31767.dart.textual_outline.expect index 56c60d97ddd..c0f10503643 100644 --- a/pkg/front_end/testcases/general/issue31767.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue31767.dart.textual_outline.expect @@ -1,5 +1,4 @@ // @dart = 2.9 -// @dart = 2.9 import 'issue31767_lib.dart'; StringBuffer sb; diff --git a/pkg/front_end/testcases/general/issue31767.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue31767.dart.textual_outline_modelled.expect index 05a7c2ee7e6..e349691b847 100644 --- a/pkg/front_end/testcases/general/issue31767.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue31767.dart.textual_outline_modelled.expect @@ -1,5 +1,4 @@ // @dart = 2.9 -// @dart = 2.9 import 'issue31767_lib.dart'; StringBuffer sb; diff --git a/pkg/front_end/testcases/general/issue31767_lib.dart b/pkg/front_end/testcases/general/issue31767_lib.dart index 20413005908..61406fdbd53 100644 --- a/pkg/front_end/testcases/general/issue31767_lib.dart +++ b/pkg/front_end/testcases/general/issue31767_lib.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // @dart=2.9 import 'issue31767.dart'; diff --git a/pkg/front_end/testcases/general/issue34515.dart b/pkg/front_end/testcases/general/issue34515.dart index eeebfc8be05..829ce3b2ab3 100644 --- a/pkg/front_end/testcases/general/issue34515.dart +++ b/pkg/front_end/testcases/general/issue34515.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + import "issue34515_lib1.dart"; import "issue34515_lib2.dart"; diff --git a/pkg/front_end/testcases/general/issue34515.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue34515.dart.textual_outline.expect index 76ca2244c86..0d74c15bc9d 100644 --- a/pkg/front_end/testcases/general/issue34515.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue34515.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import "issue34515_lib1.dart"; import "issue34515_lib2.dart"; diff --git a/pkg/front_end/testcases/general/issue34515.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue34515.dart.textual_outline_modelled.expect index 51b0be978f5..608fcf15039 100644 --- a/pkg/front_end/testcases/general/issue34515.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue34515.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import "issue34515_lib1.dart"; import "issue34515_lib2.dart"; diff --git a/pkg/front_end/testcases/general/issue34515.dart.weak.expect b/pkg/front_end/testcases/general/issue34515.dart.weak.expect index 6ca6a9d3caa..d92d8117bae 100644 --- a/pkg/front_end/testcases/general/issue34515.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue34515.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,51 +17,31 @@ import "org-dartlang-testcase:///issue34515_lib1.dart"; import "org-dartlang-testcase:///issue34515_lib2.dart"; static method test() → void { - let final core::Object* #t1 = 1 in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:9:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. + let final core::Object? #t1 = 1 in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:9:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. ImportedClass(1); ^^^^^^^^^^^^^"; - let final core::Object* #t2 = "a" in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:10:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. + let final core::Object? #t2 = "a" in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:10:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. ImportedClass(\"a\"); ^^^^^^^^^^^^^"; } static method main() → dynamic {} -library; +library /*isNonNullableByDefault*/; import self as self2; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::int* a) → self2::ImportedClass* + constructor •(core::int a) → self2::ImportedClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -library; +library /*isNonNullableByDefault*/; import self as self3; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::String* a) → self3::ImportedClass* + constructor •(core::String a) → self3::ImportedClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue34515.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue34515.dart.weak.modular.expect index 6ca6a9d3caa..d92d8117bae 100644 --- a/pkg/front_end/testcases/general/issue34515.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue34515.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,51 +17,31 @@ import "org-dartlang-testcase:///issue34515_lib1.dart"; import "org-dartlang-testcase:///issue34515_lib2.dart"; static method test() → void { - let final core::Object* #t1 = 1 in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:9:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. + let final core::Object? #t1 = 1 in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:9:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. ImportedClass(1); ^^^^^^^^^^^^^"; - let final core::Object* #t2 = "a" in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:10:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. + let final core::Object? #t2 = "a" in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:10:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. ImportedClass(\"a\"); ^^^^^^^^^^^^^"; } static method main() → dynamic {} -library; +library /*isNonNullableByDefault*/; import self as self2; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::int* a) → self2::ImportedClass* + constructor •(core::int a) → self2::ImportedClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -library; +library /*isNonNullableByDefault*/; import self as self3; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::String* a) → self3::ImportedClass* + constructor •(core::String a) → self3::ImportedClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue34515.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue34515.dart.weak.outline.expect index a6f6e1040c8..70e67a5da61 100644 --- a/pkg/front_end/testcases/general/issue34515.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue34515.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "org-dartlang-testcase:///issue34515_lib1.dart"; @@ -9,40 +9,20 @@ static method test() → void static method main() → dynamic ; -library; +library /*isNonNullableByDefault*/; import self as self2; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::int* a) → self2::ImportedClass* + constructor •(core::int a) → self2::ImportedClass ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -library; +library /*isNonNullableByDefault*/; import self as self3; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::String* a) → self3::ImportedClass* + constructor •(core::String a) → self3::ImportedClass ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue34515.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue34515.dart.weak.transformed.expect index 6ca6a9d3caa..d92d8117bae 100644 --- a/pkg/front_end/testcases/general/issue34515.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue34515.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,51 +17,31 @@ import "org-dartlang-testcase:///issue34515_lib1.dart"; import "org-dartlang-testcase:///issue34515_lib2.dart"; static method test() → void { - let final core::Object* #t1 = 1 in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:9:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. + let final core::Object? #t1 = 1 in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:9:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. ImportedClass(1); ^^^^^^^^^^^^^"; - let final core::Object* #t2 = "a" in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:10:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. + let final core::Object? #t2 = "a" in invalid-expression "pkg/front_end/testcases/general/issue34515.dart:10:3: Error: 'ImportedClass' is imported from both 'pkg/front_end/testcases/general/issue34515_lib1.dart' and 'pkg/front_end/testcases/general/issue34515_lib2.dart'. ImportedClass(\"a\"); ^^^^^^^^^^^^^"; } static method main() → dynamic {} -library; +library /*isNonNullableByDefault*/; import self as self2; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::int* a) → self2::ImportedClass* + constructor •(core::int a) → self2::ImportedClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -library; +library /*isNonNullableByDefault*/; import self as self3; import "dart:core" as core; class ImportedClass extends core::Object { - constructor •(core::String* a) → self3::ImportedClass* + constructor •(core::String a) → self3::ImportedClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue34515_lib1.dart b/pkg/front_end/testcases/general/issue34515_lib1.dart index 1777ac3acaa..00f93408c44 100644 --- a/pkg/front_end/testcases/general/issue34515_lib1.dart +++ b/pkg/front_end/testcases/general/issue34515_lib1.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class ImportedClass { ImportedClass(int a); } diff --git a/pkg/front_end/testcases/general/issue34515_lib2.dart b/pkg/front_end/testcases/general/issue34515_lib2.dart index 7382d3c401f..2ec64bba057 100644 --- a/pkg/front_end/testcases/general/issue34515_lib2.dart +++ b/pkg/front_end/testcases/general/issue34515_lib2.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class ImportedClass { ImportedClass(String a); } diff --git a/pkg/front_end/testcases/general/issue34714.dart b/pkg/front_end/testcases/general/issue34714.dart index df432610b67..918ed9351d7 100644 --- a/pkg/front_end/testcases/general/issue34714.dart +++ b/pkg/front_end/testcases/general/issue34714.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A { factory A() = B; // Should infer B. } diff --git a/pkg/front_end/testcases/general/issue34714.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue34714.dart.textual_outline.expect index 29124ba859f..82ac1d1d729 100644 --- a/pkg/front_end/testcases/general/issue34714.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue34714.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A { factory A() = B; } diff --git a/pkg/front_end/testcases/general/issue34714.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue34714.dart.textual_outline_modelled.expect index 29124ba859f..82ac1d1d729 100644 --- a/pkg/front_end/testcases/general/issue34714.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue34714.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A { factory A() = B; } diff --git a/pkg/front_end/testcases/general/issue34714.dart.weak.expect b/pkg/front_end/testcases/general/issue34714.dart.weak.expect index c0cc024ac1d..c16c3c63370 100644 --- a/pkg/front_end/testcases/general/issue34714.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue34714.dart.weak.expect @@ -1,36 +1,16 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - static final field dynamic _redirecting# = [#C1]; - static factory •() → self::A* - return new self::B::•(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType +class A extends core::Object { + static final field dynamic _redirecting# = [#C1]/*isLegacy*/; + static factory •() → self::A + return new self::B::•(); } -class B extends core::Object implements self::A { - constructor •() → self::B* +class B extends core::Object implements self::A { + constructor •() → self::B : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue34714.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue34714.dart.weak.modular.expect index c0cc024ac1d..c16c3c63370 100644 --- a/pkg/front_end/testcases/general/issue34714.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue34714.dart.weak.modular.expect @@ -1,36 +1,16 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - static final field dynamic _redirecting# = [#C1]; - static factory •() → self::A* - return new self::B::•(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType +class A extends core::Object { + static final field dynamic _redirecting# = [#C1]/*isLegacy*/; + static factory •() → self::A + return new self::B::•(); } -class B extends core::Object implements self::A { - constructor •() → self::B* +class B extends core::Object implements self::A { + constructor •() → self::B : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue34714.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue34714.dart.weak.outline.expect index 6b16904e370..ded3fadecf5 100644 --- a/pkg/front_end/testcases/general/issue34714.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue34714.dart.weak.outline.expect @@ -1,35 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - static final field dynamic _redirecting# = [self::A::•]; - static factory •() → self::A* - return new self::B::•(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType +class A extends core::Object { + static final field dynamic _redirecting# = [self::A::•]/*isLegacy*/; + static factory •() → self::A + return new self::B::•(); } -class B extends core::Object implements self::A { - constructor •() → self::B* +class B extends core::Object implements self::A { + constructor •() → self::B ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue34714.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue34714.dart.weak.transformed.expect index c0cc024ac1d..c16c3c63370 100644 --- a/pkg/front_end/testcases/general/issue34714.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue34714.dart.weak.transformed.expect @@ -1,36 +1,16 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - static final field dynamic _redirecting# = [#C1]; - static factory •() → self::A* - return new self::B::•(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType +class A extends core::Object { + static final field dynamic _redirecting# = [#C1]/*isLegacy*/; + static factory •() → self::A + return new self::B::•(); } -class B extends core::Object implements self::A { - constructor •() → self::B* +class B extends core::Object implements self::A { + constructor •() → self::B : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue34899.dart b/pkg/front_end/testcases/general/issue34899.dart index 6923798054f..deacf78c550 100644 --- a/pkg/front_end/testcases/general/issue34899.dart +++ b/pkg/front_end/testcases/general/issue34899.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class Foo { final Future Function() quux; T t; @@ -12,12 +12,12 @@ class Foo { } class Bar { - Foo qux; + Foo qux = throw ''; Future quuz() => qux().then((baz) => corge(baz)).then((grault) => garply(grault)); - Grault corge(Baz baz) => null; + Grault corge(Baz baz) => throw ''; void garply(Grault grault) {} } diff --git a/pkg/front_end/testcases/general/issue34899.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue34899.dart.textual_outline.expect index f989a75ea13..1e916aad03a 100644 --- a/pkg/front_end/testcases/general/issue34899.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue34899.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Foo { final Future Function() quux; T t; @@ -7,10 +6,10 @@ class Foo { } class Bar { - Foo qux; + Foo qux = throw ''; Future quuz() => qux().then((baz) => corge(baz)).then((grault) => garply(grault)); - Grault corge(Baz baz) => null; + Grault corge(Baz baz) => throw ''; void garply(Grault grault) {} } diff --git a/pkg/front_end/testcases/general/issue34899.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue34899.dart.textual_outline_modelled.expect index 1f0bcd05e0d..cda9295035e 100644 --- a/pkg/front_end/testcases/general/issue34899.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue34899.dart.textual_outline_modelled.expect @@ -1,9 +1,8 @@ -// @dart = 2.9 class Bar { - Foo qux; + Foo qux = throw ''; Future quuz() => qux().then((baz) => corge(baz)).then((grault) => garply(grault)); - Grault corge(Baz baz) => null; + Grault corge(Baz baz) => throw ''; void garply(Grault grault) {} } diff --git a/pkg/front_end/testcases/general/issue34899.dart.weak.expect b/pkg/front_end/testcases/general/issue34899.dart.weak.expect index c1735e39934..b7fefe3b854 100644 --- a/pkg/front_end/testcases/general/issue34899.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue34899.dart.weak.expect @@ -1,76 +1,36 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "dart:async" as asy; -class Foo extends core::Object { - final field () →* asy::Future* quux; - covariant-by-class field self::Foo::T* t; - constructor •(() →* asy::Future* quux, self::Foo::T* t) → self::Foo* +class Foo extends core::Object { + final field () → asy::Future quux; + covariant-by-class field self::Foo::T% t; + constructor •(() → asy::Future quux, self::Foo::T% t) → self::Foo : self::Foo::quux = quux, self::Foo::t = t, super core::Object::•() ; - method call() → asy::Future* - return this.{self::Foo::quux}{() →* asy::Future*}(){() →* asy::Future*}.{asy::Future::then}((dynamic _) → self::Foo::T* => this.{self::Foo::t}{self::Foo::T*}){((dynamic) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method call() → asy::Future + return this.{self::Foo::quux}{() → asy::Future}(){() → asy::Future}.{asy::Future::then}((dynamic _) → self::Foo::T% => this.{self::Foo::t}{self::Foo::T%}){((dynamic) → FutureOr, {onError: core::Function?}) → asy::Future}; } class Bar extends core::Object { - field self::Foo* qux = null; - synthetic constructor •() → self::Bar* + field self::Foo qux = throw ""; + synthetic constructor •() → self::Bar : super core::Object::•() ; - method quuz() → asy::Future* - return this.{self::Bar::qux}{self::Foo*}.{self::Foo::call}(){() →* asy::Future*}.{asy::Future::then}((self::Baz* baz) → self::Grault* => this.{self::Bar::corge}(baz){(self::Baz*) →* self::Grault*}){((self::Baz*) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}.{asy::Future::then}((self::Grault* grault) → void => this.{self::Bar::garply}(grault){(self::Grault*) →* void}){((self::Grault*) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}; - method corge(self::Baz* baz) → self::Grault* - return null; - method garply(self::Grault* grault) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method quuz() → asy::Future + return this.{self::Bar::qux}{self::Foo}.{self::Foo::call}(){() → asy::Future}.{asy::Future::then}((self::Baz baz) → self::Grault => this.{self::Bar::corge}(baz){(self::Baz) → self::Grault}){((self::Baz) → FutureOr, {onError: core::Function?}) → asy::Future}.{asy::Future::then}((self::Grault grault) → void => this.{self::Bar::garply}(grault){(self::Grault) → void}){((self::Grault) → FutureOr, {onError: core::Function?}) → asy::Future}; + method corge(self::Baz baz) → self::Grault + return throw ""; + method garply(self::Grault grault) → void {} } class Baz extends core::Object { - synthetic constructor •() → self::Baz* + synthetic constructor •() → self::Baz : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Grault extends core::Object { - synthetic constructor •() → self::Grault* + synthetic constructor •() → self::Grault : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue34899.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue34899.dart.weak.modular.expect index c1735e39934..b7fefe3b854 100644 --- a/pkg/front_end/testcases/general/issue34899.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue34899.dart.weak.modular.expect @@ -1,76 +1,36 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "dart:async" as asy; -class Foo extends core::Object { - final field () →* asy::Future* quux; - covariant-by-class field self::Foo::T* t; - constructor •(() →* asy::Future* quux, self::Foo::T* t) → self::Foo* +class Foo extends core::Object { + final field () → asy::Future quux; + covariant-by-class field self::Foo::T% t; + constructor •(() → asy::Future quux, self::Foo::T% t) → self::Foo : self::Foo::quux = quux, self::Foo::t = t, super core::Object::•() ; - method call() → asy::Future* - return this.{self::Foo::quux}{() →* asy::Future*}(){() →* asy::Future*}.{asy::Future::then}((dynamic _) → self::Foo::T* => this.{self::Foo::t}{self::Foo::T*}){((dynamic) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method call() → asy::Future + return this.{self::Foo::quux}{() → asy::Future}(){() → asy::Future}.{asy::Future::then}((dynamic _) → self::Foo::T% => this.{self::Foo::t}{self::Foo::T%}){((dynamic) → FutureOr, {onError: core::Function?}) → asy::Future}; } class Bar extends core::Object { - field self::Foo* qux = null; - synthetic constructor •() → self::Bar* + field self::Foo qux = throw ""; + synthetic constructor •() → self::Bar : super core::Object::•() ; - method quuz() → asy::Future* - return this.{self::Bar::qux}{self::Foo*}.{self::Foo::call}(){() →* asy::Future*}.{asy::Future::then}((self::Baz* baz) → self::Grault* => this.{self::Bar::corge}(baz){(self::Baz*) →* self::Grault*}){((self::Baz*) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}.{asy::Future::then}((self::Grault* grault) → void => this.{self::Bar::garply}(grault){(self::Grault*) →* void}){((self::Grault*) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}; - method corge(self::Baz* baz) → self::Grault* - return null; - method garply(self::Grault* grault) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method quuz() → asy::Future + return this.{self::Bar::qux}{self::Foo}.{self::Foo::call}(){() → asy::Future}.{asy::Future::then}((self::Baz baz) → self::Grault => this.{self::Bar::corge}(baz){(self::Baz) → self::Grault}){((self::Baz) → FutureOr, {onError: core::Function?}) → asy::Future}.{asy::Future::then}((self::Grault grault) → void => this.{self::Bar::garply}(grault){(self::Grault) → void}){((self::Grault) → FutureOr, {onError: core::Function?}) → asy::Future}; + method corge(self::Baz baz) → self::Grault + return throw ""; + method garply(self::Grault grault) → void {} } class Baz extends core::Object { - synthetic constructor •() → self::Baz* + synthetic constructor •() → self::Baz : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Grault extends core::Object { - synthetic constructor •() → self::Grault* + synthetic constructor •() → self::Grault : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue34899.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue34899.dart.weak.outline.expect index d15bcb73cb2..715285c9c8a 100644 --- a/pkg/front_end/testcases/general/issue34899.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue34899.dart.weak.outline.expect @@ -1,74 +1,34 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "dart:async" as asy; -class Foo extends core::Object { - final field () →* asy::Future* quux; - covariant-by-class field self::Foo::T* t; - constructor •(() →* asy::Future* quux, self::Foo::T* t) → self::Foo* +class Foo extends core::Object { + final field () → asy::Future quux; + covariant-by-class field self::Foo::T% t; + constructor •(() → asy::Future quux, self::Foo::T% t) → self::Foo ; - method call() → asy::Future* + method call() → asy::Future ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Bar extends core::Object { - field self::Foo* qux; - synthetic constructor •() → self::Bar* + field self::Foo qux; + synthetic constructor •() → self::Bar ; - method quuz() → asy::Future* + method quuz() → asy::Future ; - method corge(self::Baz* baz) → self::Grault* + method corge(self::Baz baz) → self::Grault ; - method garply(self::Grault* grault) → void + method garply(self::Grault grault) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Baz extends core::Object { - synthetic constructor •() → self::Baz* + synthetic constructor •() → self::Baz ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Grault extends core::Object { - synthetic constructor •() → self::Grault* + synthetic constructor •() → self::Grault ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue34899.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue34899.dart.weak.transformed.expect index c1735e39934..b7fefe3b854 100644 --- a/pkg/front_end/testcases/general/issue34899.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue34899.dart.weak.transformed.expect @@ -1,76 +1,36 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "dart:async" as asy; -class Foo extends core::Object { - final field () →* asy::Future* quux; - covariant-by-class field self::Foo::T* t; - constructor •(() →* asy::Future* quux, self::Foo::T* t) → self::Foo* +class Foo extends core::Object { + final field () → asy::Future quux; + covariant-by-class field self::Foo::T% t; + constructor •(() → asy::Future quux, self::Foo::T% t) → self::Foo : self::Foo::quux = quux, self::Foo::t = t, super core::Object::•() ; - method call() → asy::Future* - return this.{self::Foo::quux}{() →* asy::Future*}(){() →* asy::Future*}.{asy::Future::then}((dynamic _) → self::Foo::T* => this.{self::Foo::t}{self::Foo::T*}){((dynamic) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method call() → asy::Future + return this.{self::Foo::quux}{() → asy::Future}(){() → asy::Future}.{asy::Future::then}((dynamic _) → self::Foo::T% => this.{self::Foo::t}{self::Foo::T%}){((dynamic) → FutureOr, {onError: core::Function?}) → asy::Future}; } class Bar extends core::Object { - field self::Foo* qux = null; - synthetic constructor •() → self::Bar* + field self::Foo qux = throw ""; + synthetic constructor •() → self::Bar : super core::Object::•() ; - method quuz() → asy::Future* - return this.{self::Bar::qux}{self::Foo*}.{self::Foo::call}(){() →* asy::Future*}.{asy::Future::then}((self::Baz* baz) → self::Grault* => this.{self::Bar::corge}(baz){(self::Baz*) →* self::Grault*}){((self::Baz*) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}.{asy::Future::then}((self::Grault* grault) → void => this.{self::Bar::garply}(grault){(self::Grault*) →* void}){((self::Grault*) →* FutureOr*, {onError: core::Function*}) →* asy::Future*}; - method corge(self::Baz* baz) → self::Grault* - return null; - method garply(self::Grault* grault) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method quuz() → asy::Future + return this.{self::Bar::qux}{self::Foo}.{self::Foo::call}(){() → asy::Future}.{asy::Future::then}((self::Baz baz) → self::Grault => this.{self::Bar::corge}(baz){(self::Baz) → self::Grault}){((self::Baz) → FutureOr, {onError: core::Function?}) → asy::Future}.{asy::Future::then}((self::Grault grault) → void => this.{self::Bar::garply}(grault){(self::Grault) → void}){((self::Grault) → FutureOr, {onError: core::Function?}) → asy::Future}; + method corge(self::Baz baz) → self::Grault + return throw ""; + method garply(self::Grault grault) → void {} } class Baz extends core::Object { - synthetic constructor •() → self::Baz* + synthetic constructor •() → self::Baz : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Grault extends core::Object { - synthetic constructor •() → self::Grault* + synthetic constructor •() → self::Grault : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue35875.dart b/pkg/front_end/testcases/general/issue35875.dart index cdcd28fab75..27f7a21d5d5 100644 --- a/pkg/front_end/testcases/general/issue35875.dart +++ b/pkg/front_end/testcases/general/issue35875.dart @@ -1,10 +1,10 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A { - int a; - A(int a) { + int? a; + A(int? a) { (this).a = a; } } diff --git a/pkg/front_end/testcases/general/issue35875.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue35875.dart.textual_outline.expect index a1997dbd24a..12018447b90 100644 --- a/pkg/front_end/testcases/general/issue35875.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue35875.dart.textual_outline.expect @@ -1,7 +1,6 @@ -// @dart = 2.9 class A { - int a; - A(int a) {} + int? a; + A(int? a) {} } main() {} diff --git a/pkg/front_end/testcases/general/issue35875.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue35875.dart.textual_outline_modelled.expect index 0de1b77f2ff..697216b0744 100644 --- a/pkg/front_end/testcases/general/issue35875.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue35875.dart.textual_outline_modelled.expect @@ -1,7 +1,6 @@ -// @dart = 2.9 class A { - A(int a) {} - int a; + A(int? a) {} + int? a; } main() {} diff --git a/pkg/front_end/testcases/general/issue35875.dart.weak.expect b/pkg/front_end/testcases/general/issue35875.dart.weak.expect index fe26450903b..9e0ce1ea94a 100644 --- a/pkg/front_end/testcases/general/issue35875.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue35875.dart.weak.expect @@ -1,22 +1,12 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* a = null; - constructor •(core::int* a) → self::A* + field core::int? a = null; + constructor •(core::int? a) → self::A : super core::Object::•() { this.{self::A::a} = a; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue35875.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue35875.dart.weak.modular.expect index fe26450903b..9e0ce1ea94a 100644 --- a/pkg/front_end/testcases/general/issue35875.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue35875.dart.weak.modular.expect @@ -1,22 +1,12 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* a = null; - constructor •(core::int* a) → self::A* + field core::int? a = null; + constructor •(core::int? a) → self::A : super core::Object::•() { this.{self::A::a} = a; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue35875.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue35875.dart.weak.outline.expect index f25c2ca5f59..a5aedf87d85 100644 --- a/pkg/front_end/testcases/general/issue35875.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue35875.dart.weak.outline.expect @@ -1,21 +1,11 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* a; - constructor •(core::int* a) → self::A* + field core::int? a; + constructor •(core::int? a) → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue35875.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue35875.dart.weak.transformed.expect index fe26450903b..9e0ce1ea94a 100644 --- a/pkg/front_end/testcases/general/issue35875.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue35875.dart.weak.transformed.expect @@ -1,22 +1,12 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* a = null; - constructor •(core::int* a) → self::A* + field core::int? a = null; + constructor •(core::int? a) → self::A : super core::Object::•() { this.{self::A::a} = a; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue37027.dart b/pkg/front_end/testcases/general/issue37027.dart index 1da79e27c73..6272d620b01 100644 --- a/pkg/front_end/testcases/general/issue37027.dart +++ b/pkg/front_end/testcases/general/issue37027.dart @@ -1,9 +1,10 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + class C { final Set s; C(List ell) : s = {for (var e in ell) if (e.isOdd) 2 * e}; } -// @dart=2.9 + main() {} diff --git a/pkg/front_end/testcases/general/issue37381.dart b/pkg/front_end/testcases/general/issue37381.dart index aabaf7f7974..9424045edb7 100644 --- a/pkg/front_end/testcases/general/issue37381.dart +++ b/pkg/front_end/testcases/general/issue37381.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // This test checks that the bug reported at http://dartbug.com/37381 is fixed. class A { diff --git a/pkg/front_end/testcases/general/issue37381.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue37381.dart.textual_outline.expect index 8b089878d0e..0e78f9c0d85 100644 --- a/pkg/front_end/testcases/general/issue37381.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue37381.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A { R f(R Function(A) f) => f(this); } diff --git a/pkg/front_end/testcases/general/issue37381.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue37381.dart.textual_outline_modelled.expect index 8b089878d0e..0e78f9c0d85 100644 --- a/pkg/front_end/testcases/general/issue37381.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue37381.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A { R f(R Function(A) f) => f(this); } diff --git a/pkg/front_end/testcases/general/issue37381.dart.weak.expect b/pkg/front_end/testcases/general/issue37381.dart.weak.expect index 8ec0e22984f..b0dd96ac595 100644 --- a/pkg/front_end/testcases/general/issue37381.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue37381.dart.weak.expect @@ -1,25 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - method f((self::A*) →* self::A::f::R* f) → self::A::f::R* - return f(this){(self::A*) →* self::A::f::R*}; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method f((self::A) → self::A::f::R% f) → self::A::f::R% + return f(this){(self::A) → self::A::f::R%}; } static method main() → dynamic { - self::A* a = new self::A::•(); - a.{self::A::f}((self::A* _) → core::int* => 42){((self::A*) →* core::int*) →* core::int*}; + self::A a = new self::A::•(); + a.{self::A::f}((self::A _) → core::int => 42){((self::A) → core::int) → core::int}; } diff --git a/pkg/front_end/testcases/general/issue37381.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue37381.dart.weak.modular.expect index 8ec0e22984f..b0dd96ac595 100644 --- a/pkg/front_end/testcases/general/issue37381.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue37381.dart.weak.modular.expect @@ -1,25 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - method f((self::A*) →* self::A::f::R* f) → self::A::f::R* - return f(this){(self::A*) →* self::A::f::R*}; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method f((self::A) → self::A::f::R% f) → self::A::f::R% + return f(this){(self::A) → self::A::f::R%}; } static method main() → dynamic { - self::A* a = new self::A::•(); - a.{self::A::f}((self::A* _) → core::int* => 42){((self::A*) →* core::int*) →* core::int*}; + self::A a = new self::A::•(); + a.{self::A::f}((self::A _) → core::int => 42){((self::A) → core::int) → core::int}; } diff --git a/pkg/front_end/testcases/general/issue37381.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue37381.dart.weak.outline.expect index a22155d2c67..5f942814300 100644 --- a/pkg/front_end/testcases/general/issue37381.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue37381.dart.weak.outline.expect @@ -1,22 +1,12 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A ; - method f((self::A*) →* self::A::f::R* f) → self::A::f::R* + method f((self::A) → self::A::f::R% f) → self::A::f::R% ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue37381.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue37381.dart.weak.transformed.expect index 8ec0e22984f..b0dd96ac595 100644 --- a/pkg/front_end/testcases/general/issue37381.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue37381.dart.weak.transformed.expect @@ -1,25 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - method f((self::A*) →* self::A::f::R* f) → self::A::f::R* - return f(this){(self::A*) →* self::A::f::R*}; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method f((self::A) → self::A::f::R% f) → self::A::f::R% + return f(this){(self::A) → self::A::f::R%}; } static method main() → dynamic { - self::A* a = new self::A::•(); - a.{self::A::f}((self::A* _) → core::int* => 42){((self::A*) →* core::int*) →* core::int*}; + self::A a = new self::A::•(); + a.{self::A::f}((self::A _) → core::int => 42){((self::A) → core::int) → core::int}; } diff --git a/pkg/front_end/testcases/general/issue37753.dart b/pkg/front_end/testcases/general/issue37753.dart index f653337ac13..d55dc2fba38 100644 --- a/pkg/front_end/testcases/general/issue37753.dart +++ b/pkg/front_end/testcases/general/issue37753.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart = 2.9 - // Regression test for https://github.com/dart-lang/sdk/issues/37753. // A missing piece of transform logic caused nested sync* set to a variable // to not get transformed, which would either fail an assert or crash. diff --git a/pkg/front_end/testcases/general/issue37753.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue37753.dart.textual_outline.expect index 771fd223200..959835749fe 100644 --- a/pkg/front_end/testcases/general/issue37753.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue37753.dart.textual_outline.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 Iterable getElements() sync* {} main() => print(getElements()); diff --git a/pkg/front_end/testcases/general/issue37753.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue37753.dart.textual_outline_modelled.expect index 771fd223200..959835749fe 100644 --- a/pkg/front_end/testcases/general/issue37753.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue37753.dart.textual_outline_modelled.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 Iterable getElements() sync* {} main() => print(getElements()); diff --git a/pkg/front_end/testcases/general/issue37753.dart.weak.expect b/pkg/front_end/testcases/general/issue37753.dart.weak.expect index 8ce1e9b2375..a0ac6b6b3f6 100644 --- a/pkg/front_end/testcases/general/issue37753.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue37753.dart.weak.expect @@ -1,12 +1,12 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method getElements() → core::Iterable* sync* { - core::Iterable* elements; - elements = (() → core::Iterable* sync* { +static method getElements() → core::Iterable sync* { + core::Iterable elements; + elements = (() → core::Iterable sync* { yield 7; - })(){() →* core::Iterable*}; + })(){() → core::Iterable}; yield* elements; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/issue37753.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue37753.dart.weak.modular.expect index 8ce1e9b2375..a0ac6b6b3f6 100644 --- a/pkg/front_end/testcases/general/issue37753.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue37753.dart.weak.modular.expect @@ -1,12 +1,12 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method getElements() → core::Iterable* sync* { - core::Iterable* elements; - elements = (() → core::Iterable* sync* { +static method getElements() → core::Iterable sync* { + core::Iterable elements; + elements = (() → core::Iterable sync* { yield 7; - })(){() →* core::Iterable*}; + })(){() → core::Iterable}; yield* elements; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/issue37753.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue37753.dart.weak.outline.expect index 2032eab7a8f..fa2f69047e6 100644 --- a/pkg/front_end/testcases/general/issue37753.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue37753.dart.weak.outline.expect @@ -1,8 +1,8 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method getElements() → core::Iterable* sync* +static method getElements() → core::Iterable sync* ; static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue37753.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue37753.dart.weak.transformed.expect index 73210925509..64d5279f50c 100644 --- a/pkg/front_end/testcases/general/issue37753.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue37753.dart.weak.transformed.expect @@ -1,19 +1,19 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method getElements() → core::Iterable* /* originally sync* */ { - function :sync_op_gen() → (core::_SyncIterator*, dynamic, dynamic) →* core::bool* { - core::int* :await_jump_var = 0; +static method getElements() → core::Iterable /* originally sync* */ { + function :sync_op_gen() → (core::_SyncIterator?, dynamic, dynamic) → core::bool* { + core::int :await_jump_var = 0; dynamic :await_ctx_var; - function :sync_op(core::_SyncIterator* :iterator, dynamic :exception, dynamic :stack_trace) → core::bool* yielding { + function :sync_op(core::_SyncIterator? :iterator, dynamic :exception, dynamic :stack_trace) → core::bool* yielding { { - core::Iterable* elements; - elements = (() → core::Iterable* /* originally sync* */ { - function :sync_op_gen() → (core::_SyncIterator*, dynamic, dynamic) →* core::bool* { - core::int* :await_jump_var = 0; + core::Iterable elements; + elements = (() → core::Iterable /* originally sync* */ { + function :sync_op_gen() → (core::_SyncIterator?, dynamic, dynamic) → core::bool* { + core::int :await_jump_var = 0; dynamic :await_ctx_var; - function :sync_op(core::_SyncIterator* :iterator, dynamic :exception, dynamic :stack_trace) → core::bool* yielding { + function :sync_op(core::_SyncIterator? :iterator, dynamic :exception, dynamic :stack_trace) → core::bool* yielding { { { :iterator.{core::_SyncIterator::_current} = 7; @@ -24,8 +24,8 @@ static method getElements() → core::Iterable* /* originally sync* } return :sync_op; } - return new core::_SyncIterable::•(:sync_op_gen); - })(){() →* core::Iterable*}; + return new core::_SyncIterable::•(:sync_op_gen); + })(){() → core::Iterable}; { :iterator.{core::_SyncIterator::_yieldEachIterable} = elements; [yield] true; @@ -35,7 +35,7 @@ static method getElements() → core::Iterable* /* originally sync* } return :sync_op; } - return new core::_SyncIterable::•(:sync_op_gen); + return new core::_SyncIterable::•(:sync_op_gen); } static method main() → dynamic return core::print(self::getElements()); diff --git a/pkg/front_end/testcases/general/issue37776.dart b/pkg/front_end/testcases/general/issue37776.dart index 600c1f586b5..49b4f52d562 100644 --- a/pkg/front_end/testcases/general/issue37776.dart +++ b/pkg/front_end/testcases/general/issue37776.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // This test checks that the bug reported at http://dartbug.com/37776 is fixed. class X { diff --git a/pkg/front_end/testcases/general/issue37776.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue37776.dart.textual_outline.expect index 48496d9c462..fe9bbfe750c 100644 --- a/pkg/front_end/testcases/general/issue37776.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue37776.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class X { const X.foo(); } diff --git a/pkg/front_end/testcases/general/issue37776.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue37776.dart.textual_outline_modelled.expect index 48496d9c462..fe9bbfe750c 100644 --- a/pkg/front_end/testcases/general/issue37776.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue37776.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class X { const X.foo(); } diff --git a/pkg/front_end/testcases/general/issue37776.dart.weak.expect b/pkg/front_end/testcases/general/issue37776.dart.weak.expect index 7840a4b2725..67447b585ca 100644 --- a/pkg/front_end/testcases/general/issue37776.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue37776.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,34 +17,14 @@ import self as self; import "dart:core" as core; class X#1 extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X#1* + const constructor foo() → self::X#1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X* + const constructor foo() → self::X : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → void { invalid-expression "pkg/front_end/testcases/general/issue37776.dart:16:9: Error: Couldn't find constructor 'X.foo'. diff --git a/pkg/front_end/testcases/general/issue37776.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue37776.dart.weak.modular.expect index 7840a4b2725..67447b585ca 100644 --- a/pkg/front_end/testcases/general/issue37776.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue37776.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,34 +17,14 @@ import self as self; import "dart:core" as core; class X#1 extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X#1* + const constructor foo() → self::X#1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X* + const constructor foo() → self::X : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → void { invalid-expression "pkg/front_end/testcases/general/issue37776.dart:16:9: Error: Couldn't find constructor 'X.foo'. diff --git a/pkg/front_end/testcases/general/issue37776.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue37776.dart.weak.outline.expect index 81a519a1ed6..5ed6ff84d33 100644 --- a/pkg/front_end/testcases/general/issue37776.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue37776.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -13,34 +13,14 @@ import self as self; import "dart:core" as core; class X#1 extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X#1* + const constructor foo() → self::X#1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X* + const constructor foo() → self::X : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → void ; diff --git a/pkg/front_end/testcases/general/issue37776.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue37776.dart.weak.transformed.expect index 7840a4b2725..67447b585ca 100644 --- a/pkg/front_end/testcases/general/issue37776.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue37776.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,34 +17,14 @@ import self as self; import "dart:core" as core; class X#1 extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X#1* + const constructor foo() → self::X#1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object /*hasConstConstructor*/ { - const constructor foo() → self::X* + const constructor foo() → self::X : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → void { invalid-expression "pkg/front_end/testcases/general/issue37776.dart:16:9: Error: Couldn't find constructor 'X.foo'. diff --git a/pkg/front_end/testcases/general/issue38812.dart b/pkg/front_end/testcases/general/issue38812.dart index eba2ba61887..9d26308fac1 100644 --- a/pkg/front_end/testcases/general/issue38812.dart +++ b/pkg/front_end/testcases/general/issue38812.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + typedef G = void Function(); class A>, Y extends G>> {} diff --git a/pkg/front_end/testcases/general/issue38812.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue38812.dart.textual_outline.expect index 5b18a2552e0..f69b6fcccb6 100644 --- a/pkg/front_end/testcases/general/issue38812.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue38812.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 typedef G = void Function(); class A>, Y extends G>> {} diff --git a/pkg/front_end/testcases/general/issue38812.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue38812.dart.textual_outline_modelled.expect index ef0531ca099..f0058f68b18 100644 --- a/pkg/front_end/testcases/general/issue38812.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue38812.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A>, Y extends G>> {} main() {} diff --git a/pkg/front_end/testcases/general/issue38812.dart.weak.expect b/pkg/front_end/testcases/general/issue38812.dart.weak.expect index 1bcd793c5ef..7a83fefa745 100644 --- a/pkg/front_end/testcases/general/issue38812.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue38812.dart.weak.expect @@ -1,23 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef G = () →* void; -class A extends core::Object { - synthetic constructor •() → self::A* +typedef G = () → void; +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - new self::A::•<() →* void, () →* void>(); + new self::A::•<() → void, () → void>(); } diff --git a/pkg/front_end/testcases/general/issue38812.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue38812.dart.weak.modular.expect index 1bcd793c5ef..7a83fefa745 100644 --- a/pkg/front_end/testcases/general/issue38812.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue38812.dart.weak.modular.expect @@ -1,23 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef G = () →* void; -class A extends core::Object { - synthetic constructor •() → self::A* +typedef G = () → void; +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - new self::A::•<() →* void, () →* void>(); + new self::A::•<() → void, () → void>(); } diff --git a/pkg/front_end/testcases/general/issue38812.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue38812.dart.weak.outline.expect index d9a199c6360..a50b79937c2 100644 --- a/pkg/front_end/testcases/general/issue38812.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue38812.dart.weak.outline.expect @@ -1,21 +1,11 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef G = () →* void; -class A extends core::Object { - synthetic constructor •() → self::A* +typedef G = () → void; +class A extends core::Object { + synthetic constructor •() → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue38812.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue38812.dart.weak.transformed.expect index 1bcd793c5ef..7a83fefa745 100644 --- a/pkg/front_end/testcases/general/issue38812.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue38812.dart.weak.transformed.expect @@ -1,23 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef G = () →* void; -class A extends core::Object { - synthetic constructor •() → self::A* +typedef G = () → void; +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - new self::A::•<() →* void, () →* void>(); + new self::A::•<() → void, () → void>(); } diff --git a/pkg/front_end/testcases/general/issue38938.dart b/pkg/front_end/testcases/general/issue38938.dart index ff65f62cebf..5f76015e9ca 100644 --- a/pkg/front_end/testcases/general/issue38938.dart +++ b/pkg/front_end/testcases/general/issue38938.dart @@ -1,10 +1,10 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A { - int v; - int v; + int? v; + int? v; A(this.v); A.second(); } diff --git a/pkg/front_end/testcases/general/issue38938.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue38938.dart.textual_outline.expect index 43587459a9f..65c652c0256 100644 --- a/pkg/front_end/testcases/general/issue38938.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue38938.dart.textual_outline.expect @@ -1,7 +1,6 @@ -// @dart = 2.9 class A { - int v; - int v; + int? v; + int? v; A(this.v); A.second(); } diff --git a/pkg/front_end/testcases/general/issue38938.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue38938.dart.textual_outline_modelled.expect index a1d2ccd0e81..50e19e271c1 100644 --- a/pkg/front_end/testcases/general/issue38938.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue38938.dart.textual_outline_modelled.expect @@ -1,7 +1,6 @@ -// @dart = 2.9 class A { A(this.v); A.second(); - int v; - int v; + int? v; + int? v; } diff --git a/pkg/front_end/testcases/general/issue38938.dart.weak.expect b/pkg/front_end/testcases/general/issue38938.dart.weak.expect index 2ed9c3f6dd0..6736f126c68 100644 --- a/pkg/front_end/testcases/general/issue38938.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue38938.dart.weak.expect @@ -1,13 +1,13 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue38938.dart:7:7: Error: 'v' is already declared in this scope. -// int v; -// ^ -// pkg/front_end/testcases/general/issue38938.dart:6:7: Context: Previous declaration of 'v'. -// int v; -// ^ +// pkg/front_end/testcases/general/issue38938.dart:7:8: Error: 'v' is already declared in this scope. +// int? v; +// ^ +// pkg/front_end/testcases/general/issue38938.dart:6:8: Context: Previous declaration of 'v'. +// int? v; +// ^ // // pkg/front_end/testcases/general/issue38938.dart:8:10: Error: Can't use 'v' because it is declared more than once. // A(this.v); @@ -17,23 +17,13 @@ import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* v = null; - constructor •(core::int* v) → self::A* + field core::int? v = null; + constructor •(core::int? v) → self::A : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/issue38938.dart:8:10: Error: Can't use 'v' because it is declared more than once. A(this.v); ^" ; - constructor second() → self::A* + constructor second() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue38938.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue38938.dart.weak.modular.expect index 2ed9c3f6dd0..6736f126c68 100644 --- a/pkg/front_end/testcases/general/issue38938.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue38938.dart.weak.modular.expect @@ -1,13 +1,13 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue38938.dart:7:7: Error: 'v' is already declared in this scope. -// int v; -// ^ -// pkg/front_end/testcases/general/issue38938.dart:6:7: Context: Previous declaration of 'v'. -// int v; -// ^ +// pkg/front_end/testcases/general/issue38938.dart:7:8: Error: 'v' is already declared in this scope. +// int? v; +// ^ +// pkg/front_end/testcases/general/issue38938.dart:6:8: Context: Previous declaration of 'v'. +// int? v; +// ^ // // pkg/front_end/testcases/general/issue38938.dart:8:10: Error: Can't use 'v' because it is declared more than once. // A(this.v); @@ -17,23 +17,13 @@ import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* v = null; - constructor •(core::int* v) → self::A* + field core::int? v = null; + constructor •(core::int? v) → self::A : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/issue38938.dart:8:10: Error: Can't use 'v' because it is declared more than once. A(this.v); ^" ; - constructor second() → self::A* + constructor second() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue38938.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue38938.dart.weak.outline.expect index b5f3744042a..8a6475740df 100644 --- a/pkg/front_end/testcases/general/issue38938.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue38938.dart.weak.outline.expect @@ -1,31 +1,21 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue38938.dart:7:7: Error: 'v' is already declared in this scope. -// int v; -// ^ -// pkg/front_end/testcases/general/issue38938.dart:6:7: Context: Previous declaration of 'v'. -// int v; -// ^ +// pkg/front_end/testcases/general/issue38938.dart:7:8: Error: 'v' is already declared in this scope. +// int? v; +// ^ +// pkg/front_end/testcases/general/issue38938.dart:6:8: Context: Previous declaration of 'v'. +// int? v; +// ^ // import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* v; - constructor •(core::int* v) → self::A* + field core::int? v; + constructor •(core::int? v) → self::A ; - constructor second() → self::A* + constructor second() → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue38938.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue38938.dart.weak.transformed.expect index 2ed9c3f6dd0..6736f126c68 100644 --- a/pkg/front_end/testcases/general/issue38938.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue38938.dart.weak.transformed.expect @@ -1,13 +1,13 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue38938.dart:7:7: Error: 'v' is already declared in this scope. -// int v; -// ^ -// pkg/front_end/testcases/general/issue38938.dart:6:7: Context: Previous declaration of 'v'. -// int v; -// ^ +// pkg/front_end/testcases/general/issue38938.dart:7:8: Error: 'v' is already declared in this scope. +// int? v; +// ^ +// pkg/front_end/testcases/general/issue38938.dart:6:8: Context: Previous declaration of 'v'. +// int? v; +// ^ // // pkg/front_end/testcases/general/issue38938.dart:8:10: Error: Can't use 'v' because it is declared more than once. // A(this.v); @@ -17,23 +17,13 @@ import self as self; import "dart:core" as core; class A extends core::Object { - field core::int* v = null; - constructor •(core::int* v) → self::A* + field core::int? v = null; + constructor •(core::int? v) → self::A : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/issue38938.dart:8:10: Error: Can't use 'v' because it is declared more than once. A(this.v); ^" ; - constructor second() → self::A* + constructor second() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue38943.dart b/pkg/front_end/testcases/general/issue38943.dart index 2db3c96a86f..1d86b193a11 100644 --- a/pkg/front_end/testcases/general/issue38943.dart +++ b/pkg/front_end/testcases/general/issue38943.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class D { factory D.foo() => new D._(); D._() {} diff --git a/pkg/front_end/testcases/general/issue38943.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue38943.dart.textual_outline.expect index c666e23b4a2..f78c92f40a1 100644 --- a/pkg/front_end/testcases/general/issue38943.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue38943.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class D { factory D.foo() => new D._(); D._() {} diff --git a/pkg/front_end/testcases/general/issue38943.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue38943.dart.textual_outline_modelled.expect index 3767f326bab..256c9734e63 100644 --- a/pkg/front_end/testcases/general/issue38943.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue38943.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class D { D._() {} factory D.foo() => new D._(); diff --git a/pkg/front_end/testcases/general/issue38943.dart.weak.expect b/pkg/front_end/testcases/general/issue38943.dart.weak.expect index c7234069a6e..29dd3c5721a 100644 --- a/pkg/front_end/testcases/general/issue38943.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue38943.dart.weak.expect @@ -1,23 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class D extends core::Object { - constructor _() → self::D* +class D extends core::Object { + constructor _() → self::D : super core::Object::•() {} - static factory foo() → self::D* - return new self::D::_(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static factory foo() → self::D + return new self::D::_(); } static method main() → dynamic { - core::print(self::D::foo<() →* void>()); + core::print(self::D::foo<() → void>()); } diff --git a/pkg/front_end/testcases/general/issue38943.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue38943.dart.weak.modular.expect index c7234069a6e..29dd3c5721a 100644 --- a/pkg/front_end/testcases/general/issue38943.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue38943.dart.weak.modular.expect @@ -1,23 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class D extends core::Object { - constructor _() → self::D* +class D extends core::Object { + constructor _() → self::D : super core::Object::•() {} - static factory foo() → self::D* - return new self::D::_(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static factory foo() → self::D + return new self::D::_(); } static method main() → dynamic { - core::print(self::D::foo<() →* void>()); + core::print(self::D::foo<() → void>()); } diff --git a/pkg/front_end/testcases/general/issue38943.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue38943.dart.weak.outline.expect index 7c3fcaff3ad..bc85f880069 100644 --- a/pkg/front_end/testcases/general/issue38943.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue38943.dart.weak.outline.expect @@ -1,22 +1,12 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class D extends core::Object { - constructor _() → self::D* +class D extends core::Object { + constructor _() → self::D ; - static factory foo() → self::D* + static factory foo() → self::D ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue38943.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue38943.dart.weak.transformed.expect index c7234069a6e..29dd3c5721a 100644 --- a/pkg/front_end/testcases/general/issue38943.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue38943.dart.weak.transformed.expect @@ -1,23 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class D extends core::Object { - constructor _() → self::D* +class D extends core::Object { + constructor _() → self::D : super core::Object::•() {} - static factory foo() → self::D* - return new self::D::_(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static factory foo() → self::D + return new self::D::_(); } static method main() → dynamic { - core::print(self::D::foo<() →* void>()); + core::print(self::D::foo<() → void>()); } diff --git a/pkg/front_end/testcases/general/issue38944.dart b/pkg/front_end/testcases/general/issue38944.dart index c467d0d67d4..a0b7f42d365 100644 --- a/pkg/front_end/testcases/general/issue38944.dart +++ b/pkg/front_end/testcases/general/issue38944.dart @@ -1,6 +1,6 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A {} class B extends Object with A()> {} \ No newline at end of file diff --git a/pkg/front_end/testcases/general/issue38944.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue38944.dart.textual_outline.expect index 47092eab7b6..279bc703664 100644 --- a/pkg/front_end/testcases/general/issue38944.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue38944.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A {} class B extends Object with A()> {} diff --git a/pkg/front_end/testcases/general/issue38944.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue38944.dart.textual_outline_modelled.expect index 47092eab7b6..279bc703664 100644 --- a/pkg/front_end/testcases/general/issue38944.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue38944.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A {} class B extends Object with A()> {} diff --git a/pkg/front_end/testcases/general/issue38944.dart.weak.expect b/pkg/front_end/testcases/general/issue38944.dart.weak.expect index 6ac58deb673..4f9c07cf798 100644 --- a/pkg/front_end/testcases/general/issue38944.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue38944.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -9,38 +9,18 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&A* +abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_B&Object&A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class B extends self::_B&Object&A { - synthetic constructor •() → self::B* +class B extends self::_B&Object&A { + synthetic constructor •() → self::B : super self::_B&Object&A::•() ; } diff --git a/pkg/front_end/testcases/general/issue38944.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue38944.dart.weak.modular.expect index 6ac58deb673..4f9c07cf798 100644 --- a/pkg/front_end/testcases/general/issue38944.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue38944.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -9,38 +9,18 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&A* +abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_B&Object&A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class B extends self::_B&Object&A { - synthetic constructor •() → self::B* +class B extends self::_B&Object&A { + synthetic constructor •() → self::B : super self::_B&Object&A::•() ; } diff --git a/pkg/front_end/testcases/general/issue38944.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue38944.dart.weak.outline.expect index 2ccc9723ab2..902d393232b 100644 --- a/pkg/front_end/testcases/general/issue38944.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue38944.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -9,36 +9,16 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&A* +abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_B&Object&A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class B extends self::_B&Object&A { - synthetic constructor •() → self::B* +class B extends self::_B&Object&A { + synthetic constructor •() → self::B ; } diff --git a/pkg/front_end/testcases/general/issue38944.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue38944.dart.weak.transformed.expect index 6ac58deb673..4f9c07cf798 100644 --- a/pkg/front_end/testcases/general/issue38944.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue38944.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -9,38 +9,18 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&A* +abstract class _B&Object&A extends core::Object /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_B&Object&A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class B extends self::_B&Object&A { - synthetic constructor •() → self::B* +class B extends self::_B&Object&A { + synthetic constructor •() → self::B : super self::_B&Object&A::•() ; } diff --git a/pkg/front_end/testcases/general/issue38961.dart b/pkg/front_end/testcases/general/issue38961.dart index 00864c25ee1..b98ae9458ac 100644 --- a/pkg/front_end/testcases/general/issue38961.dart +++ b/pkg/front_end/testcases/general/issue38961.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class C { dynamic x = this; var x = this; diff --git a/pkg/front_end/testcases/general/issue38961.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue38961.dart.textual_outline.expect index f67e4a58636..f38f3d33b73 100644 --- a/pkg/front_end/testcases/general/issue38961.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue38961.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class C { dynamic x = this; var x = this; diff --git a/pkg/front_end/testcases/general/issue38961.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue38961.dart.textual_outline_modelled.expect index f67e4a58636..f38f3d33b73 100644 --- a/pkg/front_end/testcases/general/issue38961.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue38961.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class C { dynamic x = this; var x = this; diff --git a/pkg/front_end/testcases/general/issue38961.dart.weak.expect b/pkg/front_end/testcases/general/issue38961.dart.weak.expect index a588600b716..0b9c61a1f8f 100644 --- a/pkg/front_end/testcases/general/issue38961.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue38961.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -22,17 +22,7 @@ import "dart:core" as core; class C extends core::Object { field dynamic x = null; - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue38961.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue38961.dart.weak.modular.expect index a588600b716..0b9c61a1f8f 100644 --- a/pkg/front_end/testcases/general/issue38961.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue38961.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -22,17 +22,7 @@ import "dart:core" as core; class C extends core::Object { field dynamic x = null; - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue38961.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue38961.dart.weak.outline.expect index 01a97d1f462..6b1474baf80 100644 --- a/pkg/front_end/testcases/general/issue38961.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue38961.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,16 +14,6 @@ import "dart:core" as core; class C extends core::Object { field dynamic x; - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue38961.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue38961.dart.weak.transformed.expect index a588600b716..0b9c61a1f8f 100644 --- a/pkg/front_end/testcases/general/issue38961.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue38961.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -22,17 +22,7 @@ import "dart:core" as core; class C extends core::Object { field dynamic x = null; - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } diff --git a/pkg/front_end/testcases/general/issue39344.dart b/pkg/front_end/testcases/general/issue39344.dart index a86b905ba03..60296319228 100644 --- a/pkg/front_end/testcases/general/issue39344.dart +++ b/pkg/front_end/testcases/general/issue39344.dart @@ -1,13 +1,13 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A {} class B extends A {} -List xs; -List> xss; +late List xs; +late List> xss; class Class { void method1a(T t) { diff --git a/pkg/front_end/testcases/general/issue39344.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue39344.dart.textual_outline.expect index 27aa1fa2ab4..baee03ed19e 100644 --- a/pkg/front_end/testcases/general/issue39344.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue39344.dart.textual_outline.expect @@ -1,10 +1,9 @@ -// @dart = 2.9 class A {} class B extends A {} -List xs; -List> xss; +late List xs; +late List> xss; class Class { void method1a(T t) {} diff --git a/pkg/front_end/testcases/general/issue39344.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue39344.dart.textual_outline_modelled.expect index bc21bced987..5eeda1dc3db 100644 --- a/pkg/front_end/testcases/general/issue39344.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue39344.dart.textual_outline_modelled.expect @@ -1,18 +1,19 @@ -// @dart = 2.9 -List xs; -List> xss; - class A {} - class B extends A {} - +---- unknown chunk starts ---- +late +---- unknown chunk ends ---- +List xs; +---- unknown chunk starts ---- +late +---- unknown chunk ends ---- +List> xss; class Class { void method1a(T t) {} void method1b(T t) {} void method2a(T t) {} void method2b(T t) {} } - void errors() {} void main() {} void throws(void Function() f) {} diff --git a/pkg/front_end/testcases/general/issue39344.dart.weak.expect b/pkg/front_end/testcases/general/issue39344.dart.weak.expect index fd2787d1df9..b41852a9274 100644 --- a/pkg/front_end/testcases/general/issue39344.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue39344.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -18,97 +18,77 @@ import self as self; import "dart:core" as core; class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super self::A::•() ; } -class Class extends core::Object { - synthetic constructor •() → self::Class* +class Class extends core::Object { + synthetic constructor •() → self::Class : super core::Object::•() ; - method method1a(covariant-by-class self::Class::T* t) → void { - if(t is self::B*) { - core::List* ys = [t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]; + method method1a(covariant-by-class self::Class::T t) → void { + if(t is{ForNonNullableByDefault} self::B) { + core::List ys = [t{self::Class::T & self::B /* '!' & '!' = '!' */}]; self::xs = invalid-expression "pkg/front_end/testcases/general/issue39344.dart:19:12: Error: A value of type 'List' can't be assigned to a variable of type 'List'. - 'List' is from 'dart:core'. - 'B' is from 'pkg/front_end/testcases/general/issue39344.dart'. xs = ys; - ^" in ys as{TypeError} core::List*; + ^" in ys as{TypeError,ForNonNullableByDefault} core::List; } } - method method1b(covariant-by-class self::Class::T* t) → void { - if(t is self::B*) { - core::List*>* yss = *>[[t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]]; + method method1b(covariant-by-class self::Class::T t) → void { + if(t is{ForNonNullableByDefault} self::B) { + core::List> yss = >[[t{self::Class::T & self::B /* '!' & '!' = '!' */}]]; self::xss = invalid-expression "pkg/front_end/testcases/general/issue39344.dart:31:13: Error: A value of type 'List>' can't be assigned to a variable of type 'List>'. - 'List' is from 'dart:core'. - 'B' is from 'pkg/front_end/testcases/general/issue39344.dart'. xss = yss; - ^" in yss as{TypeError} core::List*>*; + ^" in yss as{TypeError,ForNonNullableByDefault} core::List>; } } - method method2a(covariant-by-class self::Class::T* t) → void { + method method2a(covariant-by-class self::Class::T t) → void { dynamic alias; - if(t is self::B*) { - core::List* ys = [t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]; + if(t is{ForNonNullableByDefault} self::B) { + core::List ys = [t{self::Class::T & self::B /* '!' & '!' = '!' */}]; alias = ys; - self::xs = alias as{TypeError,ForDynamic} core::List*; + self::xs = alias as{TypeError,ForDynamic,ForNonNullableByDefault} core::List; } } - method method2b(covariant-by-class self::Class::T* t) → void { + method method2b(covariant-by-class self::Class::T t) → void { dynamic alias; - if(t is self::B*) { - core::List*>* yss = *>[[t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]]; + if(t is{ForNonNullableByDefault} self::B) { + core::List> yss = >[[t{self::Class::T & self::B /* '!' & '!' = '!' */}]]; alias = yss; - self::xss = alias as{TypeError,ForDynamic} core::List*>*; + self::xss = alias as{TypeError,ForDynamic,ForNonNullableByDefault} core::List>; } } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field core::List* xs; -static field core::List*>* xss; +late static field core::List xs; +late static field core::List> xss; static method main() → void { - self::throws(() → Null { - new self::Class::•().{self::Class::method2a}(new self::B::•()){(self::A*) →* void}; - core::print(self::xs.{core::Object::runtimeType}{core::Type*}); + self::throws(() → void { + new self::Class::•().{self::Class::method2a}(new self::B::•()){(self::A) → void}; + core::print(self::xs.{core::Object::runtimeType}{core::Type}); }); - self::throws(() → Null { - new self::Class::•().{self::Class::method2b}(new self::B::•()){(self::A*) →* void}; - core::print(self::xs.{core::Object::runtimeType}{core::Type*}); + self::throws(() → void { + new self::Class::•().{self::Class::method2b}(new self::B::•()){(self::A) → void}; + core::print(self::xs.{core::Object::runtimeType}{core::Type}); }); } static method errors() → void { - new self::Class::•().{self::Class::method1a}(new self::B::•()){(self::A*) →* void}; - new self::Class::•().{self::Class::method1b}(new self::B::•()){(self::A*) →* void}; + new self::Class::•().{self::Class::method1a}(new self::B::•()){(self::A) → void}; + new self::Class::•().{self::Class::method1b}(new self::B::•()){(self::A) → void}; } -static method throws(() →* void f) → void { +static method throws(() → void f) → void { try { - f(){() →* void}; + f(){() → void}; } - on dynamic catch(final dynamic e) { + on core::Object catch(final core::Object e) { core::print(e); return; } diff --git a/pkg/front_end/testcases/general/issue39344.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue39344.dart.weak.modular.expect index fd2787d1df9..b41852a9274 100644 --- a/pkg/front_end/testcases/general/issue39344.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue39344.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -18,97 +18,77 @@ import self as self; import "dart:core" as core; class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super self::A::•() ; } -class Class extends core::Object { - synthetic constructor •() → self::Class* +class Class extends core::Object { + synthetic constructor •() → self::Class : super core::Object::•() ; - method method1a(covariant-by-class self::Class::T* t) → void { - if(t is self::B*) { - core::List* ys = [t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]; + method method1a(covariant-by-class self::Class::T t) → void { + if(t is{ForNonNullableByDefault} self::B) { + core::List ys = [t{self::Class::T & self::B /* '!' & '!' = '!' */}]; self::xs = invalid-expression "pkg/front_end/testcases/general/issue39344.dart:19:12: Error: A value of type 'List' can't be assigned to a variable of type 'List'. - 'List' is from 'dart:core'. - 'B' is from 'pkg/front_end/testcases/general/issue39344.dart'. xs = ys; - ^" in ys as{TypeError} core::List*; + ^" in ys as{TypeError,ForNonNullableByDefault} core::List; } } - method method1b(covariant-by-class self::Class::T* t) → void { - if(t is self::B*) { - core::List*>* yss = *>[[t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]]; + method method1b(covariant-by-class self::Class::T t) → void { + if(t is{ForNonNullableByDefault} self::B) { + core::List> yss = >[[t{self::Class::T & self::B /* '!' & '!' = '!' */}]]; self::xss = invalid-expression "pkg/front_end/testcases/general/issue39344.dart:31:13: Error: A value of type 'List>' can't be assigned to a variable of type 'List>'. - 'List' is from 'dart:core'. - 'B' is from 'pkg/front_end/testcases/general/issue39344.dart'. xss = yss; - ^" in yss as{TypeError} core::List*>*; + ^" in yss as{TypeError,ForNonNullableByDefault} core::List>; } } - method method2a(covariant-by-class self::Class::T* t) → void { + method method2a(covariant-by-class self::Class::T t) → void { dynamic alias; - if(t is self::B*) { - core::List* ys = [t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]; + if(t is{ForNonNullableByDefault} self::B) { + core::List ys = [t{self::Class::T & self::B /* '!' & '!' = '!' */}]; alias = ys; - self::xs = alias as{TypeError,ForDynamic} core::List*; + self::xs = alias as{TypeError,ForDynamic,ForNonNullableByDefault} core::List; } } - method method2b(covariant-by-class self::Class::T* t) → void { + method method2b(covariant-by-class self::Class::T t) → void { dynamic alias; - if(t is self::B*) { - core::List*>* yss = *>[[t{self::Class::T* & self::B* /* '*' & '*' = '*' */}]]; + if(t is{ForNonNullableByDefault} self::B) { + core::List> yss = >[[t{self::Class::T & self::B /* '!' & '!' = '!' */}]]; alias = yss; - self::xss = alias as{TypeError,ForDynamic} core::List*>*; + self::xss = alias as{TypeError,ForDynamic,ForNonNullableByDefault} core::List>; } } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field core::List* xs; -static field core::List*>* xss; +late static field core::List xs; +late static field core::List> xss; static method main() → void { - self::throws(() → Null { - new self::Class::•().{self::Class::method2a}(new self::B::•()){(self::A*) →* void}; - core::print(self::xs.{core::Object::runtimeType}{core::Type*}); + self::throws(() → void { + new self::Class::•().{self::Class::method2a}(new self::B::•()){(self::A) → void}; + core::print(self::xs.{core::Object::runtimeType}{core::Type}); }); - self::throws(() → Null { - new self::Class::•().{self::Class::method2b}(new self::B::•()){(self::A*) →* void}; - core::print(self::xs.{core::Object::runtimeType}{core::Type*}); + self::throws(() → void { + new self::Class::•().{self::Class::method2b}(new self::B::•()){(self::A) → void}; + core::print(self::xs.{core::Object::runtimeType}{core::Type}); }); } static method errors() → void { - new self::Class::•().{self::Class::method1a}(new self::B::•()){(self::A*) →* void}; - new self::Class::•().{self::Class::method1b}(new self::B::•()){(self::A*) →* void}; + new self::Class::•().{self::Class::method1a}(new self::B::•()){(self::A) → void}; + new self::Class::•().{self::Class::method1b}(new self::B::•()){(self::A) → void}; } -static method throws(() →* void f) → void { +static method throws(() → void f) → void { try { - f(){() →* void}; + f(){() → void}; } - on dynamic catch(final dynamic e) { + on core::Object catch(final core::Object e) { core::print(e); return; } diff --git a/pkg/front_end/testcases/general/issue39344.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue39344.dart.weak.outline.expect index 49bc2e65ca6..463057fa310 100644 --- a/pkg/front_end/testcases/general/issue39344.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue39344.dart.weak.outline.expect @@ -1,52 +1,32 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B ; } -class Class extends core::Object { - synthetic constructor •() → self::Class* +class Class extends core::Object { + synthetic constructor •() → self::Class ; - method method1a(covariant-by-class self::Class::T* t) → void + method method1a(covariant-by-class self::Class::T t) → void ; - method method1b(covariant-by-class self::Class::T* t) → void + method method1b(covariant-by-class self::Class::T t) → void ; - method method2a(covariant-by-class self::Class::T* t) → void + method method2a(covariant-by-class self::Class::T t) → void ; - method method2b(covariant-by-class self::Class::T* t) → void + method method2b(covariant-by-class self::Class::T t) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field core::List* xs; -static field core::List*>* xss; +late static field core::List xs; +late static field core::List> xss; static method main() → void ; static method errors() → void ; -static method throws(() →* void f) → void +static method throws(() → void f) → void ; diff --git a/pkg/front_end/testcases/general/issue39344.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue39344.dart.weak.transformed.expect index 0e2b84718b0..8febbfefc7b 100644 --- a/pkg/front_end/testcases/general/issue39344.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue39344.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -18,97 +18,77 @@ import self as self; import "dart:core" as core; class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super self::A::•() ; } -class Class extends core::Object { - synthetic constructor •() → self::Class* +class Class extends core::Object { + synthetic constructor •() → self::Class : super core::Object::•() ; - method method1a(covariant-by-class self::Class::T* t) → void { - if(t is self::B*) { - core::List* ys = core::_GrowableList::_literal1(t{self::Class::T* & self::B* /* '*' & '*' = '*' */}); + method method1a(covariant-by-class self::Class::T t) → void { + if(t is{ForNonNullableByDefault} self::B) { + core::List ys = core::_GrowableList::_literal1(t{self::Class::T & self::B /* '!' & '!' = '!' */}); self::xs = invalid-expression "pkg/front_end/testcases/general/issue39344.dart:19:12: Error: A value of type 'List' can't be assigned to a variable of type 'List'. - 'List' is from 'dart:core'. - 'B' is from 'pkg/front_end/testcases/general/issue39344.dart'. xs = ys; - ^" in ys as{TypeError} core::List*; + ^" in ys as{TypeError,ForNonNullableByDefault} core::List; } } - method method1b(covariant-by-class self::Class::T* t) → void { - if(t is self::B*) { - core::List*>* yss = core::_GrowableList::_literal1*>(core::_GrowableList::_literal1(t{self::Class::T* & self::B* /* '*' & '*' = '*' */})); + method method1b(covariant-by-class self::Class::T t) → void { + if(t is{ForNonNullableByDefault} self::B) { + core::List> yss = core::_GrowableList::_literal1>(core::_GrowableList::_literal1(t{self::Class::T & self::B /* '!' & '!' = '!' */})); self::xss = invalid-expression "pkg/front_end/testcases/general/issue39344.dart:31:13: Error: A value of type 'List>' can't be assigned to a variable of type 'List>'. - 'List' is from 'dart:core'. - 'B' is from 'pkg/front_end/testcases/general/issue39344.dart'. xss = yss; - ^" in yss as{TypeError} core::List*>*; + ^" in yss as{TypeError,ForNonNullableByDefault} core::List>; } } - method method2a(covariant-by-class self::Class::T* t) → void { + method method2a(covariant-by-class self::Class::T t) → void { dynamic alias; - if(t is self::B*) { - core::List* ys = core::_GrowableList::_literal1(t{self::Class::T* & self::B* /* '*' & '*' = '*' */}); + if(t is{ForNonNullableByDefault} self::B) { + core::List ys = core::_GrowableList::_literal1(t{self::Class::T & self::B /* '!' & '!' = '!' */}); alias = ys; - self::xs = alias as{TypeError,ForDynamic} core::List*; + self::xs = alias as{TypeError,ForDynamic,ForNonNullableByDefault} core::List; } } - method method2b(covariant-by-class self::Class::T* t) → void { + method method2b(covariant-by-class self::Class::T t) → void { dynamic alias; - if(t is self::B*) { - core::List*>* yss = core::_GrowableList::_literal1*>(core::_GrowableList::_literal1(t{self::Class::T* & self::B* /* '*' & '*' = '*' */})); + if(t is{ForNonNullableByDefault} self::B) { + core::List> yss = core::_GrowableList::_literal1>(core::_GrowableList::_literal1(t{self::Class::T & self::B /* '!' & '!' = '!' */})); alias = yss; - self::xss = alias as{TypeError,ForDynamic} core::List*>*; + self::xss = alias as{TypeError,ForDynamic,ForNonNullableByDefault} core::List>; } } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field core::List* xs; -static field core::List*>* xss; +late static field core::List xs; +late static field core::List> xss; static method main() → void { - self::throws(() → Null { - new self::Class::•().{self::Class::method2a}(new self::B::•()){(self::A*) →* void}; - core::print(self::xs.{core::Object::runtimeType}{core::Type*}); + self::throws(() → void { + new self::Class::•().{self::Class::method2a}(new self::B::•()){(self::A) → void}; + core::print(self::xs.{core::Object::runtimeType}{core::Type}); }); - self::throws(() → Null { - new self::Class::•().{self::Class::method2b}(new self::B::•()){(self::A*) →* void}; - core::print(self::xs.{core::Object::runtimeType}{core::Type*}); + self::throws(() → void { + new self::Class::•().{self::Class::method2b}(new self::B::•()){(self::A) → void}; + core::print(self::xs.{core::Object::runtimeType}{core::Type}); }); } static method errors() → void { - new self::Class::•().{self::Class::method1a}(new self::B::•()){(self::A*) →* void}; - new self::Class::•().{self::Class::method1b}(new self::B::•()){(self::A*) →* void}; + new self::Class::•().{self::Class::method1a}(new self::B::•()){(self::A) → void}; + new self::Class::•().{self::Class::method1b}(new self::B::•()){(self::A) → void}; } -static method throws(() →* void f) → void { +static method throws(() → void f) → void { try { - f(){() →* void}; + f(){() → void}; } - on dynamic catch(final dynamic e) { + on core::Object catch(final core::Object e) { core::print(e); return; } diff --git a/pkg/front_end/testcases/general/issue39421.dart b/pkg/front_end/testcases/general/issue39421.dart index e91ce36dbd5..e83ee287def 100644 --- a/pkg/front_end/testcases/general/issue39421.dart +++ b/pkg/front_end/testcases/general/issue39421.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // This is a regression test for http://dartbug.com/39421. class A {} diff --git a/pkg/front_end/testcases/general/issue39421.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue39421.dart.textual_outline.expect index 57219b5bfce..8ac9791bc4f 100644 --- a/pkg/front_end/testcases/general/issue39421.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue39421.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A {} class A {} diff --git a/pkg/front_end/testcases/general/issue39421.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue39421.dart.textual_outline_modelled.expect index 57219b5bfce..8ac9791bc4f 100644 --- a/pkg/front_end/testcases/general/issue39421.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue39421.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A {} class A {} diff --git a/pkg/front_end/testcases/general/issue39421.dart.weak.expect b/pkg/front_end/testcases/general/issue39421.dart.weak.expect index cb1d71ad24a..8c5950da863 100644 --- a/pkg/front_end/testcases/general/issue39421.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue39421.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -24,55 +24,25 @@ import self as self; import "dart:core" as core; class A#1 extends core::Object { - synthetic constructor •() → self::A#1* + synthetic constructor •() → self::A#1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - method foo(core::List* a) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method foo(core::List a) → dynamic {} } class C extends self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::B::•() ; - method foo(core::List* a) → dynamic {} + method foo(core::List a) → dynamic {} } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue39421.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue39421.dart.weak.modular.expect index cb1d71ad24a..8c5950da863 100644 --- a/pkg/front_end/testcases/general/issue39421.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue39421.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -24,55 +24,25 @@ import self as self; import "dart:core" as core; class A#1 extends core::Object { - synthetic constructor •() → self::A#1* + synthetic constructor •() → self::A#1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - method foo(core::List* a) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method foo(core::List a) → dynamic {} } class C extends self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::B::•() ; - method foo(core::List* a) → dynamic {} + method foo(core::List a) → dynamic {} } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue39421.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue39421.dart.weak.outline.expect index 7f2378b2dc2..6e45e4e1f80 100644 --- a/pkg/front_end/testcases/general/issue39421.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue39421.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -20,53 +20,23 @@ import self as self; import "dart:core" as core; class A#1 extends core::Object { - synthetic constructor •() → self::A#1* + synthetic constructor •() → self::A#1 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B ; - method foo(core::List* a) → dynamic + method foo(core::List a) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; - method foo(core::List* a) → dynamic + method foo(core::List a) → dynamic ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/issue39421.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue39421.dart.weak.transformed.expect index cb1d71ad24a..8c5950da863 100644 --- a/pkg/front_end/testcases/general/issue39421.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue39421.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -24,55 +24,25 @@ import self as self; import "dart:core" as core; class A#1 extends core::Object { - synthetic constructor •() → self::A#1* + synthetic constructor •() → self::A#1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - method foo(core::List* a) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method foo(core::List a) → dynamic {} } class C extends self::B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::B::•() ; - method foo(core::List* a) → dynamic {} + method foo(core::List a) → dynamic {} } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue39817.dart b/pkg/front_end/testcases/general/issue39817.dart index aba9ee1c781..6dcfcce94dd 100644 --- a/pkg/front_end/testcases/general/issue39817.dart +++ b/pkg/front_end/testcases/general/issue39817.dart @@ -1,7 +1,9 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + // This is a regression test for http://dartbug.com/39817. foo() { diff --git a/pkg/front_end/testcases/general/issue40242.dart b/pkg/front_end/testcases/general/issue40242.dart index 1e4a8369ba9..afd8f7338a0 100644 --- a/pkg/front_end/testcases/general/issue40242.dart +++ b/pkg/front_end/testcases/general/issue40242.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class C {} extension E on C { diff --git a/pkg/front_end/testcases/general/issue40242.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue40242.dart.textual_outline.expect index b5194c103fb..4b76f91a5d4 100644 --- a/pkg/front_end/testcases/general/issue40242.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue40242.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class C {} extension E on C { diff --git a/pkg/front_end/testcases/general/issue40242.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue40242.dart.textual_outline_modelled.expect index 519f8afda56..91844c5e8f5 100644 --- a/pkg/front_end/testcases/general/issue40242.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue40242.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class C {} errors() {} diff --git a/pkg/front_end/testcases/general/issue40242.dart.weak.expect b/pkg/front_end/testcases/general/issue40242.dart.weak.expect index 69ece96a607..cd16aaef4a5 100644 --- a/pkg/front_end/testcases/general/issue40242.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue40242.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -26,40 +26,30 @@ import self as self; import "dart:core" as core; class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -extension E on self::C* { +extension E on self::C { method errors = self::E|errors; tearoff errors = self::E|get#errors; } -static method E|errors(lowered final self::C* #this) → dynamic { +static method E|errors(lowered final self::C #this) → dynamic { invalid-expression "pkg/front_end/testcases/general/issue40242.dart:9:5: Error: Can't assign to 'this'. this = new C(); ^^^^"; } -static method E|get#errors(lowered final self::C* #this) → () →* dynamic +static method E|get#errors(lowered final self::C #this) → () → dynamic return () → dynamic => self::E|errors(#this); static method errors() → dynamic { - final self::C* c1 = new self::C::•(); + final self::C c1 = new self::C::•(); invalid-expression "pkg/front_end/testcases/general/issue40242.dart:15:3: Error: Can't assign to the final variable 'c1'. c1 = new C(); ^^"; invalid-expression "pkg/front_end/testcases/general/issue40242.dart:16:3: Error: Can't assign to a type literal. C = Object; ^"; - self::C* c2; + self::C c2; invalid-expression "pkg/front_end/testcases/general/issue40242.dart:18:6: Error: Can't assign to a parenthesized expression. (c2) = new C(); ^"; diff --git a/pkg/front_end/testcases/general/issue40242.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue40242.dart.weak.modular.expect index 69ece96a607..cd16aaef4a5 100644 --- a/pkg/front_end/testcases/general/issue40242.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue40242.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -26,40 +26,30 @@ import self as self; import "dart:core" as core; class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -extension E on self::C* { +extension E on self::C { method errors = self::E|errors; tearoff errors = self::E|get#errors; } -static method E|errors(lowered final self::C* #this) → dynamic { +static method E|errors(lowered final self::C #this) → dynamic { invalid-expression "pkg/front_end/testcases/general/issue40242.dart:9:5: Error: Can't assign to 'this'. this = new C(); ^^^^"; } -static method E|get#errors(lowered final self::C* #this) → () →* dynamic +static method E|get#errors(lowered final self::C #this) → () → dynamic return () → dynamic => self::E|errors(#this); static method errors() → dynamic { - final self::C* c1 = new self::C::•(); + final self::C c1 = new self::C::•(); invalid-expression "pkg/front_end/testcases/general/issue40242.dart:15:3: Error: Can't assign to the final variable 'c1'. c1 = new C(); ^^"; invalid-expression "pkg/front_end/testcases/general/issue40242.dart:16:3: Error: Can't assign to a type literal. C = Object; ^"; - self::C* c2; + self::C c2; invalid-expression "pkg/front_end/testcases/general/issue40242.dart:18:6: Error: Can't assign to a parenthesized expression. (c2) = new C(); ^"; diff --git a/pkg/front_end/testcases/general/issue40242.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue40242.dart.weak.outline.expect index 09336b00a37..98b7dfa2176 100644 --- a/pkg/front_end/testcases/general/issue40242.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue40242.dart.weak.outline.expect @@ -1,28 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -extension E on self::C* { +extension E on self::C { method errors = self::E|errors; tearoff errors = self::E|get#errors; } -static method E|errors(lowered final self::C* #this) → dynamic +static method E|errors(lowered final self::C #this) → dynamic ; -static method E|get#errors(lowered final self::C* #this) → () →* dynamic +static method E|get#errors(lowered final self::C #this) → () → dynamic return () → dynamic => self::E|errors(#this); static method errors() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue40242.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue40242.dart.weak.transformed.expect index 69ece96a607..cd16aaef4a5 100644 --- a/pkg/front_end/testcases/general/issue40242.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue40242.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -26,40 +26,30 @@ import self as self; import "dart:core" as core; class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -extension E on self::C* { +extension E on self::C { method errors = self::E|errors; tearoff errors = self::E|get#errors; } -static method E|errors(lowered final self::C* #this) → dynamic { +static method E|errors(lowered final self::C #this) → dynamic { invalid-expression "pkg/front_end/testcases/general/issue40242.dart:9:5: Error: Can't assign to 'this'. this = new C(); ^^^^"; } -static method E|get#errors(lowered final self::C* #this) → () →* dynamic +static method E|get#errors(lowered final self::C #this) → () → dynamic return () → dynamic => self::E|errors(#this); static method errors() → dynamic { - final self::C* c1 = new self::C::•(); + final self::C c1 = new self::C::•(); invalid-expression "pkg/front_end/testcases/general/issue40242.dart:15:3: Error: Can't assign to the final variable 'c1'. c1 = new C(); ^^"; invalid-expression "pkg/front_end/testcases/general/issue40242.dart:16:3: Error: Can't assign to a type literal. C = Object; ^"; - self::C* c2; + self::C c2; invalid-expression "pkg/front_end/testcases/general/issue40242.dart:18:6: Error: Can't assign to a parenthesized expression. (c2) = new C(); ^"; diff --git a/pkg/front_end/testcases/general/issue40428.dart b/pkg/front_end/testcases/general/issue40428.dart index 1fc3e08f416..f24cb23a19b 100644 --- a/pkg/front_end/testcases/general/issue40428.dart +++ b/pkg/front_end/testcases/general/issue40428.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + abstract class SuperClass1 { final String value; diff --git a/pkg/front_end/testcases/general/issue40428.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue40428.dart.textual_outline.expect index 8fdd117b7fc..450857005a8 100644 --- a/pkg/front_end/testcases/general/issue40428.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue40428.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class SuperClass1 { final String value; SuperClass1(this.value); diff --git a/pkg/front_end/testcases/general/issue40428.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue40428.dart.textual_outline_modelled.expect index b87094bbe17..b9d7f4f065b 100644 --- a/pkg/front_end/testcases/general/issue40428.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue40428.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class SuperClass1 { SuperClass1(this.value); final String value; diff --git a/pkg/front_end/testcases/general/issue40428.dart.weak.expect b/pkg/front_end/testcases/general/issue40428.dart.weak.expect index d89d3085d0a..d9be0ec8977 100644 --- a/pkg/front_end/testcases/general/issue40428.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue40428.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,59 +14,29 @@ import self as self; import "dart:core" as core; abstract class SuperClass1 extends core::Object { - final field core::String* value; - constructor •(core::String* value) → self::SuperClass1* + final field core::String value; + constructor •(core::String value) → self::SuperClass1 : self::SuperClass1::value = value, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class SuperClass2 extends core::Object { - final field core::String* value; - constructor •(core::String* i) → self::SuperClass2* + final field core::String value; + constructor •(core::String i) → self::SuperClass2 : self::SuperClass2::value = i, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NamedMixin1 = self::SuperClass1 with self::Mixin { - synthetic constructor •(core::String* value) → self::NamedMixin1* + synthetic constructor •(core::String value) → self::NamedMixin1 : super self::SuperClass1::•(value) ; } class NamedMixin2 = self::SuperClass2 with self::Mixin { - synthetic constructor •(core::String* i) → self::NamedMixin2* + synthetic constructor •(core::String i) → self::NamedMixin2 : super self::SuperClass2::•(i) ; } @@ -77,8 +47,8 @@ static method main() → void { static method errors() → dynamic { new self::NamedMixin1::•(invalid-expression "pkg/front_end/testcases/general/issue40428.dart:28:19: Error: The argument type 'int' can't be assigned to the parameter type 'String'. new NamedMixin1(0); - ^" in 0 as{TypeError} core::String*); + ^" in 0 as{TypeError,ForNonNullableByDefault} core::String); new self::NamedMixin2::•(invalid-expression "pkg/front_end/testcases/general/issue40428.dart:29:19: Error: The argument type 'int' can't be assigned to the parameter type 'String'. new NamedMixin2(0); - ^" in 0 as{TypeError} core::String*); + ^" in 0 as{TypeError,ForNonNullableByDefault} core::String); } diff --git a/pkg/front_end/testcases/general/issue40428.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue40428.dart.weak.modular.expect index d89d3085d0a..d9be0ec8977 100644 --- a/pkg/front_end/testcases/general/issue40428.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue40428.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,59 +14,29 @@ import self as self; import "dart:core" as core; abstract class SuperClass1 extends core::Object { - final field core::String* value; - constructor •(core::String* value) → self::SuperClass1* + final field core::String value; + constructor •(core::String value) → self::SuperClass1 : self::SuperClass1::value = value, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class SuperClass2 extends core::Object { - final field core::String* value; - constructor •(core::String* i) → self::SuperClass2* + final field core::String value; + constructor •(core::String i) → self::SuperClass2 : self::SuperClass2::value = i, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NamedMixin1 = self::SuperClass1 with self::Mixin { - synthetic constructor •(core::String* value) → self::NamedMixin1* + synthetic constructor •(core::String value) → self::NamedMixin1 : super self::SuperClass1::•(value) ; } class NamedMixin2 = self::SuperClass2 with self::Mixin { - synthetic constructor •(core::String* i) → self::NamedMixin2* + synthetic constructor •(core::String i) → self::NamedMixin2 : super self::SuperClass2::•(i) ; } @@ -77,8 +47,8 @@ static method main() → void { static method errors() → dynamic { new self::NamedMixin1::•(invalid-expression "pkg/front_end/testcases/general/issue40428.dart:28:19: Error: The argument type 'int' can't be assigned to the parameter type 'String'. new NamedMixin1(0); - ^" in 0 as{TypeError} core::String*); + ^" in 0 as{TypeError,ForNonNullableByDefault} core::String); new self::NamedMixin2::•(invalid-expression "pkg/front_end/testcases/general/issue40428.dart:29:19: Error: The argument type 'int' can't be assigned to the parameter type 'String'. new NamedMixin2(0); - ^" in 0 as{TypeError} core::String*); + ^" in 0 as{TypeError,ForNonNullableByDefault} core::String); } diff --git a/pkg/front_end/testcases/general/issue40428.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue40428.dart.weak.outline.expect index 3194a2a6b18..500d223f07d 100644 --- a/pkg/front_end/testcases/general/issue40428.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue40428.dart.weak.outline.expect @@ -1,58 +1,28 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class SuperClass1 extends core::Object { - final field core::String* value; - constructor •(core::String* value) → self::SuperClass1* + final field core::String value; + constructor •(core::String value) → self::SuperClass1 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class SuperClass2 extends core::Object { - final field core::String* value; - constructor •(core::String* i) → self::SuperClass2* + final field core::String value; + constructor •(core::String i) → self::SuperClass2 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NamedMixin1 = self::SuperClass1 with self::Mixin { - synthetic constructor •(core::String* value) → self::NamedMixin1* + synthetic constructor •(core::String value) → self::NamedMixin1 : super self::SuperClass1::•(value) ; } class NamedMixin2 = self::SuperClass2 with self::Mixin { - synthetic constructor •(core::String* i) → self::NamedMixin2* + synthetic constructor •(core::String i) → self::NamedMixin2 : super self::SuperClass2::•(i) ; } diff --git a/pkg/front_end/testcases/general/issue40428.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue40428.dart.weak.transformed.expect index 5bc89f55af4..4ef294b8e4c 100644 --- a/pkg/front_end/testcases/general/issue40428.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue40428.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,59 +14,29 @@ import self as self; import "dart:core" as core; abstract class SuperClass1 extends core::Object { - final field core::String* value; - constructor •(core::String* value) → self::SuperClass1* + final field core::String value; + constructor •(core::String value) → self::SuperClass1 : self::SuperClass1::value = value, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class SuperClass2 extends core::Object { - final field core::String* value; - constructor •(core::String* i) → self::SuperClass2* + final field core::String value; + constructor •(core::String i) → self::SuperClass2 : self::SuperClass2::value = i, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NamedMixin1 extends self::SuperClass1 implements self::Mixin /*isEliminatedMixin*/ { - synthetic constructor •(core::String* value) → self::NamedMixin1* + synthetic constructor •(core::String value) → self::NamedMixin1 : super self::SuperClass1::•(value) ; } class NamedMixin2 extends self::SuperClass2 implements self::Mixin /*isEliminatedMixin*/ { - synthetic constructor •(core::String* i) → self::NamedMixin2* + synthetic constructor •(core::String i) → self::NamedMixin2 : super self::SuperClass2::•(i) ; } @@ -77,8 +47,8 @@ static method main() → void { static method errors() → dynamic { new self::NamedMixin1::•(invalid-expression "pkg/front_end/testcases/general/issue40428.dart:28:19: Error: The argument type 'int' can't be assigned to the parameter type 'String'. new NamedMixin1(0); - ^" in 0 as{TypeError} core::String*); + ^" in 0 as{TypeError,ForNonNullableByDefault} core::String); new self::NamedMixin2::•(invalid-expression "pkg/front_end/testcases/general/issue40428.dart:29:19: Error: The argument type 'int' can't be assigned to the parameter type 'String'. new NamedMixin2(0); - ^" in 0 as{TypeError} core::String*); + ^" in 0 as{TypeError,ForNonNullableByDefault} core::String); } diff --git a/pkg/front_end/testcases/general/issue40662.dart b/pkg/front_end/testcases/general/issue40662.dart index fba166b816f..a1889fad2c2 100644 --- a/pkg/front_end/testcases/general/issue40662.dart +++ b/pkg/front_end/testcases/general/issue40662.dart @@ -1,11 +1,11 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// -// Regression test for https://github.com/dart-lang/sdk/issues/40662. // @dart=2.9 +// Regression test for https://github.com/dart-lang/sdk/issues/40662. + bar(int a, List b) { expect(-1, a); expect(-1, (b[0] - 2)); diff --git a/pkg/front_end/testcases/general/issue40744.dart b/pkg/front_end/testcases/general/issue40744.dart index 009149fdad5..3d0dbc4e7a8 100644 --- a/pkg/front_end/testcases/general/issue40744.dart +++ b/pkg/front_end/testcases/general/issue40744.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + const generatorConfigDefaultJson = {'a': 1}; void helper(Map input) { diff --git a/pkg/front_end/testcases/general/issue40744.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue40744.dart.textual_outline.expect index fbd3bb39313..dd27ae650ba 100644 --- a/pkg/front_end/testcases/general/issue40744.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue40744.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 const generatorConfigDefaultJson = {'a': 1}; void helper(Map input) {} void main() {} diff --git a/pkg/front_end/testcases/general/issue40744.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue40744.dart.textual_outline_modelled.expect index fbd3bb39313..dd27ae650ba 100644 --- a/pkg/front_end/testcases/general/issue40744.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue40744.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 const generatorConfigDefaultJson = {'a': 1}; void helper(Map input) {} void main() {} diff --git a/pkg/front_end/testcases/general/issue40744.dart.weak.expect b/pkg/front_end/testcases/general/issue40744.dart.weak.expect index cab859396cf..ccb4fb1ed87 100644 --- a/pkg/front_end/testcases/general/issue40744.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue40744.dart.weak.expect @@ -1,13 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static const field core::Map* generatorConfigDefaultJson = #C3; -static method helper(core::Map* input) → void { +static const field core::Map generatorConfigDefaultJson = #C3; +static method helper(core::Map input) → void { core::print(input); } static method main() → void { - final core::Map* nullValueMap = core::Map::fromEntries(#C3.{core::Map::entries}{core::Iterable*>*}.{core::Iterable::map}*>((core::MapEntry* e) → core::MapEntry* => new core::MapEntry::_(e.{core::MapEntry::key}{core::String*}, null)){((core::MapEntry*) →* core::MapEntry*) →* core::Iterable*>*}); + final core::Map nullValueMap = core::Map::fromEntries(#C3.{core::Map::entries}{core::Iterable>}.{core::Iterable::map}>((core::MapEntry e) → core::MapEntry => new core::MapEntry::_(e.{core::MapEntry::key}{core::String}, null)){((core::MapEntry) → core::MapEntry) → core::Iterable>}); self::helper(nullValueMap); } diff --git a/pkg/front_end/testcases/general/issue40744.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue40744.dart.weak.modular.expect index cab859396cf..ccb4fb1ed87 100644 --- a/pkg/front_end/testcases/general/issue40744.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue40744.dart.weak.modular.expect @@ -1,13 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static const field core::Map* generatorConfigDefaultJson = #C3; -static method helper(core::Map* input) → void { +static const field core::Map generatorConfigDefaultJson = #C3; +static method helper(core::Map input) → void { core::print(input); } static method main() → void { - final core::Map* nullValueMap = core::Map::fromEntries(#C3.{core::Map::entries}{core::Iterable*>*}.{core::Iterable::map}*>((core::MapEntry* e) → core::MapEntry* => new core::MapEntry::_(e.{core::MapEntry::key}{core::String*}, null)){((core::MapEntry*) →* core::MapEntry*) →* core::Iterable*>*}); + final core::Map nullValueMap = core::Map::fromEntries(#C3.{core::Map::entries}{core::Iterable>}.{core::Iterable::map}>((core::MapEntry e) → core::MapEntry => new core::MapEntry::_(e.{core::MapEntry::key}{core::String}, null)){((core::MapEntry) → core::MapEntry) → core::Iterable>}); self::helper(nullValueMap); } diff --git a/pkg/front_end/testcases/general/issue40744.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue40744.dart.weak.outline.expect index 5acf79e80ed..6391fcba2c6 100644 --- a/pkg/front_end/testcases/general/issue40744.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue40744.dart.weak.outline.expect @@ -1,9 +1,9 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static const field core::Map* generatorConfigDefaultJson = const {"a": 1}; -static method helper(core::Map* input) → void +static const field core::Map generatorConfigDefaultJson = const {"a": 1}; +static method helper(core::Map input) → void ; static method main() → void ; diff --git a/pkg/front_end/testcases/general/issue40744.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue40744.dart.weak.transformed.expect index cab859396cf..ccb4fb1ed87 100644 --- a/pkg/front_end/testcases/general/issue40744.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue40744.dart.weak.transformed.expect @@ -1,13 +1,13 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static const field core::Map* generatorConfigDefaultJson = #C3; -static method helper(core::Map* input) → void { +static const field core::Map generatorConfigDefaultJson = #C3; +static method helper(core::Map input) → void { core::print(input); } static method main() → void { - final core::Map* nullValueMap = core::Map::fromEntries(#C3.{core::Map::entries}{core::Iterable*>*}.{core::Iterable::map}*>((core::MapEntry* e) → core::MapEntry* => new core::MapEntry::_(e.{core::MapEntry::key}{core::String*}, null)){((core::MapEntry*) →* core::MapEntry*) →* core::Iterable*>*}); + final core::Map nullValueMap = core::Map::fromEntries(#C3.{core::Map::entries}{core::Iterable>}.{core::Iterable::map}>((core::MapEntry e) → core::MapEntry => new core::MapEntry::_(e.{core::MapEntry::key}{core::String}, null)){((core::MapEntry) → core::MapEntry) → core::Iterable>}); self::helper(nullValueMap); } diff --git a/pkg/front_end/testcases/general/issue40982.dart b/pkg/front_end/testcases/general/issue40982.dart index 814de111f3c..ed06fc307ad 100644 --- a/pkg/front_end/testcases/general/issue40982.dart +++ b/pkg/front_end/testcases/general/issue40982.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A { const A(); } diff --git a/pkg/front_end/testcases/general/issue40982.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue40982.dart.textual_outline.expect index 0e31b42a393..d0c04bf6c0a 100644 --- a/pkg/front_end/testcases/general/issue40982.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue40982.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A { const A(); } diff --git a/pkg/front_end/testcases/general/issue40982.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue40982.dart.textual_outline_modelled.expect index 155c7751578..eeaccee2e3d 100644 --- a/pkg/front_end/testcases/general/issue40982.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue40982.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A { const A(); } diff --git a/pkg/front_end/testcases/general/issue40982.dart.weak.expect b/pkg/front_end/testcases/general/issue40982.dart.weak.expect index 9eb651c9ead..ddecd504496 100644 --- a/pkg/front_end/testcases/general/issue40982.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue40982.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,91 +14,61 @@ import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::A* + const constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object /*isMixinDeclaration*/ { - static const field core::int* value = #C1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static const field core::int value = #C1; } abstract class _C1&A&B = self::A with self::B /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C1&A&B* + const synthetic constructor •() → self::_C1&A&B : super self::A::•() ; } class C1 extends self::_C1&A&B /*hasConstConstructor*/ { - const constructor •() → self::C1* + const constructor •() → self::C1 : super self::_C1&A&B::•() ; } class C2 = self::A with self::B /*hasConstConstructor*/ { - const synthetic constructor •() → self::C2* + const synthetic constructor •() → self::C2 : super self::A::•() ; } class C3 extends self::C2 /*hasConstConstructor*/ { - const constructor •() → self::C3* + const constructor •() → self::C3 : super self::C2::•() ; } abstract class D extends core::Object /*isMixinDeclaration*/ { - field core::int* value = 1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + field core::int value = 1; } abstract class _E1&A&D = self::A with self::D /*isAnonymousMixin*/ { - synthetic constructor •() → self::_E1&A&D* + synthetic constructor •() → self::_E1&A&D : super self::A::•() ; - mixin-super-stub get value() → core::int* + mixin-super-stub get value() → core::int return super.{self::D::value}; - mixin-super-stub set value(core::int* value) → void + mixin-super-stub set value(core::int value) → void return super.{self::D::value} = value; } class E1 extends self::_E1&A&D /*hasConstConstructor*/ { - const constructor •() → self::E1* + const constructor •() → self::E1 : super self::_E1&A&D::•() ; } class E2 = self::A with self::D { - synthetic constructor •() → self::E2* + synthetic constructor •() → self::E2 : super self::A::•() ; - mixin-super-stub get value() → core::int* + mixin-super-stub get value() → core::int return super.{self::D::value}; - mixin-super-stub set value(core::int* value) → void + mixin-super-stub set value(core::int value) → void return super.{self::D::value} = value; } class E3 extends self::E2 /*hasConstConstructor*/ { - const constructor •() → self::E3* + const constructor •() → self::E3 : super self::E2::•() ; } diff --git a/pkg/front_end/testcases/general/issue40982.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue40982.dart.weak.modular.expect index 9eb651c9ead..ddecd504496 100644 --- a/pkg/front_end/testcases/general/issue40982.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue40982.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,91 +14,61 @@ import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::A* + const constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object /*isMixinDeclaration*/ { - static const field core::int* value = #C1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static const field core::int value = #C1; } abstract class _C1&A&B = self::A with self::B /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C1&A&B* + const synthetic constructor •() → self::_C1&A&B : super self::A::•() ; } class C1 extends self::_C1&A&B /*hasConstConstructor*/ { - const constructor •() → self::C1* + const constructor •() → self::C1 : super self::_C1&A&B::•() ; } class C2 = self::A with self::B /*hasConstConstructor*/ { - const synthetic constructor •() → self::C2* + const synthetic constructor •() → self::C2 : super self::A::•() ; } class C3 extends self::C2 /*hasConstConstructor*/ { - const constructor •() → self::C3* + const constructor •() → self::C3 : super self::C2::•() ; } abstract class D extends core::Object /*isMixinDeclaration*/ { - field core::int* value = 1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + field core::int value = 1; } abstract class _E1&A&D = self::A with self::D /*isAnonymousMixin*/ { - synthetic constructor •() → self::_E1&A&D* + synthetic constructor •() → self::_E1&A&D : super self::A::•() ; - mixin-super-stub get value() → core::int* + mixin-super-stub get value() → core::int return super.{self::D::value}; - mixin-super-stub set value(core::int* value) → void + mixin-super-stub set value(core::int value) → void return super.{self::D::value} = value; } class E1 extends self::_E1&A&D /*hasConstConstructor*/ { - const constructor •() → self::E1* + const constructor •() → self::E1 : super self::_E1&A&D::•() ; } class E2 = self::A with self::D { - synthetic constructor •() → self::E2* + synthetic constructor •() → self::E2 : super self::A::•() ; - mixin-super-stub get value() → core::int* + mixin-super-stub get value() → core::int return super.{self::D::value}; - mixin-super-stub set value(core::int* value) → void + mixin-super-stub set value(core::int value) → void return super.{self::D::value} = value; } class E3 extends self::E2 /*hasConstConstructor*/ { - const constructor •() → self::E3* + const constructor •() → self::E3 : super self::E2::•() ; } diff --git a/pkg/front_end/testcases/general/issue40982.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue40982.dart.weak.outline.expect index 90a0ef070d7..bc71b00dff7 100644 --- a/pkg/front_end/testcases/general/issue40982.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue40982.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,91 +14,61 @@ import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::A* + const constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object /*isMixinDeclaration*/ { - static const field core::int* value = 1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static const field core::int value = 1; } abstract class _C1&A&B = self::A with self::B /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C1&A&B* + const synthetic constructor •() → self::_C1&A&B : super self::A::•() ; } class C1 extends self::_C1&A&B /*hasConstConstructor*/ { - const constructor •() → self::C1* + const constructor •() → self::C1 : super self::_C1&A&B::•() ; } class C2 = self::A with self::B /*hasConstConstructor*/ { - const synthetic constructor •() → self::C2* + const synthetic constructor •() → self::C2 : super self::A::•() ; } class C3 extends self::C2 /*hasConstConstructor*/ { - const constructor •() → self::C3* + const constructor •() → self::C3 : super self::C2::•() ; } abstract class D extends core::Object /*isMixinDeclaration*/ { - field core::int* value; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + field core::int value; } abstract class _E1&A&D = self::A with self::D /*isAnonymousMixin*/ { - synthetic constructor •() → self::_E1&A&D* + synthetic constructor •() → self::_E1&A&D : super self::A::•() ; - mixin-super-stub get value() → core::int* + mixin-super-stub get value() → core::int return super.{self::D::value}; - mixin-super-stub set value(core::int* value) → void + mixin-super-stub set value(core::int value) → void return super.{self::D::value} = value; } class E1 extends self::_E1&A&D /*hasConstConstructor*/ { - const constructor •() → self::E1* + const constructor •() → self::E1 : super self::_E1&A&D::•() ; } class E2 = self::A with self::D { - synthetic constructor •() → self::E2* + synthetic constructor •() → self::E2 : super self::A::•() ; - mixin-super-stub get value() → core::int* + mixin-super-stub get value() → core::int return super.{self::D::value}; - mixin-super-stub set value(core::int* value) → void + mixin-super-stub set value(core::int value) → void return super.{self::D::value} = value; } class E3 extends self::E2 /*hasConstConstructor*/ { - const constructor •() → self::E3* + const constructor •() → self::E3 : super self::E2::•() ; } diff --git a/pkg/front_end/testcases/general/issue40982.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue40982.dart.weak.transformed.expect index 76c2d6175ab..b3fceab0d37 100644 --- a/pkg/front_end/testcases/general/issue40982.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue40982.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -14,87 +14,57 @@ import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::A* + const constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object /*isMixinDeclaration*/ { - static const field core::int* value = #C1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static const field core::int value = #C1; } abstract class _C1&A&B extends self::A implements self::B /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - static const field core::int* value = #C1; - const synthetic constructor •() → self::_C1&A&B* + static const field core::int value = #C1; + const synthetic constructor •() → self::_C1&A&B : super self::A::•() ; } class C1 extends self::_C1&A&B /*hasConstConstructor*/ { - const constructor •() → self::C1* + const constructor •() → self::C1 : super self::_C1&A&B::•() ; } class C2 extends self::A implements self::B /*isEliminatedMixin,hasConstConstructor*/ { - static const field core::int* value = #C1; - const synthetic constructor •() → self::C2* + static const field core::int value = #C1; + const synthetic constructor •() → self::C2 : super self::A::•() ; } class C3 extends self::C2 /*hasConstConstructor*/ { - const constructor •() → self::C3* + const constructor •() → self::C3 : super self::C2::•() ; } abstract class D extends core::Object /*isMixinDeclaration*/ { - field core::int* value = 1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + field core::int value = 1; } abstract class _E1&A&D extends self::A implements self::D /*isAnonymousMixin,isEliminatedMixin*/ { - field core::int* value = 1; - synthetic constructor •() → self::_E1&A&D* + field core::int value = 1; + synthetic constructor •() → self::_E1&A&D : super self::A::•() ; } class E1 extends self::_E1&A&D /*hasConstConstructor*/ { - const constructor •() → self::E1* + const constructor •() → self::E1 : super self::_E1&A&D::•() ; } class E2 extends self::A implements self::D /*isEliminatedMixin*/ { - field core::int* value = 1; - synthetic constructor •() → self::E2* + field core::int value = 1; + synthetic constructor •() → self::E2 : super self::A::•() ; } class E3 extends self::E2 /*hasConstConstructor*/ { - const constructor •() → self::E3* + const constructor •() → self::E3 : super self::E2::•() ; } diff --git a/pkg/front_end/testcases/general/issue41070.dart b/pkg/front_end/testcases/general/issue41070.dart index 0ce6f269a79..3129cb6e113 100644 --- a/pkg/front_end/testcases/general/issue41070.dart +++ b/pkg/front_end/testcases/general/issue41070.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + abstract class Mixin {} class Base { diff --git a/pkg/front_end/testcases/general/issue41070.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue41070.dart.textual_outline.expect index bf2cc1bdc3f..6b9ed3fd86a 100644 --- a/pkg/front_end/testcases/general/issue41070.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue41070.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class Mixin {} class Base { diff --git a/pkg/front_end/testcases/general/issue41070.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue41070.dart.textual_outline_modelled.expect index 228bca5f66e..6d281957c7a 100644 --- a/pkg/front_end/testcases/general/issue41070.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue41070.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class Mixin {} class Application = Base with Mixin; diff --git a/pkg/front_end/testcases/general/issue41070.dart.weak.expect b/pkg/front_end/testcases/general/issue41070.dart.weak.expect index d159c736e53..a93c83ead0b 100644 --- a/pkg/front_end/testcases/general/issue41070.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue41070.dart.weak.expect @@ -1,48 +1,28 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Base extends core::Object /*hasConstConstructor*/ { - final field core::int* x; - const constructor •(core::int* x) → self::Base* + final field core::int x; + const constructor •(core::int x) → self::Base : self::Base::x = x, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Application = self::Base with self::Mixin /*hasConstConstructor*/ { - const synthetic constructor •(core::int* x) → self::Application* + const synthetic constructor •(core::int x) → self::Application : super self::Base::•(x) ; } static method main() → dynamic { - self::expect(42, #C2.{self::Base::x}{core::int*}); + self::expect(42, #C2.{self::Base::x}{core::int}); } static method expect(dynamic expected, dynamic actual) → dynamic { - if(!(expected =={core::Object::==}{(core::Object*) →* core::bool*} actual)) + if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual)) throw "Expected ${expected}, actual ${actual}"; } diff --git a/pkg/front_end/testcases/general/issue41070.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue41070.dart.weak.modular.expect index d159c736e53..a93c83ead0b 100644 --- a/pkg/front_end/testcases/general/issue41070.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue41070.dart.weak.modular.expect @@ -1,48 +1,28 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Base extends core::Object /*hasConstConstructor*/ { - final field core::int* x; - const constructor •(core::int* x) → self::Base* + final field core::int x; + const constructor •(core::int x) → self::Base : self::Base::x = x, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Application = self::Base with self::Mixin /*hasConstConstructor*/ { - const synthetic constructor •(core::int* x) → self::Application* + const synthetic constructor •(core::int x) → self::Application : super self::Base::•(x) ; } static method main() → dynamic { - self::expect(42, #C2.{self::Base::x}{core::int*}); + self::expect(42, #C2.{self::Base::x}{core::int}); } static method expect(dynamic expected, dynamic actual) → dynamic { - if(!(expected =={core::Object::==}{(core::Object*) →* core::bool*} actual)) + if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual)) throw "Expected ${expected}, actual ${actual}"; } diff --git a/pkg/front_end/testcases/general/issue41070.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue41070.dart.weak.outline.expect index 82125042d1d..ed7bc3855d4 100644 --- a/pkg/front_end/testcases/general/issue41070.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue41070.dart.weak.outline.expect @@ -1,39 +1,19 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Base extends core::Object /*hasConstConstructor*/ { - final field core::int* x; - const constructor •(core::int* x) → self::Base* + final field core::int x; + const constructor •(core::int x) → self::Base : self::Base::x = x, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Application = self::Base with self::Mixin /*hasConstConstructor*/ { - const synthetic constructor •(core::int* x) → self::Application* + const synthetic constructor •(core::int x) → self::Application : super self::Base::•(x) ; } diff --git a/pkg/front_end/testcases/general/issue41070.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue41070.dart.weak.transformed.expect index 655d5ae27b9..c16b436d328 100644 --- a/pkg/front_end/testcases/general/issue41070.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue41070.dart.weak.transformed.expect @@ -1,48 +1,28 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Base extends core::Object /*hasConstConstructor*/ { - final field core::int* x; - const constructor •(core::int* x) → self::Base* + final field core::int x; + const constructor •(core::int x) → self::Base : self::Base::x = x, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Application extends self::Base implements self::Mixin /*isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •(core::int* x) → self::Application* + const synthetic constructor •(core::int x) → self::Application : super self::Base::•(x) ; } static method main() → dynamic { - self::expect(42, #C2.{self::Base::x}{core::int*}); + self::expect(42, #C2.{self::Base::x}{core::int}); } static method expect(dynamic expected, dynamic actual) → dynamic { - if(!(expected =={core::Object::==}{(core::Object*) →* core::bool*} actual)) + if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual)) throw "Expected ${expected}, actual ${actual}"; } diff --git a/pkg/front_end/testcases/general/issue41210a.dart b/pkg/front_end/testcases/general/issue41210a.dart index f736a24e3b0..78cfc3c9dc0 100644 --- a/pkg/front_end/testcases/general/issue41210a.dart +++ b/pkg/front_end/testcases/general/issue41210a.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - abstract class Interface { String method(num i); } diff --git a/pkg/front_end/testcases/general/issue41210a.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue41210a.dart.textual_outline.expect index 64edca273f4..599fc0f1b54 100644 --- a/pkg/front_end/testcases/general/issue41210a.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue41210a.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class Interface { String method(num i); } diff --git a/pkg/front_end/testcases/general/issue41210a.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue41210a.dart.textual_outline_modelled.expect index 9c3d8715c70..d6c9646869e 100644 --- a/pkg/front_end/testcases/general/issue41210a.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue41210a.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class B implements Interface { String method(num i); } diff --git a/pkg/front_end/testcases/general/issue41210a.dart.weak.expect b/pkg/front_end/testcases/general/issue41210a.dart.weak.expect index f270273afe4..89137302f07 100644 --- a/pkg/front_end/testcases/general/issue41210a.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue41210a.dart.weak.expect @@ -1,14 +1,14 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue41210a.dart:23:7: Error: Applying the mixin 'B' to 'Object with A' introduces an erroneous override of 'method'. +// pkg/front_end/testcases/general/issue41210a.dart:21:7: Error: Applying the mixin 'B' to 'Object with A' introduces an erroneous override of 'method'. // class C with A, B {} // error // ^ -// pkg/front_end/testcases/general/issue41210a.dart:20:10: Context: The method 'B.method' has fewer named arguments than those of overridden method 'Object with A.method'. +// pkg/front_end/testcases/general/issue41210a.dart:18:10: Context: The method 'B.method' has fewer named arguments than those of overridden method 'Object with A.method'. // String method(num i); // ^ -// pkg/front_end/testcases/general/issue41210a.dart:23:7: Context: This is the overridden method ('method'). +// pkg/front_end/testcases/general/issue41210a.dart:21:7: Context: This is the overridden method ('method'). // class C with A, B {} // error // ^ // @@ -16,184 +16,94 @@ import self as self; import "dart:core" as core; abstract class Interface extends core::Object { - synthetic constructor •() → self::Interface* + synthetic constructor •() → self::Interface : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - abstract method method(covariant-by-declaration core::int* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(covariant-by-declaration core::int i) → core::String; } abstract class A extends core::Object implements self::Interface /*isMixinDeclaration*/ { - method method(core::num* i, {core::String* s = #C1}) → core::String* + method method(core::num i, {core::String s = #C1}) → core::String return s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object implements self::Interface { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class _C&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&A* + const synthetic constructor •() → self::_C&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&A&B = self::_C&Object&A with self::B /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&A&B* + const synthetic constructor •() → self::_C&Object&A&B : super self::_C&Object&A::•() ; - abstract mixin-stub method method(core::num* i) → core::String*; -> self::B::method + abstract mixin-stub method method(core::num i) → core::String; -> self::B::method } class C extends self::_C&Object&A&B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&A&B::•() ; } abstract class D extends core::Object implements self::Interface, self::Interface2 { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract forwarding-stub method method(covariant-by-declaration core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract forwarding-stub method method(covariant-by-declaration core::num i) → core::String; } abstract class _E&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A* + const synthetic constructor •() → self::_E&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _E&Object&A&D = self::_E&Object&A with self::D /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A&D* + const synthetic constructor •() → self::_E&Object&A&D : super self::_E&Object&A::•() ; - forwarding-stub method method(covariant-by-declaration core::num* i, {core::String* s = #C1}) → core::String* + forwarding-stub method method(covariant-by-declaration core::num i, {core::String s = #C1}) → core::String return super.{self::_E&Object&A::method}(i, s: s); } class E extends self::_E&Object&A&D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::_E&Object&A&D::•() ; } abstract class F extends core::Object implements self::Interface { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A* + const synthetic constructor •() → self::_G&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A&F = self::_G&Object&A with self::F /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A&F* + const synthetic constructor •() → self::_G&Object&A&F : super self::_G&Object&A::•() ; } class G extends self::_G&Object&A&F { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super self::_G&Object&A&F::•() ; } static method main() → dynamic { - core::print(new self::C::•().{self::_C&Object&A&B::method}(0){(core::num*) →* core::String*}); + core::print(new self::C::•().{self::_C&Object&A&B::method}(0){(core::num) → core::String}); } constants { diff --git a/pkg/front_end/testcases/general/issue41210a.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue41210a.dart.weak.modular.expect index f270273afe4..89137302f07 100644 --- a/pkg/front_end/testcases/general/issue41210a.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue41210a.dart.weak.modular.expect @@ -1,14 +1,14 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue41210a.dart:23:7: Error: Applying the mixin 'B' to 'Object with A' introduces an erroneous override of 'method'. +// pkg/front_end/testcases/general/issue41210a.dart:21:7: Error: Applying the mixin 'B' to 'Object with A' introduces an erroneous override of 'method'. // class C with A, B {} // error // ^ -// pkg/front_end/testcases/general/issue41210a.dart:20:10: Context: The method 'B.method' has fewer named arguments than those of overridden method 'Object with A.method'. +// pkg/front_end/testcases/general/issue41210a.dart:18:10: Context: The method 'B.method' has fewer named arguments than those of overridden method 'Object with A.method'. // String method(num i); // ^ -// pkg/front_end/testcases/general/issue41210a.dart:23:7: Context: This is the overridden method ('method'). +// pkg/front_end/testcases/general/issue41210a.dart:21:7: Context: This is the overridden method ('method'). // class C with A, B {} // error // ^ // @@ -16,184 +16,94 @@ import self as self; import "dart:core" as core; abstract class Interface extends core::Object { - synthetic constructor •() → self::Interface* + synthetic constructor •() → self::Interface : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - abstract method method(covariant-by-declaration core::int* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(covariant-by-declaration core::int i) → core::String; } abstract class A extends core::Object implements self::Interface /*isMixinDeclaration*/ { - method method(core::num* i, {core::String* s = #C1}) → core::String* + method method(core::num i, {core::String s = #C1}) → core::String return s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object implements self::Interface { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class _C&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&A* + const synthetic constructor •() → self::_C&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&A&B = self::_C&Object&A with self::B /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&A&B* + const synthetic constructor •() → self::_C&Object&A&B : super self::_C&Object&A::•() ; - abstract mixin-stub method method(core::num* i) → core::String*; -> self::B::method + abstract mixin-stub method method(core::num i) → core::String; -> self::B::method } class C extends self::_C&Object&A&B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&A&B::•() ; } abstract class D extends core::Object implements self::Interface, self::Interface2 { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract forwarding-stub method method(covariant-by-declaration core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract forwarding-stub method method(covariant-by-declaration core::num i) → core::String; } abstract class _E&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A* + const synthetic constructor •() → self::_E&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _E&Object&A&D = self::_E&Object&A with self::D /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A&D* + const synthetic constructor •() → self::_E&Object&A&D : super self::_E&Object&A::•() ; - forwarding-stub method method(covariant-by-declaration core::num* i, {core::String* s = #C1}) → core::String* + forwarding-stub method method(covariant-by-declaration core::num i, {core::String s = #C1}) → core::String return super.{self::_E&Object&A::method}(i, s: s); } class E extends self::_E&Object&A&D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::_E&Object&A&D::•() ; } abstract class F extends core::Object implements self::Interface { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A* + const synthetic constructor •() → self::_G&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A&F = self::_G&Object&A with self::F /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A&F* + const synthetic constructor •() → self::_G&Object&A&F : super self::_G&Object&A::•() ; } class G extends self::_G&Object&A&F { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super self::_G&Object&A&F::•() ; } static method main() → dynamic { - core::print(new self::C::•().{self::_C&Object&A&B::method}(0){(core::num*) →* core::String*}); + core::print(new self::C::•().{self::_C&Object&A&B::method}(0){(core::num) → core::String}); } constants { diff --git a/pkg/front_end/testcases/general/issue41210a.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue41210a.dart.weak.outline.expect index 3333d006ecc..22ccaeebdf8 100644 --- a/pkg/front_end/testcases/general/issue41210a.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue41210a.dart.weak.outline.expect @@ -1,14 +1,14 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue41210a.dart:23:7: Error: Applying the mixin 'B' to 'Object with A' introduces an erroneous override of 'method'. +// pkg/front_end/testcases/general/issue41210a.dart:21:7: Error: Applying the mixin 'B' to 'Object with A' introduces an erroneous override of 'method'. // class C with A, B {} // error // ^ -// pkg/front_end/testcases/general/issue41210a.dart:20:10: Context: The method 'B.method' has fewer named arguments than those of overridden method 'Object with A.method'. +// pkg/front_end/testcases/general/issue41210a.dart:18:10: Context: The method 'B.method' has fewer named arguments than those of overridden method 'Object with A.method'. // String method(num i); // ^ -// pkg/front_end/testcases/general/issue41210a.dart:23:7: Context: This is the overridden method ('method'). +// pkg/front_end/testcases/general/issue41210a.dart:21:7: Context: This is the overridden method ('method'). // class C with A, B {} // error // ^ // @@ -16,172 +16,82 @@ import self as self; import "dart:core" as core; abstract class Interface extends core::Object { - synthetic constructor •() → self::Interface* + synthetic constructor •() → self::Interface ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 ; - abstract method method(covariant-by-declaration core::int* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(covariant-by-declaration core::int i) → core::String; } abstract class A extends core::Object implements self::Interface /*isMixinDeclaration*/ { - method method(core::num* i, {core::String* s = "hello"}) → core::String* + method method(core::num i, {core::String s = "hello"}) → core::String ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object implements self::Interface { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class _C&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&A* + const synthetic constructor •() → self::_C&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s}) → core::String* + mixin-super-stub method method(core::num i, {core::String s}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&A&B = self::_C&Object&A with self::B /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&A&B* + const synthetic constructor •() → self::_C&Object&A&B : super self::_C&Object&A::•() ; - abstract mixin-stub method method(core::num* i) → core::String*; -> self::B::method + abstract mixin-stub method method(core::num i) → core::String; -> self::B::method } class C extends self::_C&Object&A&B { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; } abstract class D extends core::Object implements self::Interface, self::Interface2 { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D ; - abstract forwarding-stub method method(covariant-by-declaration core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract forwarding-stub method method(covariant-by-declaration core::num i) → core::String; } abstract class _E&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A* + const synthetic constructor •() → self::_E&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s}) → core::String* + mixin-super-stub method method(core::num i, {core::String s}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _E&Object&A&D = self::_E&Object&A with self::D /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A&D* + const synthetic constructor •() → self::_E&Object&A&D : super self::_E&Object&A::•() ; - forwarding-stub method method(covariant-by-declaration core::num* i, {core::String* s}) → core::String* + forwarding-stub method method(covariant-by-declaration core::num i, {core::String s}) → core::String return super.{self::_E&Object&A::method}(i, s: s); } class E extends self::_E&Object&A&D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E ; } abstract class F extends core::Object implements self::Interface { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A* + const synthetic constructor •() → self::_G&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s}) → core::String* + mixin-super-stub method method(core::num i, {core::String s}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A&F = self::_G&Object&A with self::F /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A&F* + const synthetic constructor •() → self::_G&Object&A&F : super self::_G&Object&A::•() ; } class G extends self::_G&Object&A&F { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/issue41210a_no_error.dart b/pkg/front_end/testcases/general/issue41210a_no_error.dart index e78b1fe103b..b838aa983b7 100644 --- a/pkg/front_end/testcases/general/issue41210a_no_error.dart +++ b/pkg/front_end/testcases/general/issue41210a_no_error.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - abstract class Interface { String method(num i); } diff --git a/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline.expect index ed1f1764d93..c01fb180047 100644 --- a/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class Interface { String method(num i); } diff --git a/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline_modelled.expect index 224797ae579..801b25ed2d6 100644 --- a/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue41210a_no_error.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class B implements Interface { String method(num i); } diff --git a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.expect b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.expect index daf4b8e536e..2913f38b5c1 100644 --- a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.expect @@ -1,153 +1,73 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Interface extends core::Object { - synthetic constructor •() → self::Interface* + synthetic constructor •() → self::Interface : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - abstract method method(covariant-by-declaration core::int* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(covariant-by-declaration core::int i) → core::String; } abstract class A extends core::Object implements self::Interface /*isMixinDeclaration*/ { - method method(core::num* i, {core::String* s = #C1}) → core::String* + method method(core::num i, {core::String s = #C1}) → core::String return s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object implements self::Interface { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class D extends core::Object implements self::Interface, self::Interface2 { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract forwarding-stub method method(covariant-by-declaration core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract forwarding-stub method method(covariant-by-declaration core::num i) → core::String; } abstract class _E&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A* + const synthetic constructor •() → self::_E&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _E&Object&A&D = self::_E&Object&A with self::D /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A&D* + const synthetic constructor •() → self::_E&Object&A&D : super self::_E&Object&A::•() ; - forwarding-stub method method(covariant-by-declaration core::num* i, {core::String* s = #C1}) → core::String* + forwarding-stub method method(covariant-by-declaration core::num i, {core::String s = #C1}) → core::String return super.{self::_E&Object&A::method}(i, s: s); } class E extends self::_E&Object&A&D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::_E&Object&A&D::•() ; } abstract class F extends core::Object implements self::Interface { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A* + const synthetic constructor •() → self::_G&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A&F = self::_G&Object&A with self::F /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A&F* + const synthetic constructor •() → self::_G&Object&A&F : super self::_G&Object&A::•() ; } class G extends self::_G&Object&A&F { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super self::_G&Object&A&F::•() ; } diff --git a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.modular.expect index daf4b8e536e..2913f38b5c1 100644 --- a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.modular.expect @@ -1,153 +1,73 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Interface extends core::Object { - synthetic constructor •() → self::Interface* + synthetic constructor •() → self::Interface : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - abstract method method(covariant-by-declaration core::int* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(covariant-by-declaration core::int i) → core::String; } abstract class A extends core::Object implements self::Interface /*isMixinDeclaration*/ { - method method(core::num* i, {core::String* s = #C1}) → core::String* + method method(core::num i, {core::String s = #C1}) → core::String return s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object implements self::Interface { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class D extends core::Object implements self::Interface, self::Interface2 { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract forwarding-stub method method(covariant-by-declaration core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract forwarding-stub method method(covariant-by-declaration core::num i) → core::String; } abstract class _E&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A* + const synthetic constructor •() → self::_E&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _E&Object&A&D = self::_E&Object&A with self::D /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A&D* + const synthetic constructor •() → self::_E&Object&A&D : super self::_E&Object&A::•() ; - forwarding-stub method method(covariant-by-declaration core::num* i, {core::String* s = #C1}) → core::String* + forwarding-stub method method(covariant-by-declaration core::num i, {core::String s = #C1}) → core::String return super.{self::_E&Object&A::method}(i, s: s); } class E extends self::_E&Object&A&D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::_E&Object&A&D::•() ; } abstract class F extends core::Object implements self::Interface { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A* + const synthetic constructor •() → self::_G&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s = #C1}) → core::String* + mixin-super-stub method method(core::num i, {core::String s = #C1}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A&F = self::_G&Object&A with self::F /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A&F* + const synthetic constructor •() → self::_G&Object&A&F : super self::_G&Object&A::•() ; } class G extends self::_G&Object&A&F { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super self::_G&Object&A&F::•() ; } diff --git a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.outline.expect index 0a5819f51c5..016588f517b 100644 --- a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.outline.expect @@ -1,147 +1,67 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Interface extends core::Object { - synthetic constructor •() → self::Interface* + synthetic constructor •() → self::Interface ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 ; - abstract method method(covariant-by-declaration core::int* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(covariant-by-declaration core::int i) → core::String; } abstract class A extends core::Object implements self::Interface /*isMixinDeclaration*/ { - method method(core::num* i, {core::String* s = "hello"}) → core::String* + method method(core::num i, {core::String s = "hello"}) → core::String ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object implements self::Interface { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class D extends core::Object implements self::Interface, self::Interface2 { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D ; - abstract forwarding-stub method method(covariant-by-declaration core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract forwarding-stub method method(covariant-by-declaration core::num i) → core::String; } abstract class _E&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A* + const synthetic constructor •() → self::_E&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s}) → core::String* + mixin-super-stub method method(core::num i, {core::String s}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _E&Object&A&D = self::_E&Object&A with self::D /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A&D* + const synthetic constructor •() → self::_E&Object&A&D : super self::_E&Object&A::•() ; - forwarding-stub method method(covariant-by-declaration core::num* i, {core::String* s}) → core::String* + forwarding-stub method method(covariant-by-declaration core::num i, {core::String s}) → core::String return super.{self::_E&Object&A::method}(i, s: s); } class E extends self::_E&Object&A&D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E ; } abstract class F extends core::Object implements self::Interface { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A = core::Object with self::A /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A* + const synthetic constructor •() → self::_G&Object&A : super core::Object::•() ; - mixin-super-stub method method(core::num* i, {core::String* s}) → core::String* + mixin-super-stub method method(core::num i, {core::String s}) → core::String return super.{self::A::method}(i, s: s); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A&F = self::_G&Object&A with self::F /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A&F* + const synthetic constructor •() → self::_G&Object&A&F : super self::_G&Object&A::•() ; } class G extends self::_G&Object&A&F { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.transformed.expect index 9d9b4f1fe3d..fcfe4b1f55f 100644 --- a/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue41210a_no_error.dart.weak.transformed.expect @@ -1,153 +1,73 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Interface extends core::Object { - synthetic constructor •() → self::Interface* + synthetic constructor •() → self::Interface : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - abstract method method(covariant-by-declaration core::int* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(covariant-by-declaration core::int i) → core::String; } abstract class A extends core::Object implements self::Interface /*isMixinDeclaration*/ { - method method(core::num* i, {core::String* s = #C1}) → core::String* + method method(core::num i, {core::String s = #C1}) → core::String return s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class B extends core::Object implements self::Interface { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - abstract method method(core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method method(core::num i) → core::String; } abstract class D extends core::Object implements self::Interface, self::Interface2 { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract forwarding-stub method method(covariant-by-declaration core::num* i) → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract forwarding-stub method method(covariant-by-declaration core::num i) → core::String; } abstract class _E&Object&A extends core::Object implements self::A /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A* + const synthetic constructor •() → self::_E&Object&A : super core::Object::•() ; - method method(core::num* i, {core::String* s = #C1}) → core::String* + method method(core::num i, {core::String s = #C1}) → core::String return s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _E&Object&A&D extends self::_E&Object&A implements self::D /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_E&Object&A&D* + const synthetic constructor •() → self::_E&Object&A&D : super self::_E&Object&A::•() ; - forwarding-stub method method(covariant-by-declaration core::num* i, {core::String* s = #C1}) → core::String* + forwarding-stub method method(covariant-by-declaration core::num i, {core::String s = #C1}) → core::String return super.{self::_E&Object&A::method}(i, s: s); } class E extends self::_E&Object&A&D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::_E&Object&A&D::•() ; } abstract class F extends core::Object implements self::Interface { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A extends core::Object implements self::A /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A* + const synthetic constructor •() → self::_G&Object&A : super core::Object::•() ; - method method(core::num* i, {core::String* s = #C1}) → core::String* + method method(core::num i, {core::String s = #C1}) → core::String return s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _G&Object&A&F extends self::_G&Object&A implements self::F /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_G&Object&A&F* + const synthetic constructor •() → self::_G&Object&A&F : super self::_G&Object&A::•() ; } class G extends self::_G&Object&A&F { - synthetic constructor •() → self::G* + synthetic constructor •() → self::G : super self::_G&Object&A&F::•() ; } diff --git a/pkg/front_end/testcases/general/issue42610.dart b/pkg/front_end/testcases/general/issue42610.dart index 0eb95867856..7c7bd328068 100644 --- a/pkg/front_end/testcases/general/issue42610.dart +++ b/pkg/front_end/testcases/general/issue42610.dart @@ -1,7 +1,9 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + void test() { #final; final x; diff --git a/pkg/front_end/testcases/general/issue42610.dart.weak.expect b/pkg/front_end/testcases/general/issue42610.dart.weak.expect index 44db9741c5e..735e2ffb4d1 100644 --- a/pkg/front_end/testcases/general/issue42610.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue42610.dart.weak.expect @@ -2,27 +2,27 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/issue42610.dart:6:4: Error: 'final' can't be used as an identifier because it's a keyword. +// pkg/front_end/testcases/general/issue42610.dart:8:4: Error: 'final' can't be used as an identifier because it's a keyword. // Try renaming this to be an identifier that isn't a keyword. // #final; // ^^^^^ // -// pkg/front_end/testcases/general/issue42610.dart:7:9: Error: The final variable 'x' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:9:9: Error: The final variable 'x' must be initialized. // Try adding an initializer ('= expression') to the declaration. // final x; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:8:9: Error: The const variable 'y' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:10:9: Error: The const variable 'y' must be initialized. // Try adding an initializer ('= expression') to the declaration. // const y; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:9:13: Error: The final variable 'z' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:11:13: Error: The final variable 'z' must be initialized. // Try adding an initializer ('= expression') to the declaration. // final int z; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:10:13: Error: The const variable 'w' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:12:13: Error: The const variable 'w' must be initialized. // Try adding an initializer ('= expression') to the declaration. // const int w; // ^ @@ -32,19 +32,19 @@ import "dart:core" as core; static method test() → void { #C1; - final invalid-type x = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:7:9: Error: The final variable 'x' must be initialized. + final invalid-type x = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:9:9: Error: The final variable 'x' must be initialized. Try adding an initializer ('= expression') to the declaration. final x; ^"; - const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:8:9: Error: The const variable 'y' must be initialized. + const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:10:9: Error: The const variable 'y' must be initialized. Try adding an initializer ('= expression') to the declaration. const y; ^"; - final core::int* z = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:9:13: Error: The final variable 'z' must be initialized. + final core::int* z = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:11:13: Error: The final variable 'z' must be initialized. Try adding an initializer ('= expression') to the declaration. final int z; ^"; - const core::int* w = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:10:13: Error: The const variable 'w' must be initialized. + const core::int* w = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:12:13: Error: The const variable 'w' must be initialized. Try adding an initializer ('= expression') to the declaration. const int w; ^"; diff --git a/pkg/front_end/testcases/general/issue42610.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue42610.dart.weak.modular.expect index 44db9741c5e..735e2ffb4d1 100644 --- a/pkg/front_end/testcases/general/issue42610.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue42610.dart.weak.modular.expect @@ -2,27 +2,27 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/issue42610.dart:6:4: Error: 'final' can't be used as an identifier because it's a keyword. +// pkg/front_end/testcases/general/issue42610.dart:8:4: Error: 'final' can't be used as an identifier because it's a keyword. // Try renaming this to be an identifier that isn't a keyword. // #final; // ^^^^^ // -// pkg/front_end/testcases/general/issue42610.dart:7:9: Error: The final variable 'x' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:9:9: Error: The final variable 'x' must be initialized. // Try adding an initializer ('= expression') to the declaration. // final x; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:8:9: Error: The const variable 'y' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:10:9: Error: The const variable 'y' must be initialized. // Try adding an initializer ('= expression') to the declaration. // const y; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:9:13: Error: The final variable 'z' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:11:13: Error: The final variable 'z' must be initialized. // Try adding an initializer ('= expression') to the declaration. // final int z; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:10:13: Error: The const variable 'w' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:12:13: Error: The const variable 'w' must be initialized. // Try adding an initializer ('= expression') to the declaration. // const int w; // ^ @@ -32,19 +32,19 @@ import "dart:core" as core; static method test() → void { #C1; - final invalid-type x = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:7:9: Error: The final variable 'x' must be initialized. + final invalid-type x = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:9:9: Error: The final variable 'x' must be initialized. Try adding an initializer ('= expression') to the declaration. final x; ^"; - const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:8:9: Error: The const variable 'y' must be initialized. + const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:10:9: Error: The const variable 'y' must be initialized. Try adding an initializer ('= expression') to the declaration. const y; ^"; - final core::int* z = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:9:13: Error: The final variable 'z' must be initialized. + final core::int* z = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:11:13: Error: The final variable 'z' must be initialized. Try adding an initializer ('= expression') to the declaration. final int z; ^"; - const core::int* w = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:10:13: Error: The const variable 'w' must be initialized. + const core::int* w = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:12:13: Error: The const variable 'w' must be initialized. Try adding an initializer ('= expression') to the declaration. const int w; ^"; diff --git a/pkg/front_end/testcases/general/issue42610.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue42610.dart.weak.transformed.expect index 44db9741c5e..735e2ffb4d1 100644 --- a/pkg/front_end/testcases/general/issue42610.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue42610.dart.weak.transformed.expect @@ -2,27 +2,27 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/issue42610.dart:6:4: Error: 'final' can't be used as an identifier because it's a keyword. +// pkg/front_end/testcases/general/issue42610.dart:8:4: Error: 'final' can't be used as an identifier because it's a keyword. // Try renaming this to be an identifier that isn't a keyword. // #final; // ^^^^^ // -// pkg/front_end/testcases/general/issue42610.dart:7:9: Error: The final variable 'x' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:9:9: Error: The final variable 'x' must be initialized. // Try adding an initializer ('= expression') to the declaration. // final x; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:8:9: Error: The const variable 'y' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:10:9: Error: The const variable 'y' must be initialized. // Try adding an initializer ('= expression') to the declaration. // const y; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:9:13: Error: The final variable 'z' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:11:13: Error: The final variable 'z' must be initialized. // Try adding an initializer ('= expression') to the declaration. // final int z; // ^ // -// pkg/front_end/testcases/general/issue42610.dart:10:13: Error: The const variable 'w' must be initialized. +// pkg/front_end/testcases/general/issue42610.dart:12:13: Error: The const variable 'w' must be initialized. // Try adding an initializer ('= expression') to the declaration. // const int w; // ^ @@ -32,19 +32,19 @@ import "dart:core" as core; static method test() → void { #C1; - final invalid-type x = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:7:9: Error: The final variable 'x' must be initialized. + final invalid-type x = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:9:9: Error: The final variable 'x' must be initialized. Try adding an initializer ('= expression') to the declaration. final x; ^"; - const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:8:9: Error: The const variable 'y' must be initialized. + const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:10:9: Error: The const variable 'y' must be initialized. Try adding an initializer ('= expression') to the declaration. const y; ^"; - final core::int* z = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:9:13: Error: The final variable 'z' must be initialized. + final core::int* z = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:11:13: Error: The final variable 'z' must be initialized. Try adding an initializer ('= expression') to the declaration. final int z; ^"; - const core::int* w = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:10:13: Error: The const variable 'w' must be initialized. + const core::int* w = invalid-expression "pkg/front_end/testcases/general/issue42610.dart:12:13: Error: The const variable 'w' must be initialized. Try adding an initializer ('= expression') to the declaration. const int w; ^"; diff --git a/pkg/front_end/testcases/general/issue42610b.dart b/pkg/front_end/testcases/general/issue42610b.dart new file mode 100644 index 00000000000..d1bfafc1542 --- /dev/null +++ b/pkg/front_end/testcases/general/issue42610b.dart @@ -0,0 +1,13 @@ +// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +void test() { + #final; + final x; + const y; + final int z; + const int w; +} + +void main() {} diff --git a/pkg/front_end/testcases/general/issue42610b.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue42610b.dart.textual_outline.expect new file mode 100644 index 00000000000..41786bb74fa --- /dev/null +++ b/pkg/front_end/testcases/general/issue42610b.dart.textual_outline.expect @@ -0,0 +1,2 @@ +void test() {} +void main() {} diff --git a/pkg/front_end/testcases/general/issue42610b.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue42610b.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..0e0980f9a9b --- /dev/null +++ b/pkg/front_end/testcases/general/issue42610b.dart.textual_outline_modelled.expect @@ -0,0 +1,2 @@ +void main() {} +void test() {} diff --git a/pkg/front_end/testcases/general/issue42610b.dart.weak.expect b/pkg/front_end/testcases/general/issue42610b.dart.weak.expect new file mode 100644 index 00000000000..3d48f0d1800 --- /dev/null +++ b/pkg/front_end/testcases/general/issue42610b.dart.weak.expect @@ -0,0 +1,40 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/issue42610b.dart:6:4: Error: 'final' can't be used as an identifier because it's a keyword. +// Try renaming this to be an identifier that isn't a keyword. +// #final; +// ^^^^^ +// +// pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized. +// Try adding an initializer ('= expression') to the declaration. +// const y; +// ^ +// +// pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized. +// Try adding an initializer ('= expression') to the declaration. +// const int w; +// ^ +// +import self as self; +import "dart:core" as core; + +static method test() → void { + #C1; + final dynamic x; + const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized. +Try adding an initializer ('= expression') to the declaration. + const y; + ^"; + final core::int z; + const core::int w = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized. +Try adding an initializer ('= expression') to the declaration. + const int w; + ^"; +} +static method main() → void {} + +constants { + #C1 = #final +} diff --git a/pkg/front_end/testcases/general/issue42610b.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue42610b.dart.weak.modular.expect new file mode 100644 index 00000000000..3d48f0d1800 --- /dev/null +++ b/pkg/front_end/testcases/general/issue42610b.dart.weak.modular.expect @@ -0,0 +1,40 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/issue42610b.dart:6:4: Error: 'final' can't be used as an identifier because it's a keyword. +// Try renaming this to be an identifier that isn't a keyword. +// #final; +// ^^^^^ +// +// pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized. +// Try adding an initializer ('= expression') to the declaration. +// const y; +// ^ +// +// pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized. +// Try adding an initializer ('= expression') to the declaration. +// const int w; +// ^ +// +import self as self; +import "dart:core" as core; + +static method test() → void { + #C1; + final dynamic x; + const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized. +Try adding an initializer ('= expression') to the declaration. + const y; + ^"; + final core::int z; + const core::int w = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized. +Try adding an initializer ('= expression') to the declaration. + const int w; + ^"; +} +static method main() → void {} + +constants { + #C1 = #final +} diff --git a/pkg/front_end/testcases/general/issue42610b.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue42610b.dart.weak.outline.expect new file mode 100644 index 00000000000..b6809aa252e --- /dev/null +++ b/pkg/front_end/testcases/general/issue42610b.dart.weak.outline.expect @@ -0,0 +1,7 @@ +library /*isNonNullableByDefault*/; +import self as self; + +static method test() → void + ; +static method main() → void + ; diff --git a/pkg/front_end/testcases/general/issue42610b.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue42610b.dart.weak.transformed.expect new file mode 100644 index 00000000000..3d48f0d1800 --- /dev/null +++ b/pkg/front_end/testcases/general/issue42610b.dart.weak.transformed.expect @@ -0,0 +1,40 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/issue42610b.dart:6:4: Error: 'final' can't be used as an identifier because it's a keyword. +// Try renaming this to be an identifier that isn't a keyword. +// #final; +// ^^^^^ +// +// pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized. +// Try adding an initializer ('= expression') to the declaration. +// const y; +// ^ +// +// pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized. +// Try adding an initializer ('= expression') to the declaration. +// const int w; +// ^ +// +import self as self; +import "dart:core" as core; + +static method test() → void { + #C1; + final dynamic x; + const invalid-type y = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:8:9: Error: The const variable 'y' must be initialized. +Try adding an initializer ('= expression') to the declaration. + const y; + ^"; + final core::int z; + const core::int w = invalid-expression "pkg/front_end/testcases/general/issue42610b.dart:10:13: Error: The const variable 'w' must be initialized. +Try adding an initializer ('= expression') to the declaration. + const int w; + ^"; +} +static method main() → void {} + +constants { + #C1 = #final +} diff --git a/pkg/front_end/testcases/general/issue42615.dart b/pkg/front_end/testcases/general/issue42615.dart index 9aeea5542ba..5ee7bb85b16 100644 --- a/pkg/front_end/testcases/general/issue42615.dart +++ b/pkg/front_end/testcases/general/issue42615.dart @@ -1,7 +1,9 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + import 'dart:async'; class Class { diff --git a/pkg/front_end/testcases/general/issue42694.dart b/pkg/front_end/testcases/general/issue42694.dart index fa6f914771e..95e58750d4e 100644 --- a/pkg/front_end/testcases/general/issue42694.dart +++ b/pkg/front_end/testcases/general/issue42694.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + abstract class A { void set setter(int value); } diff --git a/pkg/front_end/testcases/general/issue42694.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue42694.dart.textual_outline.expect index 44d643c3da1..6d5d6adffd5 100644 --- a/pkg/front_end/testcases/general/issue42694.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue42694.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class A { void set setter(int value); } diff --git a/pkg/front_end/testcases/general/issue42694.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue42694.dart.textual_outline_modelled.expect index 44d643c3da1..6d5d6adffd5 100644 --- a/pkg/front_end/testcases/general/issue42694.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue42694.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class A { void set setter(int value); } diff --git a/pkg/front_end/testcases/general/issue42694.dart.weak.expect b/pkg/front_end/testcases/general/issue42694.dart.weak.expect index f8b3fdc10d4..5be2cc6a0fd 100644 --- a/pkg/front_end/testcases/general/issue42694.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue42694.dart.weak.expect @@ -1,39 +1,19 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract set setter(core::int* value) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set setter(core::int value) → void; } class B extends core::Object implements self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - get setter() → core::int* + get setter() → core::int return throw ""; - set setter(core::int* value) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + set setter(core::int value) → void {} } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue42694.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue42694.dart.weak.modular.expect index f8b3fdc10d4..5be2cc6a0fd 100644 --- a/pkg/front_end/testcases/general/issue42694.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue42694.dart.weak.modular.expect @@ -1,39 +1,19 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract set setter(core::int* value) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set setter(core::int value) → void; } class B extends core::Object implements self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - get setter() → core::int* + get setter() → core::int return throw ""; - set setter(core::int* value) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + set setter(core::int value) → void {} } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue42694.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue42694.dart.weak.outline.expect index 1b716ecc279..8ebfe874868 100644 --- a/pkg/front_end/testcases/general/issue42694.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue42694.dart.weak.outline.expect @@ -1,39 +1,19 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A ; - abstract set setter(core::int* value) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set setter(core::int value) → void; } class B extends core::Object implements self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B ; - get setter() → core::int* + get setter() → core::int ; - set setter(core::int* value) → void + set setter(core::int value) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue42694.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue42694.dart.weak.transformed.expect index f8b3fdc10d4..5be2cc6a0fd 100644 --- a/pkg/front_end/testcases/general/issue42694.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue42694.dart.weak.transformed.expect @@ -1,39 +1,19 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class A extends core::Object { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super core::Object::•() ; - abstract set setter(core::int* value) → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract set setter(core::int value) → void; } class B extends core::Object implements self::A { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - get setter() → core::int* + get setter() → core::int return throw ""; - set setter(core::int* value) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + set setter(core::int value) → void {} } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue42997.dart b/pkg/front_end/testcases/general/issue42997.dart index 7da576e7ac1..1b1ee965831 100644 --- a/pkg/front_end/testcases/general/issue42997.dart +++ b/pkg/front_end/testcases/general/issue42997.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // Regression test for issue 42997 main() {} diff --git a/pkg/front_end/testcases/general/issue42997.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue42997.dart.textual_outline.expect index fd6313c9c4f..22509e923c1 100644 --- a/pkg/front_end/testcases/general/issue42997.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue42997.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 main() {} PropertyState(); class PropertyState { diff --git a/pkg/front_end/testcases/general/issue42997.dart.weak.expect b/pkg/front_end/testcases/general/issue42997.dart.weak.expect index b11e21949ca..85c075a1de5 100644 --- a/pkg/front_end/testcases/general/issue42997.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue42997.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -46,8 +46,8 @@ library; import self as self; import "dart:core" as core; -class PropertyState#1 extends core::Object { - synthetic constructor •() → self::PropertyState#1* +class PropertyState#1 extends core::Object { + synthetic constructor •() → self::PropertyState#1 : super core::Object::•() ; method dispose() → void { @@ -68,16 +68,6 @@ Try correcting the name to the name of an existing getter, or defining a getter ^^^^^" in this{}.state)) ; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} static abstract method PropertyState() → dynamic; diff --git a/pkg/front_end/testcases/general/issue42997.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue42997.dart.weak.modular.expect index b11e21949ca..85c075a1de5 100644 --- a/pkg/front_end/testcases/general/issue42997.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue42997.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -46,8 +46,8 @@ library; import self as self; import "dart:core" as core; -class PropertyState#1 extends core::Object { - synthetic constructor •() → self::PropertyState#1* +class PropertyState#1 extends core::Object { + synthetic constructor •() → self::PropertyState#1 : super core::Object::•() ; method dispose() → void { @@ -68,16 +68,6 @@ Try correcting the name to the name of an existing getter, or defining a getter ^^^^^" in this{}.state)) ; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} static abstract method PropertyState() → dynamic; diff --git a/pkg/front_end/testcases/general/issue42997.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue42997.dart.weak.outline.expect index f307379ab77..347c54f62e0 100644 --- a/pkg/front_end/testcases/general/issue42997.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue42997.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,21 +17,11 @@ library; import self as self; import "dart:core" as core; -class PropertyState#1 extends core::Object { - synthetic constructor •() → self::PropertyState#1* +class PropertyState#1 extends core::Object { + synthetic constructor •() → self::PropertyState#1 ; method dispose() → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue42997.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue42997.dart.weak.transformed.expect index b11e21949ca..85c075a1de5 100644 --- a/pkg/front_end/testcases/general/issue42997.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue42997.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -46,8 +46,8 @@ library; import self as self; import "dart:core" as core; -class PropertyState#1 extends core::Object { - synthetic constructor •() → self::PropertyState#1* +class PropertyState#1 extends core::Object { + synthetic constructor •() → self::PropertyState#1 : super core::Object::•() ; method dispose() → void { @@ -68,16 +68,6 @@ Try correcting the name to the name of an existing getter, or defining a getter ^^^^^" in this{}.state)) ; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} static abstract method PropertyState() → dynamic; diff --git a/pkg/front_end/testcases/general/issue43290.dart b/pkg/front_end/testcases/general/issue43290.dart index d3ad4557289..c1af4bab9a0 100644 --- a/pkg/front_end/testcases/general/issue43290.dart +++ b/pkg/front_end/testcases/general/issue43290.dart @@ -1,11 +1,11 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class Class { final int length; - const Class({this.length}); + const Class({this.length: 0}); method1a() { const Class(length: this.length); diff --git a/pkg/front_end/testcases/general/issue43290.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue43290.dart.textual_outline.expect index 7d3329fbb6d..14991b03022 100644 --- a/pkg/front_end/testcases/general/issue43290.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue43290.dart.textual_outline.expect @@ -1,7 +1,6 @@ -// @dart = 2.9 class Class { final int length; - const Class({this.length}); + const Class({this.length: 0}); method1a() {} method1b() {} method2a() {} diff --git a/pkg/front_end/testcases/general/issue43290.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue43290.dart.textual_outline_modelled.expect index 8de1000550a..f80d7f18c98 100644 --- a/pkg/front_end/testcases/general/issue43290.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue43290.dart.textual_outline_modelled.expect @@ -1,6 +1,5 @@ -// @dart = 2.9 class Class { - const Class({this.length}); + const Class({this.length: 0}); final int length; method1a() {} method1b() {} diff --git a/pkg/front_end/testcases/general/issue43290.dart.weak.expect b/pkg/front_end/testcases/general/issue43290.dart.weak.expect index 436e5dd83c7..74e725c6cfe 100644 --- a/pkg/front_end/testcases/general/issue43290.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue43290.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -48,8 +48,8 @@ import self as self; import "dart:core" as core; class Class extends core::Object /*hasConstConstructor*/ { - final field core::int* length; - const constructor •({core::int* length = #C1}) → self::Class* + final field core::int length; + const constructor •({core::int length = #C1}) → self::Class : self::Class::length = length, super core::Object::•() ; method method1a() → dynamic { @@ -59,24 +59,14 @@ class Class extends core::Object /*hasConstConstructor*/ { invalid-expression "Not a constant expression."; } method method2a() → dynamic { - const core::int* a = invalid-expression "Not a constant expression."; + const core::int a = invalid-expression "Not a constant expression."; } method method2b() → dynamic { - const core::int* a = invalid-expression "Not a constant expression."; + const core::int a = invalid-expression "Not a constant expression."; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} constants { - #C1 = null + #C1 = 0 } diff --git a/pkg/front_end/testcases/general/issue43290.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue43290.dart.weak.modular.expect index 436e5dd83c7..74e725c6cfe 100644 --- a/pkg/front_end/testcases/general/issue43290.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue43290.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -48,8 +48,8 @@ import self as self; import "dart:core" as core; class Class extends core::Object /*hasConstConstructor*/ { - final field core::int* length; - const constructor •({core::int* length = #C1}) → self::Class* + final field core::int length; + const constructor •({core::int length = #C1}) → self::Class : self::Class::length = length, super core::Object::•() ; method method1a() → dynamic { @@ -59,24 +59,14 @@ class Class extends core::Object /*hasConstConstructor*/ { invalid-expression "Not a constant expression."; } method method2a() → dynamic { - const core::int* a = invalid-expression "Not a constant expression."; + const core::int a = invalid-expression "Not a constant expression."; } method method2b() → dynamic { - const core::int* a = invalid-expression "Not a constant expression."; + const core::int a = invalid-expression "Not a constant expression."; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} constants { - #C1 = null + #C1 = 0 } diff --git a/pkg/front_end/testcases/general/issue43290.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue43290.dart.weak.outline.expect index 51f0c9fa7b7..5b46fa494dc 100644 --- a/pkg/front_end/testcases/general/issue43290.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue43290.dart.weak.outline.expect @@ -1,10 +1,10 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Class extends core::Object /*hasConstConstructor*/ { - final field core::int* length; - const constructor •({core::int* length}) → self::Class* + final field core::int length; + const constructor •({core::int length = 0}) → self::Class : self::Class::length = length, super core::Object::•() ; method method1a() → dynamic @@ -15,16 +15,6 @@ class Class extends core::Object /*hasConstConstructor*/ { ; method method2b() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue43290.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue43290.dart.weak.transformed.expect index 436e5dd83c7..74e725c6cfe 100644 --- a/pkg/front_end/testcases/general/issue43290.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue43290.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -48,8 +48,8 @@ import self as self; import "dart:core" as core; class Class extends core::Object /*hasConstConstructor*/ { - final field core::int* length; - const constructor •({core::int* length = #C1}) → self::Class* + final field core::int length; + const constructor •({core::int length = #C1}) → self::Class : self::Class::length = length, super core::Object::•() ; method method1a() → dynamic { @@ -59,24 +59,14 @@ class Class extends core::Object /*hasConstConstructor*/ { invalid-expression "Not a constant expression."; } method method2a() → dynamic { - const core::int* a = invalid-expression "Not a constant expression."; + const core::int a = invalid-expression "Not a constant expression."; } method method2b() → dynamic { - const core::int* a = invalid-expression "Not a constant expression."; + const core::int a = invalid-expression "Not a constant expression."; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} constants { - #C1 = null + #C1 = 0 } diff --git a/pkg/front_end/testcases/general/issue43363.dart b/pkg/front_end/testcases/general/issue43363.dart index e85b5991a1b..86d91ec469a 100644 --- a/pkg/front_end/testcases/general/issue43363.dart +++ b/pkg/front_end/testcases/general/issue43363.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class E { final int x; final int y; diff --git a/pkg/front_end/testcases/general/issue43363.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue43363.dart.textual_outline.expect index abcc4906b82..f2bf39efe07 100644 --- a/pkg/front_end/testcases/general/issue43363.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue43363.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class E { final int x; final int y; diff --git a/pkg/front_end/testcases/general/issue43363.dart.weak.expect b/pkg/front_end/testcases/general/issue43363.dart.weak.expect index b4cfb49de77..42b4c7d3561 100644 --- a/pkg/front_end/testcases/general/issue43363.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue43363.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -34,27 +34,17 @@ import self as self; import "dart:core" as core; class E extends core::Object { - final field core::int* x; - final field core::int* y = null; - constructor •() → self::E* + final field core::int x; + final field core::int y = null; + constructor •() → self::E : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/issue43363.dart:9:16: Error: A redirecting constructor can't have other initializers. this.x = 1; ^", this self::E::named() ; - constructor named() → self::E* + constructor named() → self::E : self::E::x = 5, final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/issue43363.dart:13:20: Error: Can't use 'y' because it is declared more than once. this.y = 6; ^" ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue43363.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue43363.dart.weak.modular.expect index b4cfb49de77..42b4c7d3561 100644 --- a/pkg/front_end/testcases/general/issue43363.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue43363.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -34,27 +34,17 @@ import self as self; import "dart:core" as core; class E extends core::Object { - final field core::int* x; - final field core::int* y = null; - constructor •() → self::E* + final field core::int x; + final field core::int y = null; + constructor •() → self::E : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/issue43363.dart:9:16: Error: A redirecting constructor can't have other initializers. this.x = 1; ^", this self::E::named() ; - constructor named() → self::E* + constructor named() → self::E : self::E::x = 5, final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/issue43363.dart:13:20: Error: Can't use 'y' because it is declared more than once. this.y = 6; ^" ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue43363.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue43363.dart.weak.outline.expect index e44f548ee9e..6489545bfdb 100644 --- a/pkg/front_end/testcases/general/issue43363.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue43363.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -26,22 +26,12 @@ import self as self; import "dart:core" as core; class E extends core::Object { - final field core::int* x; - final field core::int* y; - constructor •() → self::E* + final field core::int x; + final field core::int y; + constructor •() → self::E ; - constructor named() → self::E* + constructor named() → self::E ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue43363.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue43363.dart.weak.transformed.expect index b4cfb49de77..42b4c7d3561 100644 --- a/pkg/front_end/testcases/general/issue43363.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue43363.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -34,27 +34,17 @@ import self as self; import "dart:core" as core; class E extends core::Object { - final field core::int* x; - final field core::int* y = null; - constructor •() → self::E* + final field core::int x; + final field core::int y = null; + constructor •() → self::E : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/issue43363.dart:9:16: Error: A redirecting constructor can't have other initializers. this.x = 1; ^", this self::E::named() ; - constructor named() → self::E* + constructor named() → self::E : self::E::x = 5, final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/issue43363.dart:13:20: Error: Can't use 'y' because it is declared more than once. this.y = 6; ^" ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue43975.dart b/pkg/front_end/testcases/general/issue43975.dart index 8511b80097e..929affaad98 100644 --- a/pkg/front_end/testcases/general/issue43975.dart +++ b/pkg/front_end/testcases/general/issue43975.dart @@ -1,6 +1,6 @@ // Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + typedef F = void Function() Function(); void main() {} diff --git a/pkg/front_end/testcases/general/issue43975.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue43975.dart.textual_outline.expect index 7bf4086fcd4..ccb87d948fa 100644 --- a/pkg/front_end/testcases/general/issue43975.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue43975.dart.textual_outline.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 typedef F = void Function() Function(); void main() {} diff --git a/pkg/front_end/testcases/general/issue43975.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue43975.dart.textual_outline_modelled.expect index 7bf4086fcd4..ccb87d948fa 100644 --- a/pkg/front_end/testcases/general/issue43975.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue43975.dart.textual_outline_modelled.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 typedef F = void Function() Function(); void main() {} diff --git a/pkg/front_end/testcases/general/issue43975.dart.weak.expect b/pkg/front_end/testcases/general/issue43975.dart.weak.expect index a1da9362e26..8d7db117074 100644 --- a/pkg/front_end/testcases/general/issue43975.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue43975.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // diff --git a/pkg/front_end/testcases/general/issue43975.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue43975.dart.weak.modular.expect index a1da9362e26..8d7db117074 100644 --- a/pkg/front_end/testcases/general/issue43975.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue43975.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // diff --git a/pkg/front_end/testcases/general/issue43975.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue43975.dart.weak.outline.expect index a61aa2385a5..a710114718d 100644 --- a/pkg/front_end/testcases/general/issue43975.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue43975.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // diff --git a/pkg/front_end/testcases/general/issue43975.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue43975.dart.weak.transformed.expect index a1da9362e26..8d7db117074 100644 --- a/pkg/front_end/testcases/general/issue43975.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue43975.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // diff --git a/pkg/front_end/testcases/general/issue44347.dart b/pkg/front_end/testcases/general/issue44347.dart index 074b4e5d7f9..0389b0388bf 100644 --- a/pkg/front_end/testcases/general/issue44347.dart +++ b/pkg/front_end/testcases/general/issue44347.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - test() { Set.(); } diff --git a/pkg/front_end/testcases/general/issue44347.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue44347.dart.textual_outline.expect index 001308b8147..ec6b9e02445 100644 --- a/pkg/front_end/testcases/general/issue44347.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue44347.dart.textual_outline.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 test() {} main() {} diff --git a/pkg/front_end/testcases/general/issue44347.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue44347.dart.textual_outline_modelled.expect index 38df08d5a5b..f67dbb0fde5 100644 --- a/pkg/front_end/testcases/general/issue44347.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue44347.dart.textual_outline_modelled.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 main() {} test() {} diff --git a/pkg/front_end/testcases/general/issue44347.dart.weak.expect b/pkg/front_end/testcases/general/issue44347.dart.weak.expect index 0fce86b974e..bd718d53ad7 100644 --- a/pkg/front_end/testcases/general/issue44347.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue44347.dart.weak.expect @@ -1,18 +1,13 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue44347.dart:8:6: Error: This requires the 'constructor-tearoffs' language feature to be enabled. -// Try updating your pubspec.yaml to set the minimum SDK constraint to 2.15 or higher, and running 'pub get'. -// Set.(); -// ^ -// -// pkg/front_end/testcases/general/issue44347.dart:8:13: Error: Expected an identifier, but got ')'. +// pkg/front_end/testcases/general/issue44347.dart:6:13: Error: Expected an identifier, but got ')'. // Try inserting an identifier before ')'. // Set.(); // ^ // -// pkg/front_end/testcases/general/issue44347.dart:8:12: Error: Expected an identifier, but got '('. +// pkg/front_end/testcases/general/issue44347.dart:6:12: Error: Expected an identifier, but got '('. // Try inserting an identifier before '('. // Set.(); // ^ @@ -20,7 +15,7 @@ library; import self as self; static method test() → dynamic { - invalid-expression "pkg/front_end/testcases/general/issue44347.dart:8:12: Error: Expected an identifier, but got '('. + invalid-expression "pkg/front_end/testcases/general/issue44347.dart:6:12: Error: Expected an identifier, but got '('. Try inserting an identifier before '('. Set.(); ^"; diff --git a/pkg/front_end/testcases/general/issue44347.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue44347.dart.weak.modular.expect index 0fce86b974e..bd718d53ad7 100644 --- a/pkg/front_end/testcases/general/issue44347.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue44347.dart.weak.modular.expect @@ -1,18 +1,13 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue44347.dart:8:6: Error: This requires the 'constructor-tearoffs' language feature to be enabled. -// Try updating your pubspec.yaml to set the minimum SDK constraint to 2.15 or higher, and running 'pub get'. -// Set.(); -// ^ -// -// pkg/front_end/testcases/general/issue44347.dart:8:13: Error: Expected an identifier, but got ')'. +// pkg/front_end/testcases/general/issue44347.dart:6:13: Error: Expected an identifier, but got ')'. // Try inserting an identifier before ')'. // Set.(); // ^ // -// pkg/front_end/testcases/general/issue44347.dart:8:12: Error: Expected an identifier, but got '('. +// pkg/front_end/testcases/general/issue44347.dart:6:12: Error: Expected an identifier, but got '('. // Try inserting an identifier before '('. // Set.(); // ^ @@ -20,7 +15,7 @@ library; import self as self; static method test() → dynamic { - invalid-expression "pkg/front_end/testcases/general/issue44347.dart:8:12: Error: Expected an identifier, but got '('. + invalid-expression "pkg/front_end/testcases/general/issue44347.dart:6:12: Error: Expected an identifier, but got '('. Try inserting an identifier before '('. Set.(); ^"; diff --git a/pkg/front_end/testcases/general/issue44347.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue44347.dart.weak.outline.expect index a29647d8b05..64923de82f0 100644 --- a/pkg/front_end/testcases/general/issue44347.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue44347.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; static method test() → dynamic diff --git a/pkg/front_end/testcases/general/issue44347.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue44347.dart.weak.transformed.expect index 0fce86b974e..bd718d53ad7 100644 --- a/pkg/front_end/testcases/general/issue44347.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue44347.dart.weak.transformed.expect @@ -1,18 +1,13 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // -// pkg/front_end/testcases/general/issue44347.dart:8:6: Error: This requires the 'constructor-tearoffs' language feature to be enabled. -// Try updating your pubspec.yaml to set the minimum SDK constraint to 2.15 or higher, and running 'pub get'. -// Set.(); -// ^ -// -// pkg/front_end/testcases/general/issue44347.dart:8:13: Error: Expected an identifier, but got ')'. +// pkg/front_end/testcases/general/issue44347.dart:6:13: Error: Expected an identifier, but got ')'. // Try inserting an identifier before ')'. // Set.(); // ^ // -// pkg/front_end/testcases/general/issue44347.dart:8:12: Error: Expected an identifier, but got '('. +// pkg/front_end/testcases/general/issue44347.dart:6:12: Error: Expected an identifier, but got '('. // Try inserting an identifier before '('. // Set.(); // ^ @@ -20,7 +15,7 @@ library; import self as self; static method test() → dynamic { - invalid-expression "pkg/front_end/testcases/general/issue44347.dart:8:12: Error: Expected an identifier, but got '('. + invalid-expression "pkg/front_end/testcases/general/issue44347.dart:6:12: Error: Expected an identifier, but got '('. Try inserting an identifier before '('. Set.(); ^"; diff --git a/pkg/front_end/testcases/general/issue44476.dart b/pkg/front_end/testcases/general/issue44476.dart index 809de5b8314..d8459e266d6 100644 --- a/pkg/front_end/testcases/general/issue44476.dart +++ b/pkg/front_end/testcases/general/issue44476.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A {} foo(A x) { diff --git a/pkg/front_end/testcases/general/issue44476.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue44476.dart.textual_outline.expect index 16819401e5d..c3257fc4fa3 100644 --- a/pkg/front_end/testcases/general/issue44476.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue44476.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A {} foo(A x) {} diff --git a/pkg/front_end/testcases/general/issue44476.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue44476.dart.textual_outline_modelled.expect index 16819401e5d..c3257fc4fa3 100644 --- a/pkg/front_end/testcases/general/issue44476.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue44476.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A {} foo(A x) {} diff --git a/pkg/front_end/testcases/general/issue44476.dart.weak.expect b/pkg/front_end/testcases/general/issue44476.dart.weak.expect index 645587c8925..0f8715b997e 100644 --- a/pkg/front_end/testcases/general/issue44476.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue44476.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -61,28 +61,18 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method foo(self::A* x) → dynamic { - function bar(self::A* y) → Null { - function barbar(self::A* yy) → Null +static method foo(self::A x) → dynamic { + function bar(self::A y) → Null { + function barbar(self::A yy) → Null return null; } - (self::A*) →* Null baz = (self::A* z) → Null { - (self::A*) →* Null bazbaz = (self::A* zz) → Null => null; + (self::A) → Null baz = (self::A z) → Null { + (self::A) → Null bazbaz = (self::A zz) → Null => null; }; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue44476.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue44476.dart.weak.modular.expect index 645587c8925..0f8715b997e 100644 --- a/pkg/front_end/testcases/general/issue44476.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue44476.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -61,28 +61,18 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method foo(self::A* x) → dynamic { - function bar(self::A* y) → Null { - function barbar(self::A* yy) → Null +static method foo(self::A x) → dynamic { + function bar(self::A y) → Null { + function barbar(self::A yy) → Null return null; } - (self::A*) →* Null baz = (self::A* z) → Null { - (self::A*) →* Null bazbaz = (self::A* zz) → Null => null; + (self::A) → Null baz = (self::A z) → Null { + (self::A) → Null bazbaz = (self::A zz) → Null => null; }; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue44476.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue44476.dart.weak.outline.expect index 2131965dec8..ab893e2fb77 100644 --- a/pkg/front_end/testcases/general/issue44476.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue44476.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -13,21 +13,11 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method foo(self::A* x) → dynamic +static method foo(self::A x) → dynamic ; static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue44476.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue44476.dart.weak.transformed.expect index 645587c8925..0f8715b997e 100644 --- a/pkg/front_end/testcases/general/issue44476.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue44476.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -61,28 +61,18 @@ library; import self as self; import "dart:core" as core; -class A extends core::Object { - synthetic constructor •() → self::A* +class A extends core::Object { + synthetic constructor •() → self::A : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method foo(self::A* x) → dynamic { - function bar(self::A* y) → Null { - function barbar(self::A* yy) → Null +static method foo(self::A x) → dynamic { + function bar(self::A y) → Null { + function barbar(self::A yy) → Null return null; } - (self::A*) →* Null baz = (self::A* z) → Null { - (self::A*) →* Null bazbaz = (self::A* zz) → Null => null; + (self::A) → Null baz = (self::A z) → Null { + (self::A) → Null bazbaz = (self::A zz) → Null => null; }; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue44654.dart b/pkg/front_end/testcases/general/issue44654.dart index ad48c4558f2..267e87944ce 100644 --- a/pkg/front_end/testcases/general/issue44654.dart +++ b/pkg/front_end/testcases/general/issue44654.dart @@ -1,8 +1,8 @@ // Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 -// @dart = 2.9 void test2() { String string = null; diff --git a/pkg/front_end/testcases/general/issue44654.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue44654.dart.textual_outline.expect index d7c0d324230..a95637c6f80 100644 --- a/pkg/front_end/testcases/general/issue44654.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue44654.dart.textual_outline.expect @@ -1,5 +1,4 @@ // @dart = 2.9 -// @dart = 2.9 void test2() {} void main() {} void checkFirstLineHasPosition(StackTrace stackTrace) {} diff --git a/pkg/front_end/testcases/general/issue44654.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue44654.dart.textual_outline_modelled.expect index 3d04f913ddb..95b559864aa 100644 --- a/pkg/front_end/testcases/general/issue44654.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue44654.dart.textual_outline_modelled.expect @@ -1,5 +1,4 @@ // @dart = 2.9 -// @dart = 2.9 void checkFirstLineHasPosition(StackTrace stackTrace) {} void main() {} void test2() {} diff --git a/pkg/front_end/testcases/general/issue45598_2.dart b/pkg/front_end/testcases/general/issue45598_2.dart index 61a731e3b39..7d615c3f177 100644 --- a/pkg/front_end/testcases/general/issue45598_2.dart +++ b/pkg/front_end/testcases/general/issue45598_2.dart @@ -2,10 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - foo(Map m) { - void bar({Map m}) {} + void bar({required Map m}) {} bar(m: m); } diff --git a/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline.expect index 983b1d039b2..853274f8f32 100644 --- a/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 foo(Map m) {} main() {} diff --git a/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline_modelled.expect index 983b1d039b2..853274f8f32 100644 --- a/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/issue45598_2.dart.textual_outline_modelled.expect @@ -1,3 +1,2 @@ -// @dart = 2.9 foo(Map m) {} main() {} diff --git a/pkg/front_end/testcases/general/issue45598_2.dart.weak.expect b/pkg/front_end/testcases/general/issue45598_2.dart.weak.expect index eff30facab4..f0813ae86ba 100644 --- a/pkg/front_end/testcases/general/issue45598_2.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue45598_2.dart.weak.expect @@ -1,10 +1,10 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method foo(core::Map* m) → dynamic { - function bar({core::Map* m = #C1}) → void {} - bar(m: m){({m: core::Map*}) →* void}; +static method foo(core::Map m) → dynamic { + function bar({required core::Map m = #C1}) → void {} + bar(m: m){({required m: core::Map}) → void}; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue45598_2.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue45598_2.dart.weak.modular.expect index eff30facab4..f0813ae86ba 100644 --- a/pkg/front_end/testcases/general/issue45598_2.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue45598_2.dart.weak.modular.expect @@ -1,10 +1,10 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method foo(core::Map* m) → dynamic { - function bar({core::Map* m = #C1}) → void {} - bar(m: m){({m: core::Map*}) →* void}; +static method foo(core::Map m) → dynamic { + function bar({required core::Map m = #C1}) → void {} + bar(m: m){({required m: core::Map}) → void}; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue45598_2.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue45598_2.dart.weak.outline.expect index 9efffa9a364..1e7263b0d29 100644 --- a/pkg/front_end/testcases/general/issue45598_2.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue45598_2.dart.weak.outline.expect @@ -1,8 +1,8 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method foo(core::Map* m) → dynamic +static method foo(core::Map m) → dynamic ; static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue45598_2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue45598_2.dart.weak.transformed.expect index eff30facab4..f0813ae86ba 100644 --- a/pkg/front_end/testcases/general/issue45598_2.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue45598_2.dart.weak.transformed.expect @@ -1,10 +1,10 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -static method foo(core::Map* m) → dynamic { - function bar({core::Map* m = #C1}) → void {} - bar(m: m){({m: core::Map*}) →* void}; +static method foo(core::Map m) → dynamic { + function bar({required core::Map m = #C1}) → void {} + bar(m: m){({required m: core::Map}) → void}; } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue45660_2.dart b/pkg/front_end/testcases/general/issue45660_2.dart new file mode 100644 index 00000000000..434fdc429e9 --- /dev/null +++ b/pkg/front_end/testcases/general/issue45660_2.dart @@ -0,0 +1,12 @@ +// Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +T Function(T) extendsNumReturnArg = (S s) => s; + +functionInvocations() { + extendsNumReturnArg/**/(null); + extendsNumReturnArg/**/(""); +} + +main() {} diff --git a/pkg/front_end/testcases/general/issue45660_2.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue45660_2.dart.textual_outline.expect new file mode 100644 index 00000000000..363627b2e27 --- /dev/null +++ b/pkg/front_end/testcases/general/issue45660_2.dart.textual_outline.expect @@ -0,0 +1,3 @@ +T Function(T) extendsNumReturnArg = (S s) => s; +functionInvocations() {} +main() {} diff --git a/pkg/front_end/testcases/general/issue45660_2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue45660_2.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..363627b2e27 --- /dev/null +++ b/pkg/front_end/testcases/general/issue45660_2.dart.textual_outline_modelled.expect @@ -0,0 +1,3 @@ +T Function(T) extendsNumReturnArg = (S s) => s; +functionInvocations() {} +main() {} diff --git a/pkg/front_end/testcases/general/issue45660_2.dart.weak.expect b/pkg/front_end/testcases/general/issue45660_2.dart.weak.expect new file mode 100644 index 00000000000..b4ba3a7b481 --- /dev/null +++ b/pkg/front_end/testcases/general/issue45660_2.dart.weak.expect @@ -0,0 +1,23 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/issue45660_2.dart:8:22: Error: Inferred type argument 'Null' doesn't conform to the bound 'num' of the type variable 'T' on 'call'. +// Try specifying type arguments explicitly so that they conform to the bounds. +// extendsNumReturnArg/**/(null); +// ^ +// +// pkg/front_end/testcases/general/issue45660_2.dart:9:22: Error: Inferred type argument 'String' doesn't conform to the bound 'num' of the type variable 'T' on 'call'. +// Try specifying type arguments explicitly so that they conform to the bounds. +// extendsNumReturnArg/**/(""); +// ^ +// +import self as self; +import "dart:core" as core; + +static field (T) → T extendsNumReturnArg = (S s) → S => s; +static method functionInvocations() → dynamic { + self::extendsNumReturnArg(null){(Null) → Null}; + self::extendsNumReturnArg(""){(core::String) → core::String}; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue45660_2.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue45660_2.dart.weak.modular.expect new file mode 100644 index 00000000000..b4ba3a7b481 --- /dev/null +++ b/pkg/front_end/testcases/general/issue45660_2.dart.weak.modular.expect @@ -0,0 +1,23 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/issue45660_2.dart:8:22: Error: Inferred type argument 'Null' doesn't conform to the bound 'num' of the type variable 'T' on 'call'. +// Try specifying type arguments explicitly so that they conform to the bounds. +// extendsNumReturnArg/**/(null); +// ^ +// +// pkg/front_end/testcases/general/issue45660_2.dart:9:22: Error: Inferred type argument 'String' doesn't conform to the bound 'num' of the type variable 'T' on 'call'. +// Try specifying type arguments explicitly so that they conform to the bounds. +// extendsNumReturnArg/**/(""); +// ^ +// +import self as self; +import "dart:core" as core; + +static field (T) → T extendsNumReturnArg = (S s) → S => s; +static method functionInvocations() → dynamic { + self::extendsNumReturnArg(null){(Null) → Null}; + self::extendsNumReturnArg(""){(core::String) → core::String}; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue45660_2.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue45660_2.dart.weak.outline.expect new file mode 100644 index 00000000000..33986f217bc --- /dev/null +++ b/pkg/front_end/testcases/general/issue45660_2.dart.weak.outline.expect @@ -0,0 +1,9 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +static field (T) → T extendsNumReturnArg; +static method functionInvocations() → dynamic + ; +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/issue45660_2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue45660_2.dart.weak.transformed.expect new file mode 100644 index 00000000000..b4ba3a7b481 --- /dev/null +++ b/pkg/front_end/testcases/general/issue45660_2.dart.weak.transformed.expect @@ -0,0 +1,23 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/issue45660_2.dart:8:22: Error: Inferred type argument 'Null' doesn't conform to the bound 'num' of the type variable 'T' on 'call'. +// Try specifying type arguments explicitly so that they conform to the bounds. +// extendsNumReturnArg/**/(null); +// ^ +// +// pkg/front_end/testcases/general/issue45660_2.dart:9:22: Error: Inferred type argument 'String' doesn't conform to the bound 'num' of the type variable 'T' on 'call'. +// Try specifying type arguments explicitly so that they conform to the bounds. +// extendsNumReturnArg/**/(""); +// ^ +// +import self as self; +import "dart:core" as core; + +static field (T) → T extendsNumReturnArg = (S s) → S => s; +static method functionInvocations() → dynamic { + self::extendsNumReturnArg(null){(Null) → Null}; + self::extendsNumReturnArg(""){(core::String) → core::String}; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue47495.dart b/pkg/front_end/testcases/general/issue47495.dart index 53c19c16d24..fcef9eee442 100644 --- a/pkg/front_end/testcases/general/issue47495.dart +++ b/pkg/front_end/testcases/general/issue47495.dart @@ -2,9 +2,10 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart = 2.9 +// @dart=2.13 class S {} + class M {} typedef SAlias = S; diff --git a/pkg/front_end/testcases/general/issue47495.dart.textual_outline.expect b/pkg/front_end/testcases/general/issue47495.dart.textual_outline.expect index c7f347129af..d5c68b3ecf3 100644 --- a/pkg/front_end/testcases/general/issue47495.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/issue47495.dart.textual_outline.expect @@ -1,6 +1,8 @@ -// @dart = 2.9 +// @dart = 2.13 class S {} + class M {} + typedef SAlias = S; typedef MAlias = M; class C = SAlias with MAlias; diff --git a/pkg/front_end/testcases/general/issue47495.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/issue47495.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..f8cb0e4535c --- /dev/null +++ b/pkg/front_end/testcases/general/issue47495.dart.textual_outline_modelled.expect @@ -0,0 +1,10 @@ +// @dart = 2.13 +class C = SAlias with MAlias; + +class M {} + +class S {} + +main() {} +typedef MAlias = M; +typedef SAlias = S; diff --git a/pkg/front_end/testcases/general/issue47495.dart.weak.expect b/pkg/front_end/testcases/general/issue47495.dart.weak.expect index aeebd164846..bb6f57a142b 100644 --- a/pkg/front_end/testcases/general/issue47495.dart.weak.expect +++ b/pkg/front_end/testcases/general/issue47495.dart.weak.expect @@ -1,70 +1,22 @@ -library; -// -// Problems in library: -// -// pkg/front_end/testcases/general/issue47495.dart:10:16: Error: Can't create typedef from non-function type. -// typedef SAlias = S; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:11:16: Error: Can't create typedef from non-function type. -// typedef MAlias = M; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:13:7: Error: The type 'MAlias' can't be mixed in. -// class C = SAlias with MAlias; -// ^ -// pkg/front_end/testcases/general/issue47495.dart:11:9: Context: The issue arises via this type alias. -// typedef MAlias = M; -// ^ -// +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef SAlias = invalid-type; -typedef MAlias = invalid-type; +typedef SAlias = self::S; +typedef MAlias = self::M; class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class C extends core::Object { - synthetic constructor •() → self::C* - : super core::Object::•() +class C = self::S with self::M { + synthetic constructor •() → self::C + : super self::S::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue47495.dart.weak.modular.expect b/pkg/front_end/testcases/general/issue47495.dart.weak.modular.expect index aeebd164846..bb6f57a142b 100644 --- a/pkg/front_end/testcases/general/issue47495.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/issue47495.dart.weak.modular.expect @@ -1,70 +1,22 @@ -library; -// -// Problems in library: -// -// pkg/front_end/testcases/general/issue47495.dart:10:16: Error: Can't create typedef from non-function type. -// typedef SAlias = S; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:11:16: Error: Can't create typedef from non-function type. -// typedef MAlias = M; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:13:7: Error: The type 'MAlias' can't be mixed in. -// class C = SAlias with MAlias; -// ^ -// pkg/front_end/testcases/general/issue47495.dart:11:9: Context: The issue arises via this type alias. -// typedef MAlias = M; -// ^ -// +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef SAlias = invalid-type; -typedef MAlias = invalid-type; +typedef SAlias = self::S; +typedef MAlias = self::M; class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class C extends core::Object { - synthetic constructor •() → self::C* - : super core::Object::•() +class C = self::S with self::M { + synthetic constructor •() → self::C + : super self::S::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/issue47495.dart.weak.outline.expect b/pkg/front_end/testcases/general/issue47495.dart.weak.outline.expect index 697ca5b678e..d437b4ab806 100644 --- a/pkg/front_end/testcases/general/issue47495.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/issue47495.dart.weak.outline.expect @@ -1,68 +1,21 @@ -library; -// -// Problems in library: -// -// pkg/front_end/testcases/general/issue47495.dart:10:16: Error: Can't create typedef from non-function type. -// typedef SAlias = S; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:11:16: Error: Can't create typedef from non-function type. -// typedef MAlias = M; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:13:7: Error: The type 'MAlias' can't be mixed in. -// class C = SAlias with MAlias; -// ^ -// pkg/front_end/testcases/general/issue47495.dart:11:9: Context: The issue arises via this type alias. -// typedef MAlias = M; -// ^ -// +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef SAlias = invalid-type; -typedef MAlias = invalid-type; +typedef SAlias = self::S; +typedef MAlias = self::M; class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class C extends core::Object { - synthetic constructor •() → self::C* +class C = self::S with self::M { + synthetic constructor •() → self::C + : super self::S::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/issue47495.dart.weak.transformed.expect b/pkg/front_end/testcases/general/issue47495.dart.weak.transformed.expect index aeebd164846..a9933ce0a3c 100644 --- a/pkg/front_end/testcases/general/issue47495.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/issue47495.dart.weak.transformed.expect @@ -1,70 +1,22 @@ -library; -// -// Problems in library: -// -// pkg/front_end/testcases/general/issue47495.dart:10:16: Error: Can't create typedef from non-function type. -// typedef SAlias = S; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:11:16: Error: Can't create typedef from non-function type. -// typedef MAlias = M; -// ^ -// -// pkg/front_end/testcases/general/issue47495.dart:13:7: Error: The type 'MAlias' can't be mixed in. -// class C = SAlias with MAlias; -// ^ -// pkg/front_end/testcases/general/issue47495.dart:11:9: Context: The issue arises via this type alias. -// typedef MAlias = M; -// ^ -// +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef SAlias = invalid-type; -typedef MAlias = invalid-type; +typedef SAlias = self::S; +typedef MAlias = self::M; class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class C extends core::Object { - synthetic constructor •() → self::C* - : super core::Object::•() +class C extends self::S implements self::M /*isEliminatedMixin*/ { + synthetic constructor •() → self::C + : super self::S::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/literals.dart b/pkg/front_end/testcases/general/literals.dart index 0d637cc200b..561b82c3308 100644 --- a/pkg/front_end/testcases/general/literals.dart +++ b/pkg/front_end/testcases/general/literals.dart @@ -1,7 +1,7 @@ // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + testString() { print("a"); } diff --git a/pkg/front_end/testcases/general/literals.dart.textual_outline.expect b/pkg/front_end/testcases/general/literals.dart.textual_outline.expect index 23ee3bf3a9e..8732e5c8e4e 100644 --- a/pkg/front_end/testcases/general/literals.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/literals.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 testString() {} testInt() {} testBool() {} diff --git a/pkg/front_end/testcases/general/literals.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/literals.dart.textual_outline_modelled.expect index 1125de154a6..e45ac05bf89 100644 --- a/pkg/front_end/testcases/general/literals.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/literals.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 main() {} testBool() {} testDouble() {} diff --git a/pkg/front_end/testcases/general/literals.dart.weak.expect b/pkg/front_end/testcases/general/literals.dart.weak.expect index 8ef3e48deac..2bbe1559e5c 100644 --- a/pkg/front_end/testcases/general/literals.dart.weak.expect +++ b/pkg/front_end/testcases/general/literals.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @@ -20,11 +20,11 @@ static method testNull() → dynamic { } static method testList() → dynamic { core::print([]); - core::print(["a", "b"]); + core::print(["a", "b"]); } static method testMap() → dynamic { core::print({}); - core::print({"a": "b"}); + core::print({"a": "b"}); } static method testSymbol() → dynamic { core::print(#C1); diff --git a/pkg/front_end/testcases/general/literals.dart.weak.modular.expect b/pkg/front_end/testcases/general/literals.dart.weak.modular.expect index 8ef3e48deac..2bbe1559e5c 100644 --- a/pkg/front_end/testcases/general/literals.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/literals.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @@ -20,11 +20,11 @@ static method testNull() → dynamic { } static method testList() → dynamic { core::print([]); - core::print(["a", "b"]); + core::print(["a", "b"]); } static method testMap() → dynamic { core::print({}); - core::print({"a": "b"}); + core::print({"a": "b"}); } static method testSymbol() → dynamic { core::print(#C1); diff --git a/pkg/front_end/testcases/general/literals.dart.weak.outline.expect b/pkg/front_end/testcases/general/literals.dart.weak.outline.expect index ffc79f20f62..7c2a464b117 100644 --- a/pkg/front_end/testcases/general/literals.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/literals.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; static method testString() → dynamic diff --git a/pkg/front_end/testcases/general/literals.dart.weak.transformed.expect b/pkg/front_end/testcases/general/literals.dart.weak.transformed.expect index ae7c90f78f1..9a94341b9c0 100644 --- a/pkg/front_end/testcases/general/literals.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/literals.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @@ -20,11 +20,11 @@ static method testNull() → dynamic { } static method testList() → dynamic { core::print(core::_GrowableList::•(0)); - core::print(core::_GrowableList::_literal2("a", "b")); + core::print(core::_GrowableList::_literal2("a", "b")); } static method testMap() → dynamic { core::print({}); - core::print({"a": "b"}); + core::print({"a": "b"}); } static method testSymbol() → dynamic { core::print(#C1); diff --git a/pkg/front_end/testcases/general/local_generic_function.dart b/pkg/front_end/testcases/general/local_generic_function.dart index 05ec92714c0..a251f14e491 100644 --- a/pkg/front_end/testcases/general/local_generic_function.dart +++ b/pkg/front_end/testcases/general/local_generic_function.dart @@ -1,7 +1,7 @@ // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + main() { T f(List l) => l[0]; var x = f([0]); diff --git a/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline.expect b/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline.expect index 7c126a21acd..bae895adcb6 100644 --- a/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline.expect @@ -1,2 +1 @@ -// @dart = 2.9 main() {} diff --git a/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline_modelled.expect index 7c126a21acd..bae895adcb6 100644 --- a/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/local_generic_function.dart.textual_outline_modelled.expect @@ -1,2 +1 @@ -// @dart = 2.9 main() {} diff --git a/pkg/front_end/testcases/general/local_generic_function.dart.weak.expect b/pkg/front_end/testcases/general/local_generic_function.dart.weak.expect index b22d5a75a5c..bfb45dd06ee 100644 --- a/pkg/front_end/testcases/general/local_generic_function.dart.weak.expect +++ b/pkg/front_end/testcases/general/local_generic_function.dart.weak.expect @@ -1,9 +1,9 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; static method main() → dynamic { - function f(core::List* l) → T* - return l.{core::List::[]}(0){(core::int*) →* T*}; - core::int* x = f([0]){(core::List*) →* core::int*}; + function f(core::List l) → T% + return l.{core::List::[]}(0){(core::int) → T%}; + core::int x = f([0]){(core::List) → core::int}; } diff --git a/pkg/front_end/testcases/general/local_generic_function.dart.weak.modular.expect b/pkg/front_end/testcases/general/local_generic_function.dart.weak.modular.expect index b22d5a75a5c..bfb45dd06ee 100644 --- a/pkg/front_end/testcases/general/local_generic_function.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/local_generic_function.dart.weak.modular.expect @@ -1,9 +1,9 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; static method main() → dynamic { - function f(core::List* l) → T* - return l.{core::List::[]}(0){(core::int*) →* T*}; - core::int* x = f([0]){(core::List*) →* core::int*}; + function f(core::List l) → T% + return l.{core::List::[]}(0){(core::int) → T%}; + core::int x = f([0]){(core::List) → core::int}; } diff --git a/pkg/front_end/testcases/general/local_generic_function.dart.weak.outline.expect b/pkg/front_end/testcases/general/local_generic_function.dart.weak.outline.expect index 6a28c0dd540..e2cba6be4d1 100644 --- a/pkg/front_end/testcases/general/local_generic_function.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/local_generic_function.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; static method main() → dynamic diff --git a/pkg/front_end/testcases/general/local_generic_function.dart.weak.transformed.expect b/pkg/front_end/testcases/general/local_generic_function.dart.weak.transformed.expect index 6c7e013a3f9..4ad80c11fb8 100644 --- a/pkg/front_end/testcases/general/local_generic_function.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/local_generic_function.dart.weak.transformed.expect @@ -1,9 +1,9 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; static method main() → dynamic { - function f(core::List* l) → T* - return l.{core::List::[]}(0){(core::int*) →* T*}; - core::int* x = f(core::_GrowableList::_literal1(0)){(core::List*) →* core::int*}; + function f(core::List l) → T% + return l.{core::List::[]}(0){(core::int) → T%}; + core::int x = f(core::_GrowableList::_literal1(0)){(core::List) → core::int}; } diff --git a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart index 23b431afd49..6a3864c3b61 100644 --- a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart +++ b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // Test for potentially slow compilation of long typedef dependency chains. typedef Foo01 = void Function(Null); diff --git a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline.expect b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline.expect index 716cfd0d87f..22729bf1ba4 100644 --- a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 typedef Foo01 = void Function(Null); typedef Foo02 = void Function(Foo01); typedef Foo03 = void Function(Foo02); diff --git a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline_modelled.expect index ab48f3f6bf9..20e18484cdf 100644 --- a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 main() {} typedef Foo01 = void Function(Null); typedef Foo02 = void Function(Foo01); diff --git a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.expect b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.expect index 10636b190e5..4bcf146d854 100644 --- a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.expect +++ b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.expect @@ -1,25 +1,25 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef Foo01 = (Null) →* void; -typedef Foo02 = ((Null) →* void) →* void; -typedef Foo03 = (((Null) →* void) →* void) →* void; -typedef Foo04 = ((((Null) →* void) →* void) →* void) →* void; -typedef Foo05 = (((((Null) →* void) →* void) →* void) →* void) →* void; -typedef Foo06 = ((((((Null) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo07 = (((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo08 = ((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo09 = (((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo10 = ((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo11 = (((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo12 = ((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo13 = (((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo14 = ((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo15 = (((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo16 = ((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo17 = (((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo18 = ((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo19 = (((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo20 = ((((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; +typedef Foo01 = (Null) → void; +typedef Foo02 = ((Null) → void) → void; +typedef Foo03 = (((Null) → void) → void) → void; +typedef Foo04 = ((((Null) → void) → void) → void) → void; +typedef Foo05 = (((((Null) → void) → void) → void) → void) → void; +typedef Foo06 = ((((((Null) → void) → void) → void) → void) → void) → void; +typedef Foo07 = (((((((Null) → void) → void) → void) → void) → void) → void) → void; +typedef Foo08 = ((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo09 = (((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo10 = ((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo11 = (((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo12 = ((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo13 = (((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo14 = ((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo15 = (((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo16 = ((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo17 = (((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo18 = ((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo19 = (((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo20 = ((((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.modular.expect b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.modular.expect index 10636b190e5..4bcf146d854 100644 --- a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.modular.expect @@ -1,25 +1,25 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef Foo01 = (Null) →* void; -typedef Foo02 = ((Null) →* void) →* void; -typedef Foo03 = (((Null) →* void) →* void) →* void; -typedef Foo04 = ((((Null) →* void) →* void) →* void) →* void; -typedef Foo05 = (((((Null) →* void) →* void) →* void) →* void) →* void; -typedef Foo06 = ((((((Null) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo07 = (((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo08 = ((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo09 = (((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo10 = ((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo11 = (((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo12 = ((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo13 = (((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo14 = ((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo15 = (((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo16 = ((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo17 = (((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo18 = ((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo19 = (((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo20 = ((((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; +typedef Foo01 = (Null) → void; +typedef Foo02 = ((Null) → void) → void; +typedef Foo03 = (((Null) → void) → void) → void; +typedef Foo04 = ((((Null) → void) → void) → void) → void; +typedef Foo05 = (((((Null) → void) → void) → void) → void) → void; +typedef Foo06 = ((((((Null) → void) → void) → void) → void) → void) → void; +typedef Foo07 = (((((((Null) → void) → void) → void) → void) → void) → void) → void; +typedef Foo08 = ((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo09 = (((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo10 = ((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo11 = (((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo12 = ((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo13 = (((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo14 = ((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo15 = (((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo16 = ((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo17 = (((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo18 = ((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo19 = (((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo20 = ((((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.outline.expect b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.outline.expect index 15cb7730509..5985e90e711 100644 --- a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.outline.expect @@ -1,26 +1,26 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef Foo01 = (Null) →* void; -typedef Foo02 = ((Null) →* void) →* void; -typedef Foo03 = (((Null) →* void) →* void) →* void; -typedef Foo04 = ((((Null) →* void) →* void) →* void) →* void; -typedef Foo05 = (((((Null) →* void) →* void) →* void) →* void) →* void; -typedef Foo06 = ((((((Null) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo07 = (((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo08 = ((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo09 = (((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo10 = ((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo11 = (((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo12 = ((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo13 = (((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo14 = ((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo15 = (((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo16 = ((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo17 = (((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo18 = ((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo19 = (((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo20 = ((((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; +typedef Foo01 = (Null) → void; +typedef Foo02 = ((Null) → void) → void; +typedef Foo03 = (((Null) → void) → void) → void; +typedef Foo04 = ((((Null) → void) → void) → void) → void; +typedef Foo05 = (((((Null) → void) → void) → void) → void) → void; +typedef Foo06 = ((((((Null) → void) → void) → void) → void) → void) → void; +typedef Foo07 = (((((((Null) → void) → void) → void) → void) → void) → void) → void; +typedef Foo08 = ((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo09 = (((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo10 = ((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo11 = (((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo12 = ((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo13 = (((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo14 = ((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo15 = (((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo16 = ((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo17 = (((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo18 = ((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo19 = (((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo20 = ((((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.transformed.expect b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.transformed.expect index 10636b190e5..4bcf146d854 100644 --- a/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/long_chain_of_typedefs.dart.weak.transformed.expect @@ -1,25 +1,25 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef Foo01 = (Null) →* void; -typedef Foo02 = ((Null) →* void) →* void; -typedef Foo03 = (((Null) →* void) →* void) →* void; -typedef Foo04 = ((((Null) →* void) →* void) →* void) →* void; -typedef Foo05 = (((((Null) →* void) →* void) →* void) →* void) →* void; -typedef Foo06 = ((((((Null) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo07 = (((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo08 = ((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo09 = (((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo10 = ((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo11 = (((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo12 = ((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo13 = (((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo14 = ((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo15 = (((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo16 = ((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo17 = (((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo18 = ((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo19 = (((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; -typedef Foo20 = ((((((((((((((((((((Null) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void) →* void; +typedef Foo01 = (Null) → void; +typedef Foo02 = ((Null) → void) → void; +typedef Foo03 = (((Null) → void) → void) → void; +typedef Foo04 = ((((Null) → void) → void) → void) → void; +typedef Foo05 = (((((Null) → void) → void) → void) → void) → void; +typedef Foo06 = ((((((Null) → void) → void) → void) → void) → void) → void; +typedef Foo07 = (((((((Null) → void) → void) → void) → void) → void) → void) → void; +typedef Foo08 = ((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo09 = (((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo10 = ((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo11 = (((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo12 = ((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo13 = (((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo14 = ((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo15 = (((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo16 = ((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo17 = (((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo18 = ((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo19 = (((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; +typedef Foo20 = ((((((((((((((((((((Null) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void) → void; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/magic_const.dart b/pkg/front_end/testcases/general/magic_const.dart index a409685fc12..276245e2ae4 100644 --- a/pkg/front_end/testcases/general/magic_const.dart +++ b/pkg/front_end/testcases/general/magic_const.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + /// Test that we produce a compile-time error when magic constness would /// otherwise apply. // TODO(ahe): Update this test when we implement magic constness correctly. diff --git a/pkg/front_end/testcases/general/magic_const.dart.textual_outline.expect b/pkg/front_end/testcases/general/magic_const.dart.textual_outline.expect index 039d73203be..63982d2bc5b 100644 --- a/pkg/front_end/testcases/general/magic_const.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/magic_const.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Constant { const Constant(); } diff --git a/pkg/front_end/testcases/general/magic_const.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/magic_const.dart.textual_outline_modelled.expect index cb84be05d9c..98f38dfed67 100644 --- a/pkg/front_end/testcases/general/magic_const.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/magic_const.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Constant { const Constant(); } diff --git a/pkg/front_end/testcases/general/magic_const.dart.weak.expect b/pkg/front_end/testcases/general/magic_const.dart.weak.expect index 60dcd8bce5e..4746b81f247 100644 --- a/pkg/front_end/testcases/general/magic_const.dart.weak.expect +++ b/pkg/front_end/testcases/general/magic_const.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -30,34 +30,14 @@ import self as self; import "dart:core" as core; class Constant extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::Constant* + const constructor •() → self::Constant : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NotConstant extends core::Object { - synthetic constructor •() → self::NotConstant* + synthetic constructor •() → self::NotConstant : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method foo({dynamic a = #C1, dynamic b = #C1, dynamic c = invalid-expression "Non-constant list literal is not a constant expression."}) → dynamic {} static method test() → dynamic { diff --git a/pkg/front_end/testcases/general/magic_const.dart.weak.modular.expect b/pkg/front_end/testcases/general/magic_const.dart.weak.modular.expect index 60dcd8bce5e..4746b81f247 100644 --- a/pkg/front_end/testcases/general/magic_const.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/magic_const.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -30,34 +30,14 @@ import self as self; import "dart:core" as core; class Constant extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::Constant* + const constructor •() → self::Constant : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NotConstant extends core::Object { - synthetic constructor •() → self::NotConstant* + synthetic constructor •() → self::NotConstant : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method foo({dynamic a = #C1, dynamic b = #C1, dynamic c = invalid-expression "Non-constant list literal is not a constant expression."}) → dynamic {} static method test() → dynamic { diff --git a/pkg/front_end/testcases/general/magic_const.dart.weak.outline.expect b/pkg/front_end/testcases/general/magic_const.dart.weak.outline.expect index 9cad3689138..758656ea1a6 100644 --- a/pkg/front_end/testcases/general/magic_const.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/magic_const.dart.weak.outline.expect @@ -1,35 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Constant extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::Constant* + const constructor •() → self::Constant : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NotConstant extends core::Object { - synthetic constructor •() → self::NotConstant* + synthetic constructor •() → self::NotConstant ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method foo({dynamic a, dynamic b, dynamic c}) → dynamic ; diff --git a/pkg/front_end/testcases/general/magic_const.dart.weak.transformed.expect b/pkg/front_end/testcases/general/magic_const.dart.weak.transformed.expect index e6298bf78d1..bb758cdcceb 100644 --- a/pkg/front_end/testcases/general/magic_const.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/magic_const.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -30,34 +30,14 @@ import self as self; import "dart:core" as core; class Constant extends core::Object /*hasConstConstructor*/ { - const constructor •() → self::Constant* + const constructor •() → self::Constant : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class NotConstant extends core::Object { - synthetic constructor •() → self::NotConstant* + synthetic constructor •() → self::NotConstant : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method foo({dynamic a = #C1, dynamic b = #C1, dynamic c = invalid-expression "Non-constant list literal is not a constant expression."}) → dynamic {} static method test() → dynamic { diff --git a/pkg/front_end/testcases/general/main_declaration.dart b/pkg/front_end/testcases/general/main_declaration.dart index 8ec5e432c53..2a6b05a2db3 100644 --- a/pkg/front_end/testcases/general/main_declaration.dart +++ b/pkg/front_end/testcases/general/main_declaration.dart @@ -1,7 +1,9 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + import 'main_declaration_lib.dart'; main() {} diff --git a/pkg/front_end/testcases/general/main_declaration_lib.dart b/pkg/front_end/testcases/general/main_declaration_lib.dart index cb3971a2bad..5edc834a54b 100644 --- a/pkg/front_end/testcases/general/main_declaration_lib.dart +++ b/pkg/front_end/testcases/general/main_declaration_lib.dart @@ -1,6 +1,8 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + // This would be an invalid main declaration in a null safe library. main(String args) {} diff --git a/pkg/front_end/testcases/general/many_errors.dart b/pkg/front_end/testcases/general/many_errors.dart index 27ac04ae3e4..8e2448371bf 100644 --- a/pkg/front_end/testcases/general/many_errors.dart +++ b/pkg/front_end/testcases/general/many_errors.dart @@ -1,7 +1,9 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + class A { final x = null; diff --git a/pkg/front_end/testcases/general/many_errors.dart.weak.expect b/pkg/front_end/testcases/general/many_errors.dart.weak.expect index 48ce15f386d..3bb36fb1c08 100644 --- a/pkg/front_end/testcases/general/many_errors.dart.weak.expect +++ b/pkg/front_end/testcases/general/many_errors.dart.weak.expect @@ -2,49 +2,49 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/many_errors.dart:8:3: Error: A const constructor can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:10:3: Error: A const constructor can't have a body. // Try removing either the 'const' keyword or the body. // const A.named1() sync* {} // ^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:13:1: Error: An external or native method can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:15:1: Error: An external or native method can't have a body. // external foo(String x) { // ^^^^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:26: Error: New expression is not a constant expression. +// pkg/front_end/testcases/general/many_errors.dart:12:26: Error: New expression is not a constant expression. // const A.named2() : x = new Object(); // ^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: 'x' is a final instance variable that was initialized at the declaration. // const A.named2() : x = new Object(); // ^ -// pkg/front_end/testcases/general/many_errors.dart:6:9: Context: 'x' was initialized here. +// pkg/front_end/testcases/general/many_errors.dart:8:9: Context: 'x' was initialized here. // final x = null; // ^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. // Try using a constructor or factory that is 'const'. // const A.named2() : x = new Object(); // ^ // -// pkg/front_end/testcases/general/many_errors.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. +// pkg/front_end/testcases/general/many_errors.dart:10:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. // const A.named1() sync* {} // ^ // -// pkg/front_end/testcases/general/many_errors.dart:13:24: Error: An external or native method can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:15:24: Error: An external or native method can't have a body. // external foo(String x) { // ^ // -// pkg/front_end/testcases/general/many_errors.dart:28:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. +// pkg/front_end/testcases/general/many_errors.dart:30:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. // const AbstractClass.id(); // ^^^^^^^^^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// pkg/front_end/testcases/general/many_errors.dart:30:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. // Try using a constructor or factory that is 'const'. // const AbstractClass.id(); // ^ // -// pkg/front_end/testcases/general/many_errors.dart:29:28: Error: The getter 'b' isn't defined for the class 'B'. +// pkg/front_end/testcases/general/many_errors.dart:31:28: Error: The getter 'b' isn't defined for the class 'B'. // - 'B' is from 'pkg/front_end/testcases/general/many_errors.dart'. // Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. // (new C()?.b ??= new B()).b; @@ -56,11 +56,11 @@ import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { final field dynamic x = null; constructor named1() → self::A* - : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. + : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors.dart:10:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. const A.named1() sync* {} ^" {} const constructor named2() → self::A* - : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. + : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. Try using a constructor or factory that is 'const'. const A.named2() : x = new Object(); ^", super core::Object::•() @@ -123,7 +123,7 @@ abstract class AbstractClass extends core::Object /*hasConstConstructor*/ { abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } external static method foo(core::String* x) → dynamic { - invalid-expression "pkg/front_end/testcases/general/many_errors.dart:13:24: Error: An external or native method can't have a body. + invalid-expression "pkg/front_end/testcases/general/many_errors.dart:15:24: Error: An external or native method can't have a body. external foo(String x) { ^"; { @@ -131,11 +131,11 @@ external foo(String x) { } } static method m() → dynamic { - throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. + throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:30:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. Try using a constructor or factory that is 'const'. const AbstractClass.id(); ^"; - invalid-expression "pkg/front_end/testcases/general/many_errors.dart:29:28: Error: The getter 'b' isn't defined for the class 'B'. + invalid-expression "pkg/front_end/testcases/general/many_errors.dart:31:28: Error: The getter 'b' isn't defined for the class 'B'. - 'B' is from 'pkg/front_end/testcases/general/many_errors.dart'. Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. (new C()?.b ??= new B()).b; diff --git a/pkg/front_end/testcases/general/many_errors.dart.weak.modular.expect b/pkg/front_end/testcases/general/many_errors.dart.weak.modular.expect index 48ce15f386d..3bb36fb1c08 100644 --- a/pkg/front_end/testcases/general/many_errors.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/many_errors.dart.weak.modular.expect @@ -2,49 +2,49 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/many_errors.dart:8:3: Error: A const constructor can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:10:3: Error: A const constructor can't have a body. // Try removing either the 'const' keyword or the body. // const A.named1() sync* {} // ^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:13:1: Error: An external or native method can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:15:1: Error: An external or native method can't have a body. // external foo(String x) { // ^^^^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:26: Error: New expression is not a constant expression. +// pkg/front_end/testcases/general/many_errors.dart:12:26: Error: New expression is not a constant expression. // const A.named2() : x = new Object(); // ^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: 'x' is a final instance variable that was initialized at the declaration. // const A.named2() : x = new Object(); // ^ -// pkg/front_end/testcases/general/many_errors.dart:6:9: Context: 'x' was initialized here. +// pkg/front_end/testcases/general/many_errors.dart:8:9: Context: 'x' was initialized here. // final x = null; // ^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. // Try using a constructor or factory that is 'const'. // const A.named2() : x = new Object(); // ^ // -// pkg/front_end/testcases/general/many_errors.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. +// pkg/front_end/testcases/general/many_errors.dart:10:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. // const A.named1() sync* {} // ^ // -// pkg/front_end/testcases/general/many_errors.dart:13:24: Error: An external or native method can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:15:24: Error: An external or native method can't have a body. // external foo(String x) { // ^ // -// pkg/front_end/testcases/general/many_errors.dart:28:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. +// pkg/front_end/testcases/general/many_errors.dart:30:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. // const AbstractClass.id(); // ^^^^^^^^^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// pkg/front_end/testcases/general/many_errors.dart:30:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. // Try using a constructor or factory that is 'const'. // const AbstractClass.id(); // ^ // -// pkg/front_end/testcases/general/many_errors.dart:29:28: Error: The getter 'b' isn't defined for the class 'B'. +// pkg/front_end/testcases/general/many_errors.dart:31:28: Error: The getter 'b' isn't defined for the class 'B'. // - 'B' is from 'pkg/front_end/testcases/general/many_errors.dart'. // Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. // (new C()?.b ??= new B()).b; @@ -56,11 +56,11 @@ import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { final field dynamic x = null; constructor named1() → self::A* - : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. + : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors.dart:10:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. const A.named1() sync* {} ^" {} const constructor named2() → self::A* - : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. + : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. Try using a constructor or factory that is 'const'. const A.named2() : x = new Object(); ^", super core::Object::•() @@ -123,7 +123,7 @@ abstract class AbstractClass extends core::Object /*hasConstConstructor*/ { abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } external static method foo(core::String* x) → dynamic { - invalid-expression "pkg/front_end/testcases/general/many_errors.dart:13:24: Error: An external or native method can't have a body. + invalid-expression "pkg/front_end/testcases/general/many_errors.dart:15:24: Error: An external or native method can't have a body. external foo(String x) { ^"; { @@ -131,11 +131,11 @@ external foo(String x) { } } static method m() → dynamic { - throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. + throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:30:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. Try using a constructor or factory that is 'const'. const AbstractClass.id(); ^"; - invalid-expression "pkg/front_end/testcases/general/many_errors.dart:29:28: Error: The getter 'b' isn't defined for the class 'B'. + invalid-expression "pkg/front_end/testcases/general/many_errors.dart:31:28: Error: The getter 'b' isn't defined for the class 'B'. - 'B' is from 'pkg/front_end/testcases/general/many_errors.dart'. Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. (new C()?.b ??= new B()).b; diff --git a/pkg/front_end/testcases/general/many_errors.dart.weak.outline.expect b/pkg/front_end/testcases/general/many_errors.dart.weak.outline.expect index 623c81397b2..627708a12d8 100644 --- a/pkg/front_end/testcases/general/many_errors.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/many_errors.dart.weak.outline.expect @@ -2,27 +2,27 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/many_errors.dart:8:3: Error: A const constructor can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:10:3: Error: A const constructor can't have a body. // Try removing either the 'const' keyword or the body. // const A.named1() sync* {} // ^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:13:1: Error: An external or native method can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:15:1: Error: An external or native method can't have a body. // external foo(String x) { // ^^^^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:26: Error: New expression is not a constant expression. +// pkg/front_end/testcases/general/many_errors.dart:12:26: Error: New expression is not a constant expression. // const A.named2() : x = new Object(); // ^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: 'x' is a final instance variable that was initialized at the declaration. // const A.named2() : x = new Object(); // ^ -// pkg/front_end/testcases/general/many_errors.dart:6:9: Context: 'x' was initialized here. +// pkg/front_end/testcases/general/many_errors.dart:8:9: Context: 'x' was initialized here. // final x = null; // ^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. // Try using a constructor or factory that is 'const'. // const A.named2() : x = new Object(); // ^ @@ -35,7 +35,7 @@ class A extends core::Object /*hasConstConstructor*/ { constructor named1() → self::A* ; const constructor named2() → self::A* - : final dynamic #t1 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. + : final dynamic #t1 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. Try using a constructor or factory that is 'const'. const A.named2() : x = new Object(); ^", super core::Object::•() diff --git a/pkg/front_end/testcases/general/many_errors.dart.weak.transformed.expect b/pkg/front_end/testcases/general/many_errors.dart.weak.transformed.expect index 48ce15f386d..3bb36fb1c08 100644 --- a/pkg/front_end/testcases/general/many_errors.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/many_errors.dart.weak.transformed.expect @@ -2,49 +2,49 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/many_errors.dart:8:3: Error: A const constructor can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:10:3: Error: A const constructor can't have a body. // Try removing either the 'const' keyword or the body. // const A.named1() sync* {} // ^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:13:1: Error: An external or native method can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:15:1: Error: An external or native method can't have a body. // external foo(String x) { // ^^^^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:26: Error: New expression is not a constant expression. +// pkg/front_end/testcases/general/many_errors.dart:12:26: Error: New expression is not a constant expression. // const A.named2() : x = new Object(); // ^^^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: 'x' is a final instance variable that was initialized at the declaration. // const A.named2() : x = new Object(); // ^ -// pkg/front_end/testcases/general/many_errors.dart:6:9: Context: 'x' was initialized here. +// pkg/front_end/testcases/general/many_errors.dart:8:9: Context: 'x' was initialized here. // final x = null; // ^ // -// pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. // Try using a constructor or factory that is 'const'. // const A.named2() : x = new Object(); // ^ // -// pkg/front_end/testcases/general/many_errors.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. +// pkg/front_end/testcases/general/many_errors.dart:10:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. // const A.named1() sync* {} // ^ // -// pkg/front_end/testcases/general/many_errors.dart:13:24: Error: An external or native method can't have a body. +// pkg/front_end/testcases/general/many_errors.dart:15:24: Error: An external or native method can't have a body. // external foo(String x) { // ^ // -// pkg/front_end/testcases/general/many_errors.dart:28:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. +// pkg/front_end/testcases/general/many_errors.dart:30:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. // const AbstractClass.id(); // ^^^^^^^^^^^^^ // -// pkg/front_end/testcases/general/many_errors.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// pkg/front_end/testcases/general/many_errors.dart:30:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. // Try using a constructor or factory that is 'const'. // const AbstractClass.id(); // ^ // -// pkg/front_end/testcases/general/many_errors.dart:29:28: Error: The getter 'b' isn't defined for the class 'B'. +// pkg/front_end/testcases/general/many_errors.dart:31:28: Error: The getter 'b' isn't defined for the class 'B'. // - 'B' is from 'pkg/front_end/testcases/general/many_errors.dart'. // Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. // (new C()?.b ??= new B()).b; @@ -56,11 +56,11 @@ import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { final field dynamic x = null; constructor named1() → self::A* - : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. + : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors.dart:10:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. const A.named1() sync* {} ^" {} const constructor named2() → self::A* - : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. + : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:12:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. Try using a constructor or factory that is 'const'. const A.named2() : x = new Object(); ^", super core::Object::•() @@ -123,7 +123,7 @@ abstract class AbstractClass extends core::Object /*hasConstConstructor*/ { abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } external static method foo(core::String* x) → dynamic { - invalid-expression "pkg/front_end/testcases/general/many_errors.dart:13:24: Error: An external or native method can't have a body. + invalid-expression "pkg/front_end/testcases/general/many_errors.dart:15:24: Error: An external or native method can't have a body. external foo(String x) { ^"; { @@ -131,11 +131,11 @@ external foo(String x) { } } static method m() → dynamic { - throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. + throw invalid-expression "pkg/front_end/testcases/general/many_errors.dart:30:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. Try using a constructor or factory that is 'const'. const AbstractClass.id(); ^"; - invalid-expression "pkg/front_end/testcases/general/many_errors.dart:29:28: Error: The getter 'b' isn't defined for the class 'B'. + invalid-expression "pkg/front_end/testcases/general/many_errors.dart:31:28: Error: The getter 'b' isn't defined for the class 'B'. - 'B' is from 'pkg/front_end/testcases/general/many_errors.dart'. Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. (new C()?.b ??= new B()).b; diff --git a/pkg/front_end/testcases/general/many_errors2.dart b/pkg/front_end/testcases/general/many_errors2.dart new file mode 100644 index 00000000000..3408e7a6da1 --- /dev/null +++ b/pkg/front_end/testcases/general/many_errors2.dart @@ -0,0 +1,32 @@ +// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +class A { + final x = null; + + const A.named1() sync* {} + + const A.named2() : x = new Object(); +} + +external foo(String x) { + return x.length; +} + +class B {} + +class C { + late B b; +} + +abstract class AbstractClass { + const AbstractClass.id(); +} + +m() { + const AbstractClass.id(); + (new C().b ??= new B()).b; +} + +main() {} diff --git a/pkg/front_end/testcases/general/many_errors2.dart.textual_outline.expect b/pkg/front_end/testcases/general/many_errors2.dart.textual_outline.expect new file mode 100644 index 00000000000..555c12a745f --- /dev/null +++ b/pkg/front_end/testcases/general/many_errors2.dart.textual_outline.expect @@ -0,0 +1,16 @@ +class A { + final x = null; + const A.named1() sync* {} + const A.named2() : x = new Object(); +} +external foo(String x) {} +class B {} +class C { + late + B b; +} +abstract class AbstractClass { + const AbstractClass.id(); +} +m() {} +main() {} diff --git a/pkg/front_end/testcases/general/many_errors2.dart.weak.expect b/pkg/front_end/testcases/general/many_errors2.dart.weak.expect new file mode 100644 index 00000000000..b462ffab998 --- /dev/null +++ b/pkg/front_end/testcases/general/many_errors2.dart.weak.expect @@ -0,0 +1,109 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/many_errors2.dart:8:3: Error: A const constructor can't have a body. +// Try removing either the 'const' keyword or the body. +// const A.named1() sync* {} +// ^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:13:1: Error: An external or native method can't have a body. +// external foo(String x) { +// ^^^^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:26: Error: New expression is not a constant expression. +// const A.named2() : x = new Object(); +// ^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// const A.named2() : x = new Object(); +// ^ +// pkg/front_end/testcases/general/many_errors2.dart:6:9: Context: 'x' was initialized here. +// final x = null; +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// Try using a constructor or factory that is 'const'. +// const A.named2() : x = new Object(); +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. +// const A.named1() sync* {} +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:13:24: Error: An external or native method can't have a body. +// external foo(String x) { +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. +// const AbstractClass.id(); +// ^^^^^^^^^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// Try using a constructor or factory that is 'const'. +// const AbstractClass.id(); +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:29:12: Warning: Operand of null-aware operation '??=' has type 'B' which excludes null. +// - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +// (new C().b ??= new B()).b; +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:29:27: Error: The getter 'b' isn't defined for the class 'B'. +// - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +// Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. +// (new C().b ??= new B()).b; +// ^ +// +import self as self; +import "dart:core" as core; + +class A extends core::Object /*hasConstConstructor*/ { + final field dynamic x = null; + constructor named1() → self::A + : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. + const A.named1() sync* {} + ^" {} + const constructor named2() → self::A + : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +Try using a constructor or factory that is 'const'. + const A.named2() : x = new Object(); + ^", super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; +} +class C extends core::Object { + late field self::B b; + synthetic constructor •() → self::C + : super core::Object::•() + ; +} +abstract class AbstractClass extends core::Object /*hasConstConstructor*/ { + const constructor id() → self::AbstractClass + : super core::Object::•() + ; +} +external static method foo(core::String x) → dynamic { + invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:13:24: Error: An external or native method can't have a body. +external foo(String x) { + ^"; + { + return x.{core::String::length}{core::int}; + } +} +static method m() → dynamic { + throw invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +Try using a constructor or factory that is 'const'. + const AbstractClass.id(); + ^"; + invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:29:27: Error: The getter 'b' isn't defined for the class 'B'. + - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. + (new C().b ??= new B()).b; + ^" in (let final self::C #t3 = new self::C::•() in let final self::B #t4 = #t3.{self::C::b}{self::B} in #t4 == null ?{self::B} #t3.{self::C::b} = new self::B::•() : #t4){}.b; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/many_errors2.dart.weak.modular.expect b/pkg/front_end/testcases/general/many_errors2.dart.weak.modular.expect new file mode 100644 index 00000000000..b462ffab998 --- /dev/null +++ b/pkg/front_end/testcases/general/many_errors2.dart.weak.modular.expect @@ -0,0 +1,109 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/many_errors2.dart:8:3: Error: A const constructor can't have a body. +// Try removing either the 'const' keyword or the body. +// const A.named1() sync* {} +// ^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:13:1: Error: An external or native method can't have a body. +// external foo(String x) { +// ^^^^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:26: Error: New expression is not a constant expression. +// const A.named2() : x = new Object(); +// ^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// const A.named2() : x = new Object(); +// ^ +// pkg/front_end/testcases/general/many_errors2.dart:6:9: Context: 'x' was initialized here. +// final x = null; +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// Try using a constructor or factory that is 'const'. +// const A.named2() : x = new Object(); +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. +// const A.named1() sync* {} +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:13:24: Error: An external or native method can't have a body. +// external foo(String x) { +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. +// const AbstractClass.id(); +// ^^^^^^^^^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// Try using a constructor or factory that is 'const'. +// const AbstractClass.id(); +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:29:12: Warning: Operand of null-aware operation '??=' has type 'B' which excludes null. +// - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +// (new C().b ??= new B()).b; +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:29:27: Error: The getter 'b' isn't defined for the class 'B'. +// - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +// Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. +// (new C().b ??= new B()).b; +// ^ +// +import self as self; +import "dart:core" as core; + +class A extends core::Object /*hasConstConstructor*/ { + final field dynamic x = null; + constructor named1() → self::A + : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. + const A.named1() sync* {} + ^" {} + const constructor named2() → self::A + : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +Try using a constructor or factory that is 'const'. + const A.named2() : x = new Object(); + ^", super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; +} +class C extends core::Object { + late field self::B b; + synthetic constructor •() → self::C + : super core::Object::•() + ; +} +abstract class AbstractClass extends core::Object /*hasConstConstructor*/ { + const constructor id() → self::AbstractClass + : super core::Object::•() + ; +} +external static method foo(core::String x) → dynamic { + invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:13:24: Error: An external or native method can't have a body. +external foo(String x) { + ^"; + { + return x.{core::String::length}{core::int}; + } +} +static method m() → dynamic { + throw invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +Try using a constructor or factory that is 'const'. + const AbstractClass.id(); + ^"; + invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:29:27: Error: The getter 'b' isn't defined for the class 'B'. + - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. + (new C().b ??= new B()).b; + ^" in (let final self::C #t3 = new self::C::•() in let final self::B #t4 = #t3.{self::C::b}{self::B} in #t4 == null ?{self::B} #t3.{self::C::b} = new self::B::•() : #t4){}.b; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/many_errors2.dart.weak.outline.expect b/pkg/front_end/testcases/general/many_errors2.dart.weak.outline.expect new file mode 100644 index 00000000000..65c668fd35a --- /dev/null +++ b/pkg/front_end/testcases/general/many_errors2.dart.weak.outline.expect @@ -0,0 +1,62 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/many_errors2.dart:8:3: Error: A const constructor can't have a body. +// Try removing either the 'const' keyword or the body. +// const A.named1() sync* {} +// ^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:13:1: Error: An external or native method can't have a body. +// external foo(String x) { +// ^^^^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:26: Error: New expression is not a constant expression. +// const A.named2() : x = new Object(); +// ^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// const A.named2() : x = new Object(); +// ^ +// pkg/front_end/testcases/general/many_errors2.dart:6:9: Context: 'x' was initialized here. +// final x = null; +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// Try using a constructor or factory that is 'const'. +// const A.named2() : x = new Object(); +// ^ +// +import self as self; +import "dart:core" as core; + +class A extends core::Object /*hasConstConstructor*/ { + final field dynamic x = null; + constructor named1() → self::A + ; + const constructor named2() → self::A + : final dynamic #t1 = throw invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +Try using a constructor or factory that is 'const'. + const A.named2() : x = new Object(); + ^", super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + ; +} +class C extends core::Object { + late field self::B b; + synthetic constructor •() → self::C + ; +} +abstract class AbstractClass extends core::Object /*hasConstConstructor*/ { + const constructor id() → self::AbstractClass + : super core::Object::•() + ; +} +external static method foo(core::String x) → dynamic; +static method m() → dynamic + ; +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/many_errors2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/many_errors2.dart.weak.transformed.expect new file mode 100644 index 00000000000..b462ffab998 --- /dev/null +++ b/pkg/front_end/testcases/general/many_errors2.dart.weak.transformed.expect @@ -0,0 +1,109 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/many_errors2.dart:8:3: Error: A const constructor can't have a body. +// Try removing either the 'const' keyword or the body. +// const A.named1() sync* {} +// ^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:13:1: Error: An external or native method can't have a body. +// external foo(String x) { +// ^^^^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:26: Error: New expression is not a constant expression. +// const A.named2() : x = new Object(); +// ^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: 'x' is a final instance variable that was initialized at the declaration. +// const A.named2() : x = new Object(); +// ^ +// pkg/front_end/testcases/general/many_errors2.dart:6:9: Context: 'x' was initialized here. +// final x = null; +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// Try using a constructor or factory that is 'const'. +// const A.named2() : x = new Object(); +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. +// const A.named1() sync* {} +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:13:24: Error: An external or native method can't have a body. +// external foo(String x) { +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: The class 'AbstractClass' is abstract and can't be instantiated. +// const AbstractClass.id(); +// ^^^^^^^^^^^^^ +// +// pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +// Try using a constructor or factory that is 'const'. +// const AbstractClass.id(); +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:29:12: Warning: Operand of null-aware operation '??=' has type 'B' which excludes null. +// - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +// (new C().b ??= new B()).b; +// ^ +// +// pkg/front_end/testcases/general/many_errors2.dart:29:27: Error: The getter 'b' isn't defined for the class 'B'. +// - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +// Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. +// (new C().b ??= new B()).b; +// ^ +// +import self as self; +import "dart:core" as core; + +class A extends core::Object /*hasConstConstructor*/ { + final field dynamic x = null; + constructor named1() → self::A + : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:8:26: Error: Constructor bodies can't use 'async', 'async*', or 'sync*'. + const A.named1() sync* {} + ^" {} + const constructor named2() → self::A + : final dynamic #t2 = throw invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:10:24: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +Try using a constructor or factory that is 'const'. + const A.named2() : x = new Object(); + ^", super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; +} +class C extends core::Object { + late field self::B b; + synthetic constructor •() → self::C + : super core::Object::•() + ; +} +abstract class AbstractClass extends core::Object /*hasConstConstructor*/ { + const constructor id() → self::AbstractClass + : super core::Object::•() + ; +} +external static method foo(core::String x) → dynamic { + invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:13:24: Error: An external or native method can't have a body. +external foo(String x) { + ^"; + { + return x.{core::String::length}{core::int}; + } +} +static method m() → dynamic { + throw invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:28:9: Error: Cannot invoke a non-'const' constructor where a const expression is expected. +Try using a constructor or factory that is 'const'. + const AbstractClass.id(); + ^"; + invalid-expression "pkg/front_end/testcases/general/many_errors2.dart:29:27: Error: The getter 'b' isn't defined for the class 'B'. + - 'B' is from 'pkg/front_end/testcases/general/many_errors2.dart'. +Try correcting the name to the name of an existing getter, or defining a getter or field named 'b'. + (new C().b ??= new B()).b; + ^" in (let final self::C #t3 = new self::C::•() in let final self::B #t4 = #t3.{self::C::b}{self::B} in #t4 == null ?{self::B} #t3.{self::C::b} = new self::B::•() : #t4){}.b; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/metadata_enum.dart b/pkg/front_end/testcases/general/metadata_enum.dart index d8f54410948..e31a3cecd1f 100644 --- a/pkg/front_end/testcases/general/metadata_enum.dart +++ b/pkg/front_end/testcases/general/metadata_enum.dart @@ -1,7 +1,7 @@ // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + const a = null; @a diff --git a/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline.expect b/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline.expect index fcf0e3ceec5..4cd30891c2c 100644 --- a/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 const a = null; @a diff --git a/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline_modelled.expect index fcf0e3ceec5..4cd30891c2c 100644 --- a/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/metadata_enum.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 const a = null; @a diff --git a/pkg/front_end/testcases/general/metadata_enum.dart.weak.expect b/pkg/front_end/testcases/general/metadata_enum.dart.weak.expect index cb386095059..1732e11b7a0 100644 --- a/pkg/front_end/testcases/general/metadata_enum.dart.weak.expect +++ b/pkg/front_end/testcases/general/metadata_enum.dart.weak.expect @@ -1,29 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @#C1 class E extends core::_Enum /*isEnum*/ { - static const field core::List* values = #C11; - static const field self::E* E1 = #C4; - static const field self::E* E2 = #C7; - static const field self::E* E3 = #C10; - const constructor •(core::int* index, core::String* name) → self::E* + static const field core::List values = #C11; + static const field self::E E1 = #C4; + static const field self::E E2 = #C7; + static const field self::E E3 = #C10; + const constructor •(core::int index, core::String name) → self::E : super core::_Enum::•(index, name) ; - method toString() → core::String* + method toString() → core::String return "E.${this.{core::_Enum::_name}{core::String}}"; - abstract member-signature get index() → core::int*; -> core::_Enum::index - abstract member-signature get _name() → core::String*; -> core::_Enum::_name - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = #C1; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/metadata_enum.dart.weak.modular.expect b/pkg/front_end/testcases/general/metadata_enum.dart.weak.modular.expect index cb386095059..1732e11b7a0 100644 --- a/pkg/front_end/testcases/general/metadata_enum.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/metadata_enum.dart.weak.modular.expect @@ -1,29 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @#C1 class E extends core::_Enum /*isEnum*/ { - static const field core::List* values = #C11; - static const field self::E* E1 = #C4; - static const field self::E* E2 = #C7; - static const field self::E* E3 = #C10; - const constructor •(core::int* index, core::String* name) → self::E* + static const field core::List values = #C11; + static const field self::E E1 = #C4; + static const field self::E E2 = #C7; + static const field self::E E3 = #C10; + const constructor •(core::int index, core::String name) → self::E : super core::_Enum::•(index, name) ; - method toString() → core::String* + method toString() → core::String return "E.${this.{core::_Enum::_name}{core::String}}"; - abstract member-signature get index() → core::int*; -> core::_Enum::index - abstract member-signature get _name() → core::String*; -> core::_Enum::_name - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = #C1; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/metadata_enum.dart.weak.outline.expect b/pkg/front_end/testcases/general/metadata_enum.dart.weak.outline.expect index 09a1c262f74..8cd295c0953 100644 --- a/pkg/front_end/testcases/general/metadata_enum.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/metadata_enum.dart.weak.outline.expect @@ -1,29 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @self::a class E extends core::_Enum /*isEnum*/ { - static const field core::List* values = const [self::E::E1, self::E::E2, self::E::E3]; - static const field self::E* E1 = const self::E::•(0, "E1"); - static const field self::E* E2 = const self::E::•(1, "E2"); - static const field self::E* E3 = const self::E::•(2, "E3"); - const constructor •(core::int* index, core::String* name) → self::E* + static const field core::List values = const [self::E::E1, self::E::E2, self::E::E3]; + static const field self::E E1 = const self::E::•(0, "E1"); + static const field self::E E2 = const self::E::•(1, "E2"); + static const field self::E E3 = const self::E::•(2, "E3"); + const constructor •(core::int index, core::String name) → self::E : super core::_Enum::•(index, name) ; - method toString() → core::String* + method toString() → core::String return "E.${this.{core::_Enum::_name}{core::String}}"; - abstract member-signature get index() → core::int*; -> core::_Enum::index - abstract member-signature get _name() → core::String*; -> core::_Enum::_name - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = null; static method main() → dynamic diff --git a/pkg/front_end/testcases/general/metadata_enum.dart.weak.transformed.expect b/pkg/front_end/testcases/general/metadata_enum.dart.weak.transformed.expect index cb386095059..1732e11b7a0 100644 --- a/pkg/front_end/testcases/general/metadata_enum.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/metadata_enum.dart.weak.transformed.expect @@ -1,29 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @#C1 class E extends core::_Enum /*isEnum*/ { - static const field core::List* values = #C11; - static const field self::E* E1 = #C4; - static const field self::E* E2 = #C7; - static const field self::E* E3 = #C10; - const constructor •(core::int* index, core::String* name) → self::E* + static const field core::List values = #C11; + static const field self::E E1 = #C4; + static const field self::E E2 = #C7; + static const field self::E E3 = #C10; + const constructor •(core::int index, core::String name) → self::E : super core::_Enum::•(index, name) ; - method toString() → core::String* + method toString() → core::String return "E.${this.{core::_Enum::_name}{core::String}}"; - abstract member-signature get index() → core::int*; -> core::_Enum::index - abstract member-signature get _name() → core::String*; -> core::_Enum::_name - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = #C1; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart index bd1fa267960..1861f85434d 100644 --- a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart +++ b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart @@ -1,7 +1,7 @@ // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + const a = null; @a diff --git a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline.expect b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline.expect index aed129781e1..525a405b3b6 100644 --- a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 const a = null; @a class C = D with E; diff --git a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline_modelled.expect index 10a58d29d18..8c1c5b9ec61 100644 --- a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 @a class C = D with E; diff --git a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.expect b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.expect index 02845a0c36a..8acc1e51bab 100644 --- a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.expect +++ b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.expect @@ -1,42 +1,22 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @#C1 class C = self::D with self::E { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::D::•() ; } class D extends core::Object { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = #C1; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.modular.expect b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.modular.expect index 02845a0c36a..8acc1e51bab 100644 --- a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.modular.expect @@ -1,42 +1,22 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @#C1 class C = self::D with self::E { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::D::•() ; } class D extends core::Object { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = #C1; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.outline.expect b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.outline.expect index 537845ca810..1a6c17a6ddf 100644 --- a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.outline.expect @@ -1,40 +1,20 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @self::a class C = self::D with self::E { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::D::•() ; } class D extends core::Object { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = null; static method main() → dynamic diff --git a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.transformed.expect b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.transformed.expect index 51c5bf36c18..8686f7ab637 100644 --- a/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/metadata_named_mixin_application.dart.weak.transformed.expect @@ -1,42 +1,22 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; @#C1 class C extends self::D implements self::E /*isEliminatedMixin*/ { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::D::•() ; } class D extends core::Object { - synthetic constructor •() → self::D* + synthetic constructor •() → self::D : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class E extends core::Object { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static const field dynamic a = #C1; static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart b/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart index 60aebf5562c..4cd3ccddc44 100644 --- a/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart +++ b/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart @@ -2,7 +2,7 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.6 +// @dart=2.9 class A { void f(Y y) {} diff --git a/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline.expect b/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline.expect index 29b47f8bc56..2f01f987376 100644 --- a/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline.expect @@ -1,4 +1,4 @@ -// @dart = 2.6 +// @dart = 2.9 class A { void f(Y y) {} } diff --git a/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline_modelled.expect index 29b47f8bc56..2f01f987376 100644 --- a/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/method_tearoff_covariant_generic_type_check_opt_out.dart.textual_outline_modelled.expect @@ -1,4 +1,4 @@ -// @dart = 2.6 +// @dart = 2.9 class A { void f(Y y) {} } diff --git a/pkg/front_end/testcases/general/micro.dart b/pkg/front_end/testcases/general/micro.dart index 483abd290c8..cfcb2fcc2b3 100644 --- a/pkg/front_end/testcases/general/micro.dart +++ b/pkg/front_end/testcases/general/micro.dart @@ -1,7 +1,7 @@ // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + staticMethod() { return "sdfg"; } diff --git a/pkg/front_end/testcases/general/micro.dart.textual_outline.expect b/pkg/front_end/testcases/general/micro.dart.textual_outline.expect index 229392fbc2e..1c27a80e1d3 100644 --- a/pkg/front_end/testcases/general/micro.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/micro.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 staticMethod() {} class Foo { diff --git a/pkg/front_end/testcases/general/micro.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/micro.dart.textual_outline_modelled.expect index 87285dbec16..0ec1840e354 100644 --- a/pkg/front_end/testcases/general/micro.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/micro.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class Bar { ExternalValue externalInstanceMethod(); } diff --git a/pkg/front_end/testcases/general/micro.dart.weak.expect b/pkg/front_end/testcases/general/micro.dart.weak.expect index 8bd8f18c9b8..bcea3005930 100644 --- a/pkg/front_end/testcases/general/micro.dart.weak.expect +++ b/pkg/front_end/testcases/general/micro.dart.weak.expect @@ -1,130 +1,60 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Foo extends core::Object { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo : super core::Object::•() ; method instanceMethod() → dynamic { return 123; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ExternalValue extends core::Object { - synthetic constructor •() → self::ExternalValue* + synthetic constructor •() → self::ExternalValue : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Bar extends core::Object { - synthetic constructor •() → self::Bar* + synthetic constructor •() → self::Bar : super core::Object::•() ; - abstract method externalInstanceMethod() → self::ExternalValue*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method externalInstanceMethod() → self::ExternalValue; } class Box extends core::Object { field dynamic field = null; - synthetic constructor •() → self::Box* + synthetic constructor •() → self::Box : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class FinalBox extends core::Object { final field dynamic finalField; - constructor •(dynamic finalField) → self::FinalBox* + constructor •(dynamic finalField) → self::FinalBox : self::FinalBox::finalField = finalField, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class SubFinalBox extends self::FinalBox { - constructor •(dynamic value) → self::SubFinalBox* + constructor •(dynamic value) → self::SubFinalBox : super self::FinalBox::•(value) ; } class DynamicReceiver1 extends core::Object { - synthetic constructor •() → self::DynamicReceiver1* + synthetic constructor •() → self::DynamicReceiver1 : super core::Object::•() ; method dynamicallyCalled(dynamic x) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class DynamicReceiver2 extends core::Object { - synthetic constructor •() → self::DynamicReceiver2* + synthetic constructor •() → self::DynamicReceiver2 : super core::Object::•() ; method dynamicallyCalled(dynamic x) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method staticMethod() → dynamic { return "sdfg"; } -external static method externalStatic() → core::bool*; -external static method createBar() → self::Bar*; +external static method externalStatic() → core::bool; +external static method createBar() → self::Bar; static method stringArgument(dynamic x) → dynamic {} static method intArgument(dynamic x) → dynamic {} static method makeDynamicCall(dynamic receiver) → void { @@ -132,20 +62,20 @@ static method makeDynamicCall(dynamic receiver) → void { } static method main() → dynamic { dynamic x = self::staticMethod(); - dynamic y = new self::Foo::•().{self::Foo::instanceMethod}(){() →* dynamic}; - core::bool* z = self::externalStatic(); - self::ExternalValue* w = self::createBar().{self::Bar::externalInstanceMethod}(){() →* self::ExternalValue*}; + dynamic y = new self::Foo::•().{self::Foo::instanceMethod}(){() → dynamic}; + core::bool z = self::externalStatic(); + self::ExternalValue w = self::createBar().{self::Bar::externalInstanceMethod}(){() → self::ExternalValue}; self::stringArgument("sdfg"); self::intArgument(42); - self::Box* box = new self::Box::•(); + self::Box box = new self::Box::•(); box.{self::Box::field} = "sdfg"; dynamic a = box.{self::Box::field}{dynamic}; - self::FinalBox* finalBox = new self::FinalBox::•("dfg"); + self::FinalBox finalBox = new self::FinalBox::•("dfg"); dynamic b = finalBox.{self::FinalBox::finalField}{dynamic}; - self::SubFinalBox* subBox = new self::SubFinalBox::•("dfg"); + self::SubFinalBox subBox = new self::SubFinalBox::•("dfg"); dynamic c = subBox.{self::FinalBox::finalField}{dynamic}; self::makeDynamicCall(new self::DynamicReceiver1::•()); self::makeDynamicCall(new self::DynamicReceiver2::•()); - core::List* list = ["string"]; - core::String* d = list.{core::List::[]}(0){(core::int*) →* core::String*}; + core::List list = ["string"]; + core::String d = list.{core::List::[]}(0){(core::int) → core::String}; } diff --git a/pkg/front_end/testcases/general/micro.dart.weak.modular.expect b/pkg/front_end/testcases/general/micro.dart.weak.modular.expect index 8bd8f18c9b8..bcea3005930 100644 --- a/pkg/front_end/testcases/general/micro.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/micro.dart.weak.modular.expect @@ -1,130 +1,60 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Foo extends core::Object { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo : super core::Object::•() ; method instanceMethod() → dynamic { return 123; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ExternalValue extends core::Object { - synthetic constructor •() → self::ExternalValue* + synthetic constructor •() → self::ExternalValue : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Bar extends core::Object { - synthetic constructor •() → self::Bar* + synthetic constructor •() → self::Bar : super core::Object::•() ; - abstract method externalInstanceMethod() → self::ExternalValue*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method externalInstanceMethod() → self::ExternalValue; } class Box extends core::Object { field dynamic field = null; - synthetic constructor •() → self::Box* + synthetic constructor •() → self::Box : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class FinalBox extends core::Object { final field dynamic finalField; - constructor •(dynamic finalField) → self::FinalBox* + constructor •(dynamic finalField) → self::FinalBox : self::FinalBox::finalField = finalField, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class SubFinalBox extends self::FinalBox { - constructor •(dynamic value) → self::SubFinalBox* + constructor •(dynamic value) → self::SubFinalBox : super self::FinalBox::•(value) ; } class DynamicReceiver1 extends core::Object { - synthetic constructor •() → self::DynamicReceiver1* + synthetic constructor •() → self::DynamicReceiver1 : super core::Object::•() ; method dynamicallyCalled(dynamic x) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class DynamicReceiver2 extends core::Object { - synthetic constructor •() → self::DynamicReceiver2* + synthetic constructor •() → self::DynamicReceiver2 : super core::Object::•() ; method dynamicallyCalled(dynamic x) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method staticMethod() → dynamic { return "sdfg"; } -external static method externalStatic() → core::bool*; -external static method createBar() → self::Bar*; +external static method externalStatic() → core::bool; +external static method createBar() → self::Bar; static method stringArgument(dynamic x) → dynamic {} static method intArgument(dynamic x) → dynamic {} static method makeDynamicCall(dynamic receiver) → void { @@ -132,20 +62,20 @@ static method makeDynamicCall(dynamic receiver) → void { } static method main() → dynamic { dynamic x = self::staticMethod(); - dynamic y = new self::Foo::•().{self::Foo::instanceMethod}(){() →* dynamic}; - core::bool* z = self::externalStatic(); - self::ExternalValue* w = self::createBar().{self::Bar::externalInstanceMethod}(){() →* self::ExternalValue*}; + dynamic y = new self::Foo::•().{self::Foo::instanceMethod}(){() → dynamic}; + core::bool z = self::externalStatic(); + self::ExternalValue w = self::createBar().{self::Bar::externalInstanceMethod}(){() → self::ExternalValue}; self::stringArgument("sdfg"); self::intArgument(42); - self::Box* box = new self::Box::•(); + self::Box box = new self::Box::•(); box.{self::Box::field} = "sdfg"; dynamic a = box.{self::Box::field}{dynamic}; - self::FinalBox* finalBox = new self::FinalBox::•("dfg"); + self::FinalBox finalBox = new self::FinalBox::•("dfg"); dynamic b = finalBox.{self::FinalBox::finalField}{dynamic}; - self::SubFinalBox* subBox = new self::SubFinalBox::•("dfg"); + self::SubFinalBox subBox = new self::SubFinalBox::•("dfg"); dynamic c = subBox.{self::FinalBox::finalField}{dynamic}; self::makeDynamicCall(new self::DynamicReceiver1::•()); self::makeDynamicCall(new self::DynamicReceiver2::•()); - core::List* list = ["string"]; - core::String* d = list.{core::List::[]}(0){(core::int*) →* core::String*}; + core::List list = ["string"]; + core::String d = list.{core::List::[]}(0){(core::int) → core::String}; } diff --git a/pkg/front_end/testcases/general/micro.dart.weak.outline.expect b/pkg/front_end/testcases/general/micro.dart.weak.outline.expect index 2d4939b2f4f..1741ac7ea1d 100644 --- a/pkg/front_end/testcases/general/micro.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/micro.dart.weak.outline.expect @@ -1,122 +1,52 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Foo extends core::Object { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo ; method instanceMethod() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ExternalValue extends core::Object { - synthetic constructor •() → self::ExternalValue* + synthetic constructor •() → self::ExternalValue ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Bar extends core::Object { - synthetic constructor •() → self::Bar* + synthetic constructor •() → self::Bar ; - abstract method externalInstanceMethod() → self::ExternalValue*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method externalInstanceMethod() → self::ExternalValue; } class Box extends core::Object { field dynamic field; - synthetic constructor •() → self::Box* + synthetic constructor •() → self::Box ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class FinalBox extends core::Object { final field dynamic finalField; - constructor •(dynamic finalField) → self::FinalBox* + constructor •(dynamic finalField) → self::FinalBox ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class SubFinalBox extends self::FinalBox { - constructor •(dynamic value) → self::SubFinalBox* + constructor •(dynamic value) → self::SubFinalBox ; } class DynamicReceiver1 extends core::Object { - synthetic constructor •() → self::DynamicReceiver1* + synthetic constructor •() → self::DynamicReceiver1 ; method dynamicallyCalled(dynamic x) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class DynamicReceiver2 extends core::Object { - synthetic constructor •() → self::DynamicReceiver2* + synthetic constructor •() → self::DynamicReceiver2 ; method dynamicallyCalled(dynamic x) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method staticMethod() → dynamic ; -external static method externalStatic() → core::bool*; -external static method createBar() → self::Bar*; +external static method externalStatic() → core::bool; +external static method createBar() → self::Bar; static method stringArgument(dynamic x) → dynamic ; static method intArgument(dynamic x) → dynamic diff --git a/pkg/front_end/testcases/general/micro.dart.weak.transformed.expect b/pkg/front_end/testcases/general/micro.dart.weak.transformed.expect index 23f0c210d1c..c2aee716263 100644 --- a/pkg/front_end/testcases/general/micro.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/micro.dart.weak.transformed.expect @@ -1,130 +1,60 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Foo extends core::Object { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo : super core::Object::•() ; method instanceMethod() → dynamic { return 123; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ExternalValue extends core::Object { - synthetic constructor •() → self::ExternalValue* + synthetic constructor •() → self::ExternalValue : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Bar extends core::Object { - synthetic constructor •() → self::Bar* + synthetic constructor •() → self::Bar : super core::Object::•() ; - abstract method externalInstanceMethod() → self::ExternalValue*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method externalInstanceMethod() → self::ExternalValue; } class Box extends core::Object { field dynamic field = null; - synthetic constructor •() → self::Box* + synthetic constructor •() → self::Box : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class FinalBox extends core::Object { final field dynamic finalField; - constructor •(dynamic finalField) → self::FinalBox* + constructor •(dynamic finalField) → self::FinalBox : self::FinalBox::finalField = finalField, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class SubFinalBox extends self::FinalBox { - constructor •(dynamic value) → self::SubFinalBox* + constructor •(dynamic value) → self::SubFinalBox : super self::FinalBox::•(value) ; } class DynamicReceiver1 extends core::Object { - synthetic constructor •() → self::DynamicReceiver1* + synthetic constructor •() → self::DynamicReceiver1 : super core::Object::•() ; method dynamicallyCalled(dynamic x) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class DynamicReceiver2 extends core::Object { - synthetic constructor •() → self::DynamicReceiver2* + synthetic constructor •() → self::DynamicReceiver2 : super core::Object::•() ; method dynamicallyCalled(dynamic x) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method staticMethod() → dynamic { return "sdfg"; } -external static method externalStatic() → core::bool*; -external static method createBar() → self::Bar*; +external static method externalStatic() → core::bool; +external static method createBar() → self::Bar; static method stringArgument(dynamic x) → dynamic {} static method intArgument(dynamic x) → dynamic {} static method makeDynamicCall(dynamic receiver) → void { @@ -132,20 +62,20 @@ static method makeDynamicCall(dynamic receiver) → void { } static method main() → dynamic { dynamic x = self::staticMethod(); - dynamic y = new self::Foo::•().{self::Foo::instanceMethod}(){() →* dynamic}; - core::bool* z = self::externalStatic(); - self::ExternalValue* w = self::createBar().{self::Bar::externalInstanceMethod}(){() →* self::ExternalValue*}; + dynamic y = new self::Foo::•().{self::Foo::instanceMethod}(){() → dynamic}; + core::bool z = self::externalStatic(); + self::ExternalValue w = self::createBar().{self::Bar::externalInstanceMethod}(){() → self::ExternalValue}; self::stringArgument("sdfg"); self::intArgument(42); - self::Box* box = new self::Box::•(); + self::Box box = new self::Box::•(); box.{self::Box::field} = "sdfg"; dynamic a = box.{self::Box::field}{dynamic}; - self::FinalBox* finalBox = new self::FinalBox::•("dfg"); + self::FinalBox finalBox = new self::FinalBox::•("dfg"); dynamic b = finalBox.{self::FinalBox::finalField}{dynamic}; - self::SubFinalBox* subBox = new self::SubFinalBox::•("dfg"); + self::SubFinalBox subBox = new self::SubFinalBox::•("dfg"); dynamic c = subBox.{self::FinalBox::finalField}{dynamic}; self::makeDynamicCall(new self::DynamicReceiver1::•()); self::makeDynamicCall(new self::DynamicReceiver2::•()); - core::List* list = core::_GrowableList::_literal1("string"); - core::String* d = list.{core::List::[]}(0){(core::int*) →* core::String*}; + core::List list = core::_GrowableList::_literal1("string"); + core::String d = list.{core::List::[]}(0){(core::int) → core::String}; } diff --git a/pkg/front_end/testcases/general/minimum_int.dart b/pkg/front_end/testcases/general/minimum_int.dart index fdba2749873..4b5a61c3a55 100644 --- a/pkg/front_end/testcases/general/minimum_int.dart +++ b/pkg/front_end/testcases/general/minimum_int.dart @@ -1,2 +1 @@ -// @dart=2.9 main() => print(-9223372036854775808); diff --git a/pkg/front_end/testcases/general/minimum_int.dart.textual_outline.expect b/pkg/front_end/testcases/general/minimum_int.dart.textual_outline.expect index 30ce5d2d788..4b5a61c3a55 100644 --- a/pkg/front_end/testcases/general/minimum_int.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/minimum_int.dart.textual_outline.expect @@ -1,2 +1 @@ -// @dart = 2.9 main() => print(-9223372036854775808); diff --git a/pkg/front_end/testcases/general/minimum_int.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/minimum_int.dart.textual_outline_modelled.expect index 30ce5d2d788..4b5a61c3a55 100644 --- a/pkg/front_end/testcases/general/minimum_int.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/minimum_int.dart.textual_outline_modelled.expect @@ -1,2 +1 @@ -// @dart = 2.9 main() => print(-9223372036854775808); diff --git a/pkg/front_end/testcases/general/minimum_int.dart.weak.expect b/pkg/front_end/testcases/general/minimum_int.dart.weak.expect index 65f7c38b32a..e9ffb8f7770 100644 --- a/pkg/front_end/testcases/general/minimum_int.dart.weak.expect +++ b/pkg/front_end/testcases/general/minimum_int.dart.weak.expect @@ -1,6 +1,6 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; static method main() → dynamic - return core::print(-9223372036854775808.{core::int::unary-}(){() →* core::int*}); + return core::print(-9223372036854775808.{core::int::unary-}(){() → core::int}); diff --git a/pkg/front_end/testcases/general/minimum_int.dart.weak.modular.expect b/pkg/front_end/testcases/general/minimum_int.dart.weak.modular.expect index 65f7c38b32a..e9ffb8f7770 100644 --- a/pkg/front_end/testcases/general/minimum_int.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/minimum_int.dart.weak.modular.expect @@ -1,6 +1,6 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; static method main() → dynamic - return core::print(-9223372036854775808.{core::int::unary-}(){() →* core::int*}); + return core::print(-9223372036854775808.{core::int::unary-}(){() → core::int}); diff --git a/pkg/front_end/testcases/general/minimum_int.dart.weak.outline.expect b/pkg/front_end/testcases/general/minimum_int.dart.weak.outline.expect index 6a28c0dd540..e2cba6be4d1 100644 --- a/pkg/front_end/testcases/general/minimum_int.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/minimum_int.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; static method main() → dynamic diff --git a/pkg/front_end/testcases/general/minimum_int.dart.weak.transformed.expect b/pkg/front_end/testcases/general/minimum_int.dart.weak.transformed.expect index 349fd7ee616..3fc6ee18dba 100644 --- a/pkg/front_end/testcases/general/minimum_int.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/minimum_int.dart.weak.transformed.expect @@ -1,11 +1,11 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; static method main() → dynamic - return core::print(-9223372036854775808.{core::int::unary-}(){() →* core::int*}); + return core::print(-9223372036854775808.{core::int::unary-}(){() → core::int}); Extra constant evaluation status: -Evaluated: InstanceInvocation @ org-dartlang-testcase:///minimum_int.dart:2:17 -> IntConstant(-9223372036854775808) +Evaluated: InstanceInvocation @ org-dartlang-testcase:///minimum_int.dart:1:17 -> IntConstant(-9223372036854775808) Extra constant evaluation: evaluated: 2, effectively constant: 1 diff --git a/pkg/front_end/testcases/general/missing_constructor.dart b/pkg/front_end/testcases/general/missing_constructor.dart index 16bb61f3b83..190d24c6c41 100644 --- a/pkg/front_end/testcases/general/missing_constructor.dart +++ b/pkg/front_end/testcases/general/missing_constructor.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class Super { Super._(); } diff --git a/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline.expect b/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline.expect index a70ca4f575a..021aaf95894 100644 --- a/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Super { Super._(); } diff --git a/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline_modelled.expect index ebcb1500c05..44085f9eb00 100644 --- a/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/missing_constructor.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Bad { Bad.bar() : this.baz(); Bad.foo() : this(); diff --git a/pkg/front_end/testcases/general/missing_constructor.dart.weak.expect b/pkg/front_end/testcases/general/missing_constructor.dart.weak.expect index 12e92e5bbed..73616cecb91 100644 --- a/pkg/front_end/testcases/general/missing_constructor.dart.weak.expect +++ b/pkg/front_end/testcases/general/missing_constructor.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -30,81 +30,51 @@ import self as self; import "dart:core" as core; class Super extends core::Object { - constructor _() → self::Super* + constructor _() → self::Super : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Sub extends self::Super { - constructor •() → self::Sub* + constructor •() → self::Sub : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:10:11: Error: Superclass has no constructor named 'Super'. Sub() : super(); ^^^^^" ; - constructor foo() → self::Sub* + constructor foo() → self::Sub : final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:11:15: Error: Superclass has no constructor named 'Super.foo'. Sub.foo() : super.foo(); ^^^^^" ; } class Bad extends core::Object { - constructor foo() → self::Bad* + constructor foo() → self::Bad : final dynamic #t3 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:15:15: Error: Couldn't find constructor 'Bad'. Bad.foo() : this(); ^^^^" ; - constructor bar() → self::Bad* + constructor bar() → self::Bad : final dynamic #t4 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:16:15: Error: Couldn't find constructor 'Bad.baz'. Bad.bar() : this.baz(); ^^^^" ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _MixinApplication&Super&M = self::Super with self::M /*isAnonymousMixin*/ { - synthetic constructor _() → self::_MixinApplication&Super&M* + synthetic constructor _() → self::_MixinApplication&Super&M : super self::Super::_() ; } class MixinApplication extends self::_MixinApplication&Super&M { - constructor •() → self::MixinApplication* + constructor •() → self::MixinApplication : final dynamic #t5 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:22:24: Error: Superclass has no constructor named 'Super'. MixinApplication() : super(); ^^^^^" ; - constructor foo() → self::MixinApplication* + constructor foo() → self::MixinApplication : final dynamic #t6 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:23:28: Error: Superclass has no constructor named 'Super.foo'. MixinApplication.foo() : super.foo(); ^^^^^" diff --git a/pkg/front_end/testcases/general/missing_constructor.dart.weak.modular.expect b/pkg/front_end/testcases/general/missing_constructor.dart.weak.modular.expect index 12e92e5bbed..73616cecb91 100644 --- a/pkg/front_end/testcases/general/missing_constructor.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/missing_constructor.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -30,81 +30,51 @@ import self as self; import "dart:core" as core; class Super extends core::Object { - constructor _() → self::Super* + constructor _() → self::Super : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Sub extends self::Super { - constructor •() → self::Sub* + constructor •() → self::Sub : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:10:11: Error: Superclass has no constructor named 'Super'. Sub() : super(); ^^^^^" ; - constructor foo() → self::Sub* + constructor foo() → self::Sub : final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:11:15: Error: Superclass has no constructor named 'Super.foo'. Sub.foo() : super.foo(); ^^^^^" ; } class Bad extends core::Object { - constructor foo() → self::Bad* + constructor foo() → self::Bad : final dynamic #t3 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:15:15: Error: Couldn't find constructor 'Bad'. Bad.foo() : this(); ^^^^" ; - constructor bar() → self::Bad* + constructor bar() → self::Bad : final dynamic #t4 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:16:15: Error: Couldn't find constructor 'Bad.baz'. Bad.bar() : this.baz(); ^^^^" ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _MixinApplication&Super&M = self::Super with self::M /*isAnonymousMixin*/ { - synthetic constructor _() → self::_MixinApplication&Super&M* + synthetic constructor _() → self::_MixinApplication&Super&M : super self::Super::_() ; } class MixinApplication extends self::_MixinApplication&Super&M { - constructor •() → self::MixinApplication* + constructor •() → self::MixinApplication : final dynamic #t5 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:22:24: Error: Superclass has no constructor named 'Super'. MixinApplication() : super(); ^^^^^" ; - constructor foo() → self::MixinApplication* + constructor foo() → self::MixinApplication : final dynamic #t6 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:23:28: Error: Superclass has no constructor named 'Super.foo'. MixinApplication.foo() : super.foo(); ^^^^^" diff --git a/pkg/front_end/testcases/general/missing_constructor.dart.weak.outline.expect b/pkg/front_end/testcases/general/missing_constructor.dart.weak.outline.expect index ec0437bd5b7..17112b291aa 100644 --- a/pkg/front_end/testcases/general/missing_constructor.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/missing_constructor.dart.weak.outline.expect @@ -1,66 +1,36 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Super extends core::Object { - constructor _() → self::Super* + constructor _() → self::Super ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Sub extends self::Super { - constructor •() → self::Sub* + constructor •() → self::Sub ; - constructor foo() → self::Sub* + constructor foo() → self::Sub ; } class Bad extends core::Object { - constructor foo() → self::Bad* + constructor foo() → self::Bad ; - constructor bar() → self::Bad* + constructor bar() → self::Bad ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _MixinApplication&Super&M = self::Super with self::M /*isAnonymousMixin*/ { - synthetic constructor _() → self::_MixinApplication&Super&M* + synthetic constructor _() → self::_MixinApplication&Super&M : super self::Super::_() ; } class MixinApplication extends self::_MixinApplication&Super&M { - constructor •() → self::MixinApplication* + constructor •() → self::MixinApplication ; - constructor foo() → self::MixinApplication* + constructor foo() → self::MixinApplication ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/missing_constructor.dart.weak.transformed.expect b/pkg/front_end/testcases/general/missing_constructor.dart.weak.transformed.expect index 5aab9adbbae..9c91118003f 100644 --- a/pkg/front_end/testcases/general/missing_constructor.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/missing_constructor.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -30,81 +30,51 @@ import self as self; import "dart:core" as core; class Super extends core::Object { - constructor _() → self::Super* + constructor _() → self::Super : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Sub extends self::Super { - constructor •() → self::Sub* + constructor •() → self::Sub : final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:10:11: Error: Superclass has no constructor named 'Super'. Sub() : super(); ^^^^^" ; - constructor foo() → self::Sub* + constructor foo() → self::Sub : final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:11:15: Error: Superclass has no constructor named 'Super.foo'. Sub.foo() : super.foo(); ^^^^^" ; } class Bad extends core::Object { - constructor foo() → self::Bad* + constructor foo() → self::Bad : final dynamic #t3 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:15:15: Error: Couldn't find constructor 'Bad'. Bad.foo() : this(); ^^^^" ; - constructor bar() → self::Bad* + constructor bar() → self::Bad : final dynamic #t4 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:16:15: Error: Couldn't find constructor 'Bad.baz'. Bad.bar() : this.baz(); ^^^^" ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _MixinApplication&Super&M extends self::Super implements self::M /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor _() → self::_MixinApplication&Super&M* + synthetic constructor _() → self::_MixinApplication&Super&M : super self::Super::_() ; } class MixinApplication extends self::_MixinApplication&Super&M { - constructor •() → self::MixinApplication* + constructor •() → self::MixinApplication : final dynamic #t5 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:22:24: Error: Superclass has no constructor named 'Super'. MixinApplication() : super(); ^^^^^" ; - constructor foo() → self::MixinApplication* + constructor foo() → self::MixinApplication : final dynamic #t6 = invalid-expression "pkg/front_end/testcases/general/missing_constructor.dart:23:28: Error: Superclass has no constructor named 'Super.foo'. MixinApplication.foo() : super.foo(); ^^^^^" diff --git a/pkg/front_end/testcases/general/missing_toplevel.dart b/pkg/front_end/testcases/general/missing_toplevel.dart index bf3f72c3868..cde08871a36 100644 --- a/pkg/front_end/testcases/general/missing_toplevel.dart +++ b/pkg/front_end/testcases/general/missing_toplevel.dart @@ -1,13 +1,13 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class EmptyClass {} var emptyClass = new EmptyClass(); class ClassWithProperty { - EmptyClass property; + EmptyClass property = new EmptyClass(); } var classWithProperty = new ClassWithProperty(); @@ -19,7 +19,7 @@ class ClassWithIndexSet { var classWithIndexSet = new ClassWithIndexSet(); class ClassWithIndexGet { - int operator [](int index) => 42; + int? operator [](int index) => 42; } var classWithIndexGet = new ClassWithIndexGet(); diff --git a/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline.expect b/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline.expect index bb6e0a87a66..c12e1ea07ef 100644 --- a/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline.expect @@ -1,10 +1,9 @@ -// @dart = 2.9 class EmptyClass {} var emptyClass = new EmptyClass(); class ClassWithProperty { - EmptyClass property; + EmptyClass property = new EmptyClass(); } var classWithProperty = new ClassWithProperty(); @@ -16,7 +15,7 @@ class ClassWithIndexSet { var classWithIndexSet = new ClassWithIndexSet(); class ClassWithIndexGet { - int operator [](int index) => 42; + int? operator [](int index) => 42; } var classWithIndexGet = new ClassWithIndexGet(); diff --git a/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline_modelled.expect index 3541a608aa6..4a2f8863fbf 100644 --- a/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/missing_toplevel.dart.textual_outline_modelled.expect @@ -1,6 +1,5 @@ -// @dart = 2.9 class ClassWithIndexGet { - int operator [](int index) => 42; + int? operator [](int index) => 42; } class ClassWithIndexSet { @@ -8,7 +7,7 @@ class ClassWithIndexSet { } class ClassWithProperty { - EmptyClass property; + EmptyClass property = new EmptyClass(); } class EmptyClass {} diff --git a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.expect b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.expect index e4cac822435..740b0033804 100644 --- a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.expect +++ b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -36,94 +36,54 @@ import self as self; import "dart:core" as core; class EmptyClass extends core::Object { - synthetic constructor •() → self::EmptyClass* + synthetic constructor •() → self::EmptyClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithProperty extends core::Object { - field self::EmptyClass* property = null; - synthetic constructor •() → self::ClassWithProperty* + field self::EmptyClass property = new self::EmptyClass::•(); + synthetic constructor •() → self::ClassWithProperty : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithIndexSet extends core::Object { - synthetic constructor •() → self::ClassWithIndexSet* + synthetic constructor •() → self::ClassWithIndexSet : super core::Object::•() ; - operator []=(core::int* index, core::int* value) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + operator []=(core::int index, core::int value) → void {} } class ClassWithIndexGet extends core::Object { - synthetic constructor •() → self::ClassWithIndexGet* + synthetic constructor •() → self::ClassWithIndexGet : super core::Object::•() ; - operator [](core::int* index) → core::int* + operator [](core::int index) → core::int? return 42; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field self::EmptyClass* emptyClass = new self::EmptyClass::•(); -static field self::ClassWithProperty* classWithProperty = new self::ClassWithProperty::•(); -static field self::ClassWithIndexSet* classWithIndexSet = new self::ClassWithIndexSet::•(); -static field self::ClassWithIndexGet* classWithIndexGet = new self::ClassWithIndexGet::•(); -static field dynamic missingBinary = let final self::ClassWithProperty* #t1 = self::classWithProperty in #t1.{self::ClassWithProperty::property} = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:27:48: Error: The operator '+' isn't defined for the class 'EmptyClass'. +static field self::EmptyClass emptyClass = new self::EmptyClass::•(); +static field self::ClassWithProperty classWithProperty = new self::ClassWithProperty::•(); +static field self::ClassWithIndexSet classWithIndexSet = new self::ClassWithIndexSet::•(); +static field self::ClassWithIndexGet classWithIndexGet = new self::ClassWithIndexGet::•(); +static field dynamic missingBinary = let final self::ClassWithProperty #t1 = self::classWithProperty in #t1.{self::ClassWithProperty::property} = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:27:48: Error: The operator '+' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '+' operator. var missingBinary = classWithProperty.property += 2; - ^" in #t1.{self::ClassWithProperty::property}{self::EmptyClass*}{}.+(2) as{TypeError,ForDynamic} self::EmptyClass*; -static field dynamic missingIndexGet = let final self::ClassWithIndexSet* #t2 = self::classWithIndexSet in let final core::int* #t3 = 0 in let final dynamic #t4 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:28:40: Error: The operator '[]' isn't defined for the class 'ClassWithIndexSet'. + ^" in #t1.{self::ClassWithProperty::property}{self::EmptyClass}{}.+(2) as{TypeError,ForDynamic,ForNonNullableByDefault} self::EmptyClass; +static field dynamic missingIndexGet = let final self::ClassWithIndexSet #t2 = self::classWithIndexSet in let final core::int #t3 = 0 in let final dynamic #t4 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:28:40: Error: The operator '[]' isn't defined for the class 'ClassWithIndexSet'. - 'ClassWithIndexSet' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '[]' operator. var missingIndexGet = classWithIndexSet[0] ??= 2; - ^" in #t2{}.[](#t3) in #t4 == null ?{dynamic} let final core::int* #t5 = 2 in let final void #t6 = #t2.{self::ClassWithIndexSet::[]=}(#t3, #t5){(core::int*, core::int*) →* void} in #t5 : #t4; -static field core::int* missingIndexSet = let final self::ClassWithIndexGet* #t7 = self::classWithIndexGet in let final core::int* #t8 = 0 in let final core::int* #t9 = #t7.{self::ClassWithIndexGet::[]}(#t8){(core::int*) →* core::int*} in #t9 == null ?{core::int*} let final core::int* #t10 = 2 in let final void #t11 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:29:40: Error: The operator '[]=' isn't defined for the class 'ClassWithIndexGet'. + ^" in #t2{}.[](#t3) in #t4 == null ?{dynamic} let final core::int #t5 = 2 in let final void #t6 = #t2.{self::ClassWithIndexSet::[]=}(#t3, #t5){(core::int, core::int) → void} in #t5 : #t4; +static field core::int missingIndexSet = let final self::ClassWithIndexGet #t7 = self::classWithIndexGet in let final core::int #t8 = 0 in let final core::int? #t9 = #t7.{self::ClassWithIndexGet::[]}(#t8){(core::int) → core::int?} in #t9 == null ?{core::int} let final core::int #t10 = 2 in let final void #t11 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:29:40: Error: The operator '[]=' isn't defined for the class 'ClassWithIndexGet'. - 'ClassWithIndexGet' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '[]=' operator. var missingIndexSet = classWithIndexGet[0] ??= 2; - ^" in #t7{}.[]=(#t8, #t10) in #t10 : #t9; + ^" in #t7{}.[]=(#t8, #t10) in #t10 : #t9{core::int}; static field dynamic missingPropertyGet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:30:37: Error: The getter 'property' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the name to the name of an existing getter, or defining a getter or field named 'property'. var missingPropertyGet = emptyClass.property; ^^^^^^^^" in self::emptyClass{}.property; -static field core::int* missingPropertySet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:31:37: Error: The setter 'property' isn't defined for the class 'EmptyClass'. +static field core::int missingPropertySet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:31:37: Error: The setter 'property' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the name to the name of an existing setter, or defining a setter or field named 'property'. var missingPropertySet = emptyClass.property = 42; diff --git a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.modular.expect b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.modular.expect index e4cac822435..740b0033804 100644 --- a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -36,94 +36,54 @@ import self as self; import "dart:core" as core; class EmptyClass extends core::Object { - synthetic constructor •() → self::EmptyClass* + synthetic constructor •() → self::EmptyClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithProperty extends core::Object { - field self::EmptyClass* property = null; - synthetic constructor •() → self::ClassWithProperty* + field self::EmptyClass property = new self::EmptyClass::•(); + synthetic constructor •() → self::ClassWithProperty : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithIndexSet extends core::Object { - synthetic constructor •() → self::ClassWithIndexSet* + synthetic constructor •() → self::ClassWithIndexSet : super core::Object::•() ; - operator []=(core::int* index, core::int* value) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + operator []=(core::int index, core::int value) → void {} } class ClassWithIndexGet extends core::Object { - synthetic constructor •() → self::ClassWithIndexGet* + synthetic constructor •() → self::ClassWithIndexGet : super core::Object::•() ; - operator [](core::int* index) → core::int* + operator [](core::int index) → core::int? return 42; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field self::EmptyClass* emptyClass = new self::EmptyClass::•(); -static field self::ClassWithProperty* classWithProperty = new self::ClassWithProperty::•(); -static field self::ClassWithIndexSet* classWithIndexSet = new self::ClassWithIndexSet::•(); -static field self::ClassWithIndexGet* classWithIndexGet = new self::ClassWithIndexGet::•(); -static field dynamic missingBinary = let final self::ClassWithProperty* #t1 = self::classWithProperty in #t1.{self::ClassWithProperty::property} = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:27:48: Error: The operator '+' isn't defined for the class 'EmptyClass'. +static field self::EmptyClass emptyClass = new self::EmptyClass::•(); +static field self::ClassWithProperty classWithProperty = new self::ClassWithProperty::•(); +static field self::ClassWithIndexSet classWithIndexSet = new self::ClassWithIndexSet::•(); +static field self::ClassWithIndexGet classWithIndexGet = new self::ClassWithIndexGet::•(); +static field dynamic missingBinary = let final self::ClassWithProperty #t1 = self::classWithProperty in #t1.{self::ClassWithProperty::property} = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:27:48: Error: The operator '+' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '+' operator. var missingBinary = classWithProperty.property += 2; - ^" in #t1.{self::ClassWithProperty::property}{self::EmptyClass*}{}.+(2) as{TypeError,ForDynamic} self::EmptyClass*; -static field dynamic missingIndexGet = let final self::ClassWithIndexSet* #t2 = self::classWithIndexSet in let final core::int* #t3 = 0 in let final dynamic #t4 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:28:40: Error: The operator '[]' isn't defined for the class 'ClassWithIndexSet'. + ^" in #t1.{self::ClassWithProperty::property}{self::EmptyClass}{}.+(2) as{TypeError,ForDynamic,ForNonNullableByDefault} self::EmptyClass; +static field dynamic missingIndexGet = let final self::ClassWithIndexSet #t2 = self::classWithIndexSet in let final core::int #t3 = 0 in let final dynamic #t4 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:28:40: Error: The operator '[]' isn't defined for the class 'ClassWithIndexSet'. - 'ClassWithIndexSet' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '[]' operator. var missingIndexGet = classWithIndexSet[0] ??= 2; - ^" in #t2{}.[](#t3) in #t4 == null ?{dynamic} let final core::int* #t5 = 2 in let final void #t6 = #t2.{self::ClassWithIndexSet::[]=}(#t3, #t5){(core::int*, core::int*) →* void} in #t5 : #t4; -static field core::int* missingIndexSet = let final self::ClassWithIndexGet* #t7 = self::classWithIndexGet in let final core::int* #t8 = 0 in let final core::int* #t9 = #t7.{self::ClassWithIndexGet::[]}(#t8){(core::int*) →* core::int*} in #t9 == null ?{core::int*} let final core::int* #t10 = 2 in let final void #t11 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:29:40: Error: The operator '[]=' isn't defined for the class 'ClassWithIndexGet'. + ^" in #t2{}.[](#t3) in #t4 == null ?{dynamic} let final core::int #t5 = 2 in let final void #t6 = #t2.{self::ClassWithIndexSet::[]=}(#t3, #t5){(core::int, core::int) → void} in #t5 : #t4; +static field core::int missingIndexSet = let final self::ClassWithIndexGet #t7 = self::classWithIndexGet in let final core::int #t8 = 0 in let final core::int? #t9 = #t7.{self::ClassWithIndexGet::[]}(#t8){(core::int) → core::int?} in #t9 == null ?{core::int} let final core::int #t10 = 2 in let final void #t11 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:29:40: Error: The operator '[]=' isn't defined for the class 'ClassWithIndexGet'. - 'ClassWithIndexGet' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '[]=' operator. var missingIndexSet = classWithIndexGet[0] ??= 2; - ^" in #t7{}.[]=(#t8, #t10) in #t10 : #t9; + ^" in #t7{}.[]=(#t8, #t10) in #t10 : #t9{core::int}; static field dynamic missingPropertyGet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:30:37: Error: The getter 'property' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the name to the name of an existing getter, or defining a getter or field named 'property'. var missingPropertyGet = emptyClass.property; ^^^^^^^^" in self::emptyClass{}.property; -static field core::int* missingPropertySet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:31:37: Error: The setter 'property' isn't defined for the class 'EmptyClass'. +static field core::int missingPropertySet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:31:37: Error: The setter 'property' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the name to the name of an existing setter, or defining a setter or field named 'property'. var missingPropertySet = emptyClass.property = 42; diff --git a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.outline.expect b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.outline.expect index b92887eded6..da8936139d5 100644 --- a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.outline.expect @@ -1,76 +1,36 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class EmptyClass extends core::Object { - synthetic constructor •() → self::EmptyClass* + synthetic constructor •() → self::EmptyClass ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithProperty extends core::Object { - field self::EmptyClass* property; - synthetic constructor •() → self::ClassWithProperty* + field self::EmptyClass property; + synthetic constructor •() → self::ClassWithProperty ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithIndexSet extends core::Object { - synthetic constructor •() → self::ClassWithIndexSet* + synthetic constructor •() → self::ClassWithIndexSet ; - operator []=(core::int* index, core::int* value) → void + operator []=(core::int index, core::int value) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithIndexGet extends core::Object { - synthetic constructor •() → self::ClassWithIndexGet* + synthetic constructor •() → self::ClassWithIndexGet ; - operator [](core::int* index) → core::int* + operator [](core::int index) → core::int? ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field self::EmptyClass* emptyClass; -static field self::ClassWithProperty* classWithProperty; -static field self::ClassWithIndexSet* classWithIndexSet; -static field self::ClassWithIndexGet* classWithIndexGet; +static field self::EmptyClass emptyClass; +static field self::ClassWithProperty classWithProperty; +static field self::ClassWithIndexSet classWithIndexSet; +static field self::ClassWithIndexGet classWithIndexGet; static field dynamic missingBinary; static field dynamic missingIndexGet; -static field core::int* missingIndexSet; +static field core::int missingIndexSet; static field dynamic missingPropertyGet; -static field core::int* missingPropertySet; +static field core::int missingPropertySet; static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.transformed.expect b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.transformed.expect index 92a8aa8571b..c5135f9eb30 100644 --- a/pkg/front_end/testcases/general/missing_toplevel.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/missing_toplevel.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -36,94 +36,54 @@ import self as self; import "dart:core" as core; class EmptyClass extends core::Object { - synthetic constructor •() → self::EmptyClass* + synthetic constructor •() → self::EmptyClass : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithProperty extends core::Object { - field self::EmptyClass* property = null; - synthetic constructor •() → self::ClassWithProperty* + field self::EmptyClass property = new self::EmptyClass::•(); + synthetic constructor •() → self::ClassWithProperty : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class ClassWithIndexSet extends core::Object { - synthetic constructor •() → self::ClassWithIndexSet* + synthetic constructor •() → self::ClassWithIndexSet : super core::Object::•() ; - operator []=(core::int* index, core::int* value) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + operator []=(core::int index, core::int value) → void {} } class ClassWithIndexGet extends core::Object { - synthetic constructor •() → self::ClassWithIndexGet* + synthetic constructor •() → self::ClassWithIndexGet : super core::Object::•() ; - operator [](core::int* index) → core::int* + operator [](core::int index) → core::int? return 42; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static field self::EmptyClass* emptyClass = new self::EmptyClass::•(); -static field self::ClassWithProperty* classWithProperty = new self::ClassWithProperty::•(); -static field self::ClassWithIndexSet* classWithIndexSet = new self::ClassWithIndexSet::•(); -static field self::ClassWithIndexGet* classWithIndexGet = new self::ClassWithIndexGet::•(); -static field dynamic missingBinary = let final self::ClassWithProperty* #t1 = self::classWithProperty in #t1.{self::ClassWithProperty::property} = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:27:48: Error: The operator '+' isn't defined for the class 'EmptyClass'. +static field self::EmptyClass emptyClass = new self::EmptyClass::•(); +static field self::ClassWithProperty classWithProperty = new self::ClassWithProperty::•(); +static field self::ClassWithIndexSet classWithIndexSet = new self::ClassWithIndexSet::•(); +static field self::ClassWithIndexGet classWithIndexGet = new self::ClassWithIndexGet::•(); +static field dynamic missingBinary = let final self::ClassWithProperty #t1 = self::classWithProperty in #t1.{self::ClassWithProperty::property} = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:27:48: Error: The operator '+' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '+' operator. var missingBinary = classWithProperty.property += 2; - ^" in #t1.{self::ClassWithProperty::property}{self::EmptyClass*}{}.+(2); -static field dynamic missingIndexGet = let final self::ClassWithIndexSet* #t2 = self::classWithIndexSet in let final core::int* #t3 = 0 in let final invalid-type #t4 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:28:40: Error: The operator '[]' isn't defined for the class 'ClassWithIndexSet'. + ^" in #t1.{self::ClassWithProperty::property}{self::EmptyClass}{}.+(2); +static field dynamic missingIndexGet = let final self::ClassWithIndexSet #t2 = self::classWithIndexSet in let final core::int #t3 = 0 in let final invalid-type #t4 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:28:40: Error: The operator '[]' isn't defined for the class 'ClassWithIndexSet'. - 'ClassWithIndexSet' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '[]' operator. var missingIndexGet = classWithIndexSet[0] ??= 2; - ^" in #t2{}.[](#t3) in #t4 == null ?{dynamic} let final core::int* #t5 = 2 in let final void #t6 = #t2.{self::ClassWithIndexSet::[]=}(#t3, #t5){(core::int*, core::int*) →* void} in #t5 : #t4; -static field core::int* missingIndexSet = let final self::ClassWithIndexGet* #t7 = self::classWithIndexGet in let final core::int* #t8 = 0 in let final core::int* #t9 = #t7.{self::ClassWithIndexGet::[]}(#t8){(core::int*) →* core::int*} in #t9 == null ?{core::int*} let final core::int* #t10 = 2 in let final void #t11 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:29:40: Error: The operator '[]=' isn't defined for the class 'ClassWithIndexGet'. + ^" in #t2{}.[](#t3) in #t4 == null ?{dynamic} let final core::int #t5 = 2 in let final void #t6 = #t2.{self::ClassWithIndexSet::[]=}(#t3, #t5){(core::int, core::int) → void} in #t5 : #t4; +static field core::int missingIndexSet = let final self::ClassWithIndexGet #t7 = self::classWithIndexGet in let final core::int #t8 = 0 in let final core::int? #t9 = #t7.{self::ClassWithIndexGet::[]}(#t8){(core::int) → core::int?} in #t9 == null ?{core::int} let final core::int #t10 = 2 in let final void #t11 = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:29:40: Error: The operator '[]=' isn't defined for the class 'ClassWithIndexGet'. - 'ClassWithIndexGet' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the operator to an existing operator, or defining a '[]=' operator. var missingIndexSet = classWithIndexGet[0] ??= 2; - ^" in #t7{}.[]=(#t8, #t10) in #t10 : #t9; + ^" in #t7{}.[]=(#t8, #t10) in #t10 : #t9{core::int}; static field dynamic missingPropertyGet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:30:37: Error: The getter 'property' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the name to the name of an existing getter, or defining a getter or field named 'property'. var missingPropertyGet = emptyClass.property; ^^^^^^^^" in self::emptyClass{}.property; -static field core::int* missingPropertySet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:31:37: Error: The setter 'property' isn't defined for the class 'EmptyClass'. +static field core::int missingPropertySet = invalid-expression "pkg/front_end/testcases/general/missing_toplevel.dart:31:37: Error: The setter 'property' isn't defined for the class 'EmptyClass'. - 'EmptyClass' is from 'pkg/front_end/testcases/general/missing_toplevel.dart'. Try correcting the name to the name of an existing setter, or defining a setter or field named 'property'. var missingPropertySet = emptyClass.property = 42; @@ -137,4 +97,4 @@ Evaluated: VariableGet @ org-dartlang-testcase:///missing_toplevel.dart:28:48 -> Evaluated: VariableGet @ org-dartlang-testcase:///missing_toplevel.dart:28:48 -> IntConstant(2) Evaluated: VariableGet @ org-dartlang-testcase:///missing_toplevel.dart:29:41 -> IntConstant(0) Evaluated: VariableGet @ org-dartlang-testcase:///missing_toplevel.dart:29:48 -> IntConstant(2) -Extra constant evaluation: evaluated: 37, effectively constant: 5 +Extra constant evaluation: evaluated: 38, effectively constant: 5 diff --git a/pkg/front_end/testcases/general/mixin.dart b/pkg/front_end/testcases/general/mixin.dart index 4d44070b4d1..833d32ae5e6 100644 --- a/pkg/front_end/testcases/general/mixin.dart +++ b/pkg/front_end/testcases/general/mixin.dart @@ -1,7 +1,7 @@ // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class B extends Object with M1, M2 { B(value); } diff --git a/pkg/front_end/testcases/general/mixin.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin.dart.textual_outline.expect index 6403bda539b..74bf0c025a4 100644 --- a/pkg/front_end/testcases/general/mixin.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class B extends Object with M1, M2 { B(value); } diff --git a/pkg/front_end/testcases/general/mixin.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin.dart.textual_outline_modelled.expect index 2202aec96c9..4fd20a5dd4a 100644 --- a/pkg/front_end/testcases/general/mixin.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class G1 { m() => print(T); } diff --git a/pkg/front_end/testcases/general/mixin.dart.weak.expect b/pkg/front_end/testcases/general/mixin.dart.weak.expect index 9ec9ad2d42d..1c3e0d3018d 100644 --- a/pkg/front_end/testcases/general/mixin.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin.dart.weak.expect @@ -1,142 +1,82 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _B&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1* + const synthetic constructor •() → self::_B&Object&M1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::M1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _B&Object&M1&M2 = self::_B&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1&M2* + const synthetic constructor •() → self::_B&Object&M1&M2 : super self::_B&Object&M1::•() ; mixin-super-stub method m() → dynamic return super.{self::M2::m}(); } class B extends self::_B&Object&M1&M2 { - constructor •(dynamic value) → self::B* + constructor •(dynamic value) → self::B : super self::_B&Object&M1&M2::•() ; } abstract class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; method m() → dynamic return core::print("M1"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; method m() → dynamic return core::print("M2"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::M1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1&M2 = self::_C&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; mixin-super-stub method m() → dynamic return super.{self::M2::m}(); } class C extends self::_C&Object&M1&M2 { - constructor •(dynamic value) → self::C* + constructor •(dynamic value) → self::C : super self::_C&Object&M1&M2::•() ; } -abstract class G1 extends core::Object { - synthetic constructor •() → self::G1* +abstract class G1 extends core::Object { + synthetic constructor •() → self::G1 : super core::Object::•() ; method m() → dynamic - return core::print(self::G1::T*); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + return core::print(self::G1::T%); } -abstract class _D&Object&G1 = core::Object with self::G1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_D&Object&G1* +abstract class _D&Object&G1 = core::Object with self::G1 /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_D&Object&G1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::G1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class D extends self::_D&Object&G1 { - synthetic constructor •() → self::D* +class D extends self::_D&Object&G1 { + synthetic constructor •() → self::D : super self::_D&Object&G1::•() ; } static method main() → dynamic { - new self::B::•(null).{self::_B&Object&M1&M2::m}(){() →* dynamic}; - new self::C::•(null).{self::_C&Object&M1&M2::m}(){() →* dynamic}; - new self::D::•().{self::_D&Object&G1::m}(){() →* dynamic}; - new self::D::•().{self::_D&Object&G1::m}(){() →* dynamic}; - new self::D::•*>().{self::_D&Object&G1::m}(){() →* dynamic}; + new self::B::•(null).{self::_B&Object&M1&M2::m}(){() → dynamic}; + new self::C::•(null).{self::_C&Object&M1&M2::m}(){() → dynamic}; + new self::D::•().{self::_D&Object&G1::m}(){() → dynamic}; + new self::D::•().{self::_D&Object&G1::m}(){() → dynamic}; + new self::D::•>().{self::_D&Object&G1::m}(){() → dynamic}; } diff --git a/pkg/front_end/testcases/general/mixin.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin.dart.weak.modular.expect index 9ec9ad2d42d..1c3e0d3018d 100644 --- a/pkg/front_end/testcases/general/mixin.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin.dart.weak.modular.expect @@ -1,142 +1,82 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _B&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1* + const synthetic constructor •() → self::_B&Object&M1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::M1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _B&Object&M1&M2 = self::_B&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1&M2* + const synthetic constructor •() → self::_B&Object&M1&M2 : super self::_B&Object&M1::•() ; mixin-super-stub method m() → dynamic return super.{self::M2::m}(); } class B extends self::_B&Object&M1&M2 { - constructor •(dynamic value) → self::B* + constructor •(dynamic value) → self::B : super self::_B&Object&M1&M2::•() ; } abstract class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; method m() → dynamic return core::print("M1"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; method m() → dynamic return core::print("M2"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::M1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1&M2 = self::_C&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; mixin-super-stub method m() → dynamic return super.{self::M2::m}(); } class C extends self::_C&Object&M1&M2 { - constructor •(dynamic value) → self::C* + constructor •(dynamic value) → self::C : super self::_C&Object&M1&M2::•() ; } -abstract class G1 extends core::Object { - synthetic constructor •() → self::G1* +abstract class G1 extends core::Object { + synthetic constructor •() → self::G1 : super core::Object::•() ; method m() → dynamic - return core::print(self::G1::T*); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + return core::print(self::G1::T%); } -abstract class _D&Object&G1 = core::Object with self::G1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_D&Object&G1* +abstract class _D&Object&G1 = core::Object with self::G1 /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_D&Object&G1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::G1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class D extends self::_D&Object&G1 { - synthetic constructor •() → self::D* +class D extends self::_D&Object&G1 { + synthetic constructor •() → self::D : super self::_D&Object&G1::•() ; } static method main() → dynamic { - new self::B::•(null).{self::_B&Object&M1&M2::m}(){() →* dynamic}; - new self::C::•(null).{self::_C&Object&M1&M2::m}(){() →* dynamic}; - new self::D::•().{self::_D&Object&G1::m}(){() →* dynamic}; - new self::D::•().{self::_D&Object&G1::m}(){() →* dynamic}; - new self::D::•*>().{self::_D&Object&G1::m}(){() →* dynamic}; + new self::B::•(null).{self::_B&Object&M1&M2::m}(){() → dynamic}; + new self::C::•(null).{self::_C&Object&M1&M2::m}(){() → dynamic}; + new self::D::•().{self::_D&Object&G1::m}(){() → dynamic}; + new self::D::•().{self::_D&Object&G1::m}(){() → dynamic}; + new self::D::•>().{self::_D&Object&G1::m}(){() → dynamic}; } diff --git a/pkg/front_end/testcases/general/mixin.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin.dart.weak.outline.expect index e09c2b00748..42597748425 100644 --- a/pkg/front_end/testcases/general/mixin.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin.dart.weak.outline.expect @@ -1,130 +1,70 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _B&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1* + const synthetic constructor •() → self::_B&Object&M1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::M1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _B&Object&M1&M2 = self::_B&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1&M2* + const synthetic constructor •() → self::_B&Object&M1&M2 : super self::_B&Object&M1::•() ; mixin-super-stub method m() → dynamic return super.{self::M2::m}(); } class B extends self::_B&Object&M1&M2 { - constructor •(dynamic value) → self::B* + constructor •(dynamic value) → self::B ; } abstract class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 ; method m() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 ; method m() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::M1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1&M2 = self::_C&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; mixin-super-stub method m() → dynamic return super.{self::M2::m}(); } class C extends self::_C&Object&M1&M2 { - constructor •(dynamic value) → self::C* + constructor •(dynamic value) → self::C ; } -abstract class G1 extends core::Object { - synthetic constructor •() → self::G1* +abstract class G1 extends core::Object { + synthetic constructor •() → self::G1 ; method m() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -abstract class _D&Object&G1 = core::Object with self::G1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_D&Object&G1* +abstract class _D&Object&G1 = core::Object with self::G1 /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_D&Object&G1 : super core::Object::•() ; mixin-super-stub method m() → dynamic return super.{self::G1::m}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class D extends self::_D&Object&G1 { - synthetic constructor •() → self::D* +class D extends self::_D&Object&G1 { + synthetic constructor •() → self::D ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/mixin.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin.dart.weak.transformed.expect index fe35f144da0..8541d2b13a1 100644 --- a/pkg/front_end/testcases/general/mixin.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin.dart.weak.transformed.expect @@ -1,142 +1,82 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _B&Object&M1 extends core::Object implements self::M1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1* + const synthetic constructor •() → self::_B&Object&M1 : super core::Object::•() ; method m() → dynamic return core::print("M1"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _B&Object&M1&M2 extends self::_B&Object&M1 implements self::M2 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_B&Object&M1&M2* + const synthetic constructor •() → self::_B&Object&M1&M2 : super self::_B&Object&M1::•() ; method m() → dynamic return core::print("M2"); } class B extends self::_B&Object&M1&M2 { - constructor •(dynamic value) → self::B* + constructor •(dynamic value) → self::B : super self::_B&Object&M1&M2::•() ; } abstract class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; method m() → dynamic return core::print("M1"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; method m() → dynamic return core::print("M2"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1 extends core::Object implements self::M1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; method m() → dynamic return core::print("M1"); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1&M2 extends self::_C&Object&M1 implements self::M2 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; method m() → dynamic return core::print("M2"); } class C extends self::_C&Object&M1&M2 { - constructor •(dynamic value) → self::C* + constructor •(dynamic value) → self::C : super self::_C&Object&M1&M2::•() ; } -abstract class G1 extends core::Object { - synthetic constructor •() → self::G1* +abstract class G1 extends core::Object { + synthetic constructor •() → self::G1 : super core::Object::•() ; method m() → dynamic - return core::print(self::G1::T*); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + return core::print(self::G1::T%); } -abstract class _D&Object&G1 extends core::Object implements self::G1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_D&Object&G1* +abstract class _D&Object&G1 extends core::Object implements self::G1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_D&Object&G1 : super core::Object::•() ; method m() → dynamic - return core::print(self::_D&Object&G1::S*); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + return core::print(self::_D&Object&G1::S%); } -class D extends self::_D&Object&G1 { - synthetic constructor •() → self::D* +class D extends self::_D&Object&G1 { + synthetic constructor •() → self::D : super self::_D&Object&G1::•() ; } static method main() → dynamic { - new self::B::•(null).{self::_B&Object&M1&M2::m}(){() →* dynamic}; - new self::C::•(null).{self::_C&Object&M1&M2::m}(){() →* dynamic}; - new self::D::•().{self::_D&Object&G1::m}(){() →* dynamic}; - new self::D::•().{self::_D&Object&G1::m}(){() →* dynamic}; - new self::D::•*>().{self::_D&Object&G1::m}(){() →* dynamic}; + new self::B::•(null).{self::_B&Object&M1&M2::m}(){() → dynamic}; + new self::C::•(null).{self::_C&Object&M1&M2::m}(){() → dynamic}; + new self::D::•().{self::_D&Object&G1::m}(){() → dynamic}; + new self::D::•().{self::_D&Object&G1::m}(){() → dynamic}; + new self::D::•>().{self::_D&Object&G1::m}(){() → dynamic}; } diff --git a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart index 838b2ea9223..ae79ed22030 100644 --- a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart +++ b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class Mixin {} class Super { diff --git a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline.expect index 1304dc77052..ee106600269 100644 --- a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Mixin {} class Super { diff --git a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline_modelled.expect index 9e5b6b30231..44e63909315 100644 --- a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Class = Super with Mixin; class Mixin {} diff --git a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.expect b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.expect index c6579d883f4..0457c7e0ff4 100644 --- a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -10,38 +10,18 @@ import self as self; import "dart:core" as core; class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Super extends core::Object { - field core::int* field = 42; - constructor •(core::int* field) → self::Super* + field core::int field = 42; + constructor •(core::int field) → self::Super : self::Super::field = field, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Class = self::Super with self::Mixin { - synthetic constructor •(core::int* field) → self::Class* + synthetic constructor •(core::int field) → self::Class : super self::Super::•(field) ; } @@ -51,5 +31,5 @@ static method main() → dynamic { static method error() → dynamic { new self::Class::•(invalid-expression "pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart:20:13: Error: The argument type 'String' can't be assigned to the parameter type 'int'. new Class(''); - ^" in "" as{TypeError} core::int*); + ^" in "" as{TypeError,ForNonNullableByDefault} core::int); } diff --git a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.modular.expect index c6579d883f4..0457c7e0ff4 100644 --- a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -10,38 +10,18 @@ import self as self; import "dart:core" as core; class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Super extends core::Object { - field core::int* field = 42; - constructor •(core::int* field) → self::Super* + field core::int field = 42; + constructor •(core::int field) → self::Super : self::Super::field = field, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Class = self::Super with self::Mixin { - synthetic constructor •(core::int* field) → self::Class* + synthetic constructor •(core::int field) → self::Class : super self::Super::•(field) ; } @@ -51,5 +31,5 @@ static method main() → dynamic { static method error() → dynamic { new self::Class::•(invalid-expression "pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart:20:13: Error: The argument type 'String' can't be assigned to the parameter type 'int'. new Class(''); - ^" in "" as{TypeError} core::int*); + ^" in "" as{TypeError,ForNonNullableByDefault} core::int); } diff --git a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.outline.expect index 1a998b09067..190974cb51b 100644 --- a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.outline.expect @@ -1,38 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Super extends core::Object { - field core::int* field; - constructor •(core::int* field) → self::Super* + field core::int field; + constructor •(core::int field) → self::Super ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Class = self::Super with self::Mixin { - synthetic constructor •(core::int* field) → self::Class* + synthetic constructor •(core::int field) → self::Class : super self::Super::•(field) ; } diff --git a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.transformed.expect index f060c5f1618..a5d18f6821d 100644 --- a/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -10,38 +10,18 @@ import self as self; import "dart:core" as core; class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Super extends core::Object { - field core::int* field = 42; - constructor •(core::int* field) → self::Super* + field core::int field = 42; + constructor •(core::int field) → self::Super : self::Super::field = field, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Class extends self::Super implements self::Mixin /*isEliminatedMixin*/ { - synthetic constructor •(core::int* field) → self::Class* + synthetic constructor •(core::int field) → self::Class : super self::Super::•(field) ; } @@ -51,5 +31,5 @@ static method main() → dynamic { static method error() → dynamic { new self::Class::•(invalid-expression "pkg/front_end/testcases/general/mixin_application_inferred_parameter_type.dart:20:13: Error: The argument type 'String' can't be assigned to the parameter type 'int'. new Class(''); - ^" in "" as{TypeError} core::int*); + ^" in "" as{TypeError,ForNonNullableByDefault} core::int); } diff --git a/pkg/front_end/testcases/general/mixin_application_lub.dart b/pkg/front_end/testcases/general/mixin_application_lub.dart index 52ff70914d7..e3c7ef83289 100644 --- a/pkg/front_end/testcases/general/mixin_application_lub.dart +++ b/pkg/front_end/testcases/general/mixin_application_lub.dart @@ -1,7 +1,9 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + class Diagnosticable {} // Originally the existence of this (unused) class (which has an anonymous mixin diff --git a/pkg/front_end/testcases/general/mixin_application_lub_2.dart b/pkg/front_end/testcases/general/mixin_application_lub_2.dart new file mode 100644 index 00000000000..a8fb6a5428e --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_application_lub_2.dart @@ -0,0 +1,31 @@ +// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +class Diagnosticable {} + +// Originally the existence of this (unused) class (which has an anonymous mixin +// that matches that of `State`) caused an error in the VM's mixin +// deduplication code. This was due to the inferred type for `var x = a ?? b` +// was the anonymous mixin application that got removed during deduplication. +// +// See https://github.com/flutter/flutter/issues/55345 +class SomeClass with Diagnosticable {} + +class State with Diagnosticable {} + +class StateA extends State {} + +class StateB extends State {} + +StateA? a = StateA(); +StateB b = StateB(); + +foo(T x) { + print(T); +} + +main() { + var x = a ?? b; + foo(x); +} diff --git a/pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline.expect new file mode 100644 index 00000000000..098847f363d --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline.expect @@ -0,0 +1,14 @@ +class Diagnosticable {} + +class SomeClass with Diagnosticable {} + +class State with Diagnosticable {} + +class StateA extends State {} + +class StateB extends State {} + +StateA? a = StateA(); +StateB b = StateB(); +foo(T x) {} +main() {} diff --git a/pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..af624a83cd1 --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.textual_outline_modelled.expect @@ -0,0 +1,15 @@ +StateA? a = StateA(); +StateB b = StateB(); + +class Diagnosticable {} + +class SomeClass with Diagnosticable {} + +class State with Diagnosticable {} + +class StateA extends State {} + +class StateB extends State {} + +foo(T x) {} +main() {} diff --git a/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.expect b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.expect new file mode 100644 index 00000000000..2ded7f4171a --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.expect @@ -0,0 +1,48 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class Diagnosticable extends core::Object { + synthetic constructor •() → self::Diagnosticable + : super core::Object::•() + ; +} +abstract class _SomeClass&Object&Diagnosticable = core::Object with self::Diagnosticable /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_SomeClass&Object&Diagnosticable + : super core::Object::•() + ; +} +class SomeClass extends self::_SomeClass&Object&Diagnosticable { + synthetic constructor •() → self::SomeClass + : super self::_SomeClass&Object&Diagnosticable::•() + ; +} +abstract class _State&Object&Diagnosticable = core::Object with self::Diagnosticable /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_State&Object&Diagnosticable + : super core::Object::•() + ; +} +class State extends self::_State&Object&Diagnosticable { + synthetic constructor •() → self::State + : super self::_State&Object&Diagnosticable::•() + ; +} +class StateA extends self::State { + synthetic constructor •() → self::StateA + : super self::State::•() + ; +} +class StateB extends self::State { + synthetic constructor •() → self::StateB + : super self::State::•() + ; +} +static field self::StateA? a = new self::StateA::•(); +static field self::StateB b = new self::StateB::•(); +static method foo(self::foo::T% x) → dynamic { + core::print(self::foo::T%); +} +static method main() → dynamic { + self::Diagnosticable x = let final self::StateA? #t1 = self::a in #t1 == null ?{self::Diagnosticable} self::b : #t1{self::StateA}; + self::foo(x); +} diff --git a/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.modular.expect new file mode 100644 index 00000000000..2ded7f4171a --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.modular.expect @@ -0,0 +1,48 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class Diagnosticable extends core::Object { + synthetic constructor •() → self::Diagnosticable + : super core::Object::•() + ; +} +abstract class _SomeClass&Object&Diagnosticable = core::Object with self::Diagnosticable /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_SomeClass&Object&Diagnosticable + : super core::Object::•() + ; +} +class SomeClass extends self::_SomeClass&Object&Diagnosticable { + synthetic constructor •() → self::SomeClass + : super self::_SomeClass&Object&Diagnosticable::•() + ; +} +abstract class _State&Object&Diagnosticable = core::Object with self::Diagnosticable /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_State&Object&Diagnosticable + : super core::Object::•() + ; +} +class State extends self::_State&Object&Diagnosticable { + synthetic constructor •() → self::State + : super self::_State&Object&Diagnosticable::•() + ; +} +class StateA extends self::State { + synthetic constructor •() → self::StateA + : super self::State::•() + ; +} +class StateB extends self::State { + synthetic constructor •() → self::StateB + : super self::State::•() + ; +} +static field self::StateA? a = new self::StateA::•(); +static field self::StateB b = new self::StateB::•(); +static method foo(self::foo::T% x) → dynamic { + core::print(self::foo::T%); +} +static method main() → dynamic { + self::Diagnosticable x = let final self::StateA? #t1 = self::a in #t1 == null ?{self::Diagnosticable} self::b : #t1{self::StateA}; + self::foo(x); +} diff --git a/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.outline.expect new file mode 100644 index 00000000000..86ec65e72cc --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.outline.expect @@ -0,0 +1,40 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class Diagnosticable extends core::Object { + synthetic constructor •() → self::Diagnosticable + ; +} +abstract class _SomeClass&Object&Diagnosticable = core::Object with self::Diagnosticable /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_SomeClass&Object&Diagnosticable + : super core::Object::•() + ; +} +class SomeClass extends self::_SomeClass&Object&Diagnosticable { + synthetic constructor •() → self::SomeClass + ; +} +abstract class _State&Object&Diagnosticable = core::Object with self::Diagnosticable /*isAnonymousMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_State&Object&Diagnosticable + : super core::Object::•() + ; +} +class State extends self::_State&Object&Diagnosticable { + synthetic constructor •() → self::State + ; +} +class StateA extends self::State { + synthetic constructor •() → self::StateA + ; +} +class StateB extends self::State { + synthetic constructor •() → self::StateB + ; +} +static field self::StateA? a; +static field self::StateB b; +static method foo(self::foo::T% x) → dynamic + ; +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.transformed.expect new file mode 100644 index 00000000000..30ac36fa88b --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_application_lub_2.dart.weak.transformed.expect @@ -0,0 +1,48 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class Diagnosticable extends core::Object { + synthetic constructor •() → self::Diagnosticable + : super core::Object::•() + ; +} +abstract class _SomeClass&Object&Diagnosticable extends core::Object implements self::Diagnosticable /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_SomeClass&Object&Diagnosticable + : super core::Object::•() + ; +} +class SomeClass extends self::_SomeClass&Object&Diagnosticable { + synthetic constructor •() → self::SomeClass + : super self::_SomeClass&Object&Diagnosticable::•() + ; +} +abstract class _State&Object&Diagnosticable extends core::Object implements self::Diagnosticable /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { + const synthetic constructor •() → self::_State&Object&Diagnosticable + : super core::Object::•() + ; +} +class State extends self::_State&Object&Diagnosticable { + synthetic constructor •() → self::State + : super self::_State&Object&Diagnosticable::•() + ; +} +class StateA extends self::State { + synthetic constructor •() → self::StateA + : super self::State::•() + ; +} +class StateB extends self::State { + synthetic constructor •() → self::StateB + : super self::State::•() + ; +} +static field self::StateA? a = new self::StateA::•(); +static field self::StateB b = new self::StateB::•(); +static method foo(self::foo::T% x) → dynamic { + core::print(self::foo::T%); +} +static method main() → dynamic { + self::Diagnosticable x = let final self::StateA? #t1 = self::a in #t1 == null ?{self::Diagnosticable} self::b : #t1{self::StateA}; + self::foo(x); +} diff --git a/pkg/front_end/testcases/general/mixin_application_override.dart b/pkg/front_end/testcases/general/mixin_application_override.dart index adfdcabef69..30b4f194b22 100644 --- a/pkg/front_end/testcases/general/mixin_application_override.dart +++ b/pkg/front_end/testcases/general/mixin_application_override.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // Test error messages for invalid override in a mixin application. class S { diff --git a/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline.expect index 0e11e73f81f..ee4aef81023 100644 --- a/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class S { foo([x]) {} } diff --git a/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline_modelled.expect index 7875500cf2e..6187ae6dfb8 100644 --- a/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_application_override.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A0 = S with M; class A0X = S with M, MX; class A1 = S with M1, M; diff --git a/pkg/front_end/testcases/general/mixin_application_override.dart.weak.expect b/pkg/front_end/testcases/general/mixin_application_override.dart.weak.expect index 56cdffa0ea0..7d32765181d 100644 --- a/pkg/front_end/testcases/general/mixin_application_override.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_application_override.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -126,283 +126,233 @@ import self as self; import "dart:core" as core; class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; method foo([dynamic x = #C1]) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; method foo() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class MX extends core::Object { - synthetic constructor •() → self::MX* + synthetic constructor •() → self::MX : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class A0 = self::S with self::M { - synthetic constructor •() → self::A0* + synthetic constructor •() → self::A0 : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A1&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1&S&M1* + synthetic constructor •() → self::_A1&S&M1 : super self::S::•() ; } class A1 = self::_A1&S&M1 with self::M { - synthetic constructor •() → self::A1* + synthetic constructor •() → self::A1 : super self::_A1&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A2&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2&S&M1* + synthetic constructor •() → self::_A2&S&M1 : super self::S::•() ; } abstract class _A2&S&M1&M2 = self::_A2&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2&S&M1&M2* + synthetic constructor •() → self::_A2&S&M1&M2 : super self::_A2&S&M1::•() ; } class A2 = self::_A2&S&M1&M2 with self::M { - synthetic constructor •() → self::A2* + synthetic constructor •() → self::A2 : super self::_A2&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A0X&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A0X&S&M* + synthetic constructor •() → self::_A0X&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A0X = self::_A0X&S&M with self::MX { - synthetic constructor •() → self::A0X* + synthetic constructor •() → self::A0X : super self::_A0X&S&M::•() ; } abstract class _A1X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1X&S&M1* + synthetic constructor •() → self::_A1X&S&M1 : super self::S::•() ; } abstract class _A1X&S&M1&M = self::_A1X&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1X&S&M1&M* + synthetic constructor •() → self::_A1X&S&M1&M : super self::_A1X&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A1X = self::_A1X&S&M1&M with self::MX { - synthetic constructor •() → self::A1X* + synthetic constructor •() → self::A1X : super self::_A1X&S&M1&M::•() ; } abstract class _A2X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1* + synthetic constructor •() → self::_A2X&S&M1 : super self::S::•() ; } abstract class _A2X&S&M1&M2 = self::_A2X&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1&M2* + synthetic constructor •() → self::_A2X&S&M1&M2 : super self::_A2X&S&M1::•() ; } abstract class _A2X&S&M1&M2&M = self::_A2X&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1&M2&M* + synthetic constructor •() → self::_A2X&S&M1&M2&M : super self::_A2X&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A2X = self::_A2X&S&M1&M2&M with self::MX { - synthetic constructor •() → self::A2X* + synthetic constructor •() → self::A2X : super self::_A2X&S&M1&M2&M::•() ; } abstract class _B0&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0&S&M* + synthetic constructor •() → self::_B0&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B0 extends self::_B0&S&M { - synthetic constructor •() → self::B0* + synthetic constructor •() → self::B0 : super self::_B0&S&M::•() ; } abstract class _B1&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1&S&M1* + synthetic constructor •() → self::_B1&S&M1 : super self::S::•() ; } abstract class _B1&S&M1&M = self::_B1&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1&S&M1&M* + synthetic constructor •() → self::_B1&S&M1&M : super self::_B1&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B1 extends self::_B1&S&M1&M { - synthetic constructor •() → self::B1* + synthetic constructor •() → self::B1 : super self::_B1&S&M1&M::•() ; } abstract class _B2&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1* + synthetic constructor •() → self::_B2&S&M1 : super self::S::•() ; } abstract class _B2&S&M1&M2 = self::_B2&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1&M2* + synthetic constructor •() → self::_B2&S&M1&M2 : super self::_B2&S&M1::•() ; } abstract class _B2&S&M1&M2&M = self::_B2&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1&M2&M* + synthetic constructor •() → self::_B2&S&M1&M2&M : super self::_B2&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B2 extends self::_B2&S&M1&M2&M { - synthetic constructor •() → self::B2* + synthetic constructor •() → self::B2 : super self::_B2&S&M1&M2&M::•() ; } abstract class _B0X&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0X&S&M* + synthetic constructor •() → self::_B0X&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B0X&S&M&MX = self::_B0X&S&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0X&S&M&MX* + synthetic constructor •() → self::_B0X&S&M&MX : super self::_B0X&S&M::•() ; } class B0X extends self::_B0X&S&M&MX { - synthetic constructor •() → self::B0X* + synthetic constructor •() → self::B0X : super self::_B0X&S&M&MX::•() ; } abstract class _B1X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1* + synthetic constructor •() → self::_B1X&S&M1 : super self::S::•() ; } abstract class _B1X&S&M1&M = self::_B1X&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1&M* + synthetic constructor •() → self::_B1X&S&M1&M : super self::_B1X&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B1X&S&M1&M&MX = self::_B1X&S&M1&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1&M&MX* + synthetic constructor •() → self::_B1X&S&M1&M&MX : super self::_B1X&S&M1&M::•() ; } class B1X extends self::_B1X&S&M1&M&MX { - synthetic constructor •() → self::B1X* + synthetic constructor •() → self::B1X : super self::_B1X&S&M1&M&MX::•() ; } abstract class _B2X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1* + synthetic constructor •() → self::_B2X&S&M1 : super self::S::•() ; } abstract class _B2X&S&M1&M2 = self::_B2X&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2* + synthetic constructor •() → self::_B2X&S&M1&M2 : super self::_B2X&S&M1::•() ; } abstract class _B2X&S&M1&M2&M = self::_B2X&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2&M* + synthetic constructor •() → self::_B2X&S&M1&M2&M : super self::_B2X&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B2X&S&M1&M2&M&MX = self::_B2X&S&M1&M2&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2&M&MX* + synthetic constructor •() → self::_B2X&S&M1&M2&M&MX : super self::_B2X&S&M1&M2&M::•() ; } class B2X extends self::_B2X&S&M1&M2&M&MX { - synthetic constructor •() → self::B2X* + synthetic constructor •() → self::B2X : super self::_B2X&S&M1&M2&M&MX::•() ; } diff --git a/pkg/front_end/testcases/general/mixin_application_override.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_application_override.dart.weak.modular.expect index 56cdffa0ea0..7d32765181d 100644 --- a/pkg/front_end/testcases/general/mixin_application_override.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_application_override.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -126,283 +126,233 @@ import self as self; import "dart:core" as core; class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; method foo([dynamic x = #C1]) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; method foo() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class MX extends core::Object { - synthetic constructor •() → self::MX* + synthetic constructor •() → self::MX : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class A0 = self::S with self::M { - synthetic constructor •() → self::A0* + synthetic constructor •() → self::A0 : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A1&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1&S&M1* + synthetic constructor •() → self::_A1&S&M1 : super self::S::•() ; } class A1 = self::_A1&S&M1 with self::M { - synthetic constructor •() → self::A1* + synthetic constructor •() → self::A1 : super self::_A1&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A2&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2&S&M1* + synthetic constructor •() → self::_A2&S&M1 : super self::S::•() ; } abstract class _A2&S&M1&M2 = self::_A2&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2&S&M1&M2* + synthetic constructor •() → self::_A2&S&M1&M2 : super self::_A2&S&M1::•() ; } class A2 = self::_A2&S&M1&M2 with self::M { - synthetic constructor •() → self::A2* + synthetic constructor •() → self::A2 : super self::_A2&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A0X&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A0X&S&M* + synthetic constructor •() → self::_A0X&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A0X = self::_A0X&S&M with self::MX { - synthetic constructor •() → self::A0X* + synthetic constructor •() → self::A0X : super self::_A0X&S&M::•() ; } abstract class _A1X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1X&S&M1* + synthetic constructor •() → self::_A1X&S&M1 : super self::S::•() ; } abstract class _A1X&S&M1&M = self::_A1X&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1X&S&M1&M* + synthetic constructor •() → self::_A1X&S&M1&M : super self::_A1X&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A1X = self::_A1X&S&M1&M with self::MX { - synthetic constructor •() → self::A1X* + synthetic constructor •() → self::A1X : super self::_A1X&S&M1&M::•() ; } abstract class _A2X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1* + synthetic constructor •() → self::_A2X&S&M1 : super self::S::•() ; } abstract class _A2X&S&M1&M2 = self::_A2X&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1&M2* + synthetic constructor •() → self::_A2X&S&M1&M2 : super self::_A2X&S&M1::•() ; } abstract class _A2X&S&M1&M2&M = self::_A2X&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1&M2&M* + synthetic constructor •() → self::_A2X&S&M1&M2&M : super self::_A2X&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A2X = self::_A2X&S&M1&M2&M with self::MX { - synthetic constructor •() → self::A2X* + synthetic constructor •() → self::A2X : super self::_A2X&S&M1&M2&M::•() ; } abstract class _B0&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0&S&M* + synthetic constructor •() → self::_B0&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B0 extends self::_B0&S&M { - synthetic constructor •() → self::B0* + synthetic constructor •() → self::B0 : super self::_B0&S&M::•() ; } abstract class _B1&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1&S&M1* + synthetic constructor •() → self::_B1&S&M1 : super self::S::•() ; } abstract class _B1&S&M1&M = self::_B1&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1&S&M1&M* + synthetic constructor •() → self::_B1&S&M1&M : super self::_B1&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B1 extends self::_B1&S&M1&M { - synthetic constructor •() → self::B1* + synthetic constructor •() → self::B1 : super self::_B1&S&M1&M::•() ; } abstract class _B2&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1* + synthetic constructor •() → self::_B2&S&M1 : super self::S::•() ; } abstract class _B2&S&M1&M2 = self::_B2&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1&M2* + synthetic constructor •() → self::_B2&S&M1&M2 : super self::_B2&S&M1::•() ; } abstract class _B2&S&M1&M2&M = self::_B2&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1&M2&M* + synthetic constructor •() → self::_B2&S&M1&M2&M : super self::_B2&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B2 extends self::_B2&S&M1&M2&M { - synthetic constructor •() → self::B2* + synthetic constructor •() → self::B2 : super self::_B2&S&M1&M2&M::•() ; } abstract class _B0X&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0X&S&M* + synthetic constructor •() → self::_B0X&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B0X&S&M&MX = self::_B0X&S&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0X&S&M&MX* + synthetic constructor •() → self::_B0X&S&M&MX : super self::_B0X&S&M::•() ; } class B0X extends self::_B0X&S&M&MX { - synthetic constructor •() → self::B0X* + synthetic constructor •() → self::B0X : super self::_B0X&S&M&MX::•() ; } abstract class _B1X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1* + synthetic constructor •() → self::_B1X&S&M1 : super self::S::•() ; } abstract class _B1X&S&M1&M = self::_B1X&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1&M* + synthetic constructor •() → self::_B1X&S&M1&M : super self::_B1X&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B1X&S&M1&M&MX = self::_B1X&S&M1&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1&M&MX* + synthetic constructor •() → self::_B1X&S&M1&M&MX : super self::_B1X&S&M1&M::•() ; } class B1X extends self::_B1X&S&M1&M&MX { - synthetic constructor •() → self::B1X* + synthetic constructor •() → self::B1X : super self::_B1X&S&M1&M&MX::•() ; } abstract class _B2X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1* + synthetic constructor •() → self::_B2X&S&M1 : super self::S::•() ; } abstract class _B2X&S&M1&M2 = self::_B2X&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2* + synthetic constructor •() → self::_B2X&S&M1&M2 : super self::_B2X&S&M1::•() ; } abstract class _B2X&S&M1&M2&M = self::_B2X&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2&M* + synthetic constructor •() → self::_B2X&S&M1&M2&M : super self::_B2X&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B2X&S&M1&M2&M&MX = self::_B2X&S&M1&M2&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2&M&MX* + synthetic constructor •() → self::_B2X&S&M1&M2&M&MX : super self::_B2X&S&M1&M2&M::•() ; } class B2X extends self::_B2X&S&M1&M2&M&MX { - synthetic constructor •() → self::B2X* + synthetic constructor •() → self::B2X : super self::_B2X&S&M1&M2&M&MX::•() ; } diff --git a/pkg/front_end/testcases/general/mixin_application_override.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_application_override.dart.weak.outline.expect index db60ecb46d5..a0a1070f182 100644 --- a/pkg/front_end/testcases/general/mixin_application_override.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_application_override.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -126,275 +126,225 @@ import self as self; import "dart:core" as core; class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S ; method foo([dynamic x]) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M ; method foo() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class MX extends core::Object { - synthetic constructor •() → self::MX* + synthetic constructor •() → self::MX ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class A0 = self::S with self::M { - synthetic constructor •() → self::A0* + synthetic constructor •() → self::A0 : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A1&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1&S&M1* + synthetic constructor •() → self::_A1&S&M1 : super self::S::•() ; } class A1 = self::_A1&S&M1 with self::M { - synthetic constructor •() → self::A1* + synthetic constructor •() → self::A1 : super self::_A1&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A2&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2&S&M1* + synthetic constructor •() → self::_A2&S&M1 : super self::S::•() ; } abstract class _A2&S&M1&M2 = self::_A2&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2&S&M1&M2* + synthetic constructor •() → self::_A2&S&M1&M2 : super self::_A2&S&M1::•() ; } class A2 = self::_A2&S&M1&M2 with self::M { - synthetic constructor •() → self::A2* + synthetic constructor •() → self::A2 : super self::_A2&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _A0X&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A0X&S&M* + synthetic constructor •() → self::_A0X&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A0X = self::_A0X&S&M with self::MX { - synthetic constructor •() → self::A0X* + synthetic constructor •() → self::A0X : super self::_A0X&S&M::•() ; } abstract class _A1X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1X&S&M1* + synthetic constructor •() → self::_A1X&S&M1 : super self::S::•() ; } abstract class _A1X&S&M1&M = self::_A1X&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A1X&S&M1&M* + synthetic constructor •() → self::_A1X&S&M1&M : super self::_A1X&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A1X = self::_A1X&S&M1&M with self::MX { - synthetic constructor •() → self::A1X* + synthetic constructor •() → self::A1X : super self::_A1X&S&M1&M::•() ; } abstract class _A2X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1* + synthetic constructor •() → self::_A2X&S&M1 : super self::S::•() ; } abstract class _A2X&S&M1&M2 = self::_A2X&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1&M2* + synthetic constructor •() → self::_A2X&S&M1&M2 : super self::_A2X&S&M1::•() ; } abstract class _A2X&S&M1&M2&M = self::_A2X&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A2X&S&M1&M2&M* + synthetic constructor •() → self::_A2X&S&M1&M2&M : super self::_A2X&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class A2X = self::_A2X&S&M1&M2&M with self::MX { - synthetic constructor •() → self::A2X* + synthetic constructor •() → self::A2X : super self::_A2X&S&M1&M2&M::•() ; } abstract class _B0&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0&S&M* + synthetic constructor •() → self::_B0&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B0 extends self::_B0&S&M { - synthetic constructor •() → self::B0* + synthetic constructor •() → self::B0 ; } abstract class _B1&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1&S&M1* + synthetic constructor •() → self::_B1&S&M1 : super self::S::•() ; } abstract class _B1&S&M1&M = self::_B1&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1&S&M1&M* + synthetic constructor •() → self::_B1&S&M1&M : super self::_B1&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B1 extends self::_B1&S&M1&M { - synthetic constructor •() → self::B1* + synthetic constructor •() → self::B1 ; } abstract class _B2&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1* + synthetic constructor •() → self::_B2&S&M1 : super self::S::•() ; } abstract class _B2&S&M1&M2 = self::_B2&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1&M2* + synthetic constructor •() → self::_B2&S&M1&M2 : super self::_B2&S&M1::•() ; } abstract class _B2&S&M1&M2&M = self::_B2&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2&S&M1&M2&M* + synthetic constructor •() → self::_B2&S&M1&M2&M : super self::_B2&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } class B2 extends self::_B2&S&M1&M2&M { - synthetic constructor •() → self::B2* + synthetic constructor •() → self::B2 ; } abstract class _B0X&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0X&S&M* + synthetic constructor •() → self::_B0X&S&M : super self::S::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B0X&S&M&MX = self::_B0X&S&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B0X&S&M&MX* + synthetic constructor •() → self::_B0X&S&M&MX : super self::_B0X&S&M::•() ; } class B0X extends self::_B0X&S&M&MX { - synthetic constructor •() → self::B0X* + synthetic constructor •() → self::B0X ; } abstract class _B1X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1* + synthetic constructor •() → self::_B1X&S&M1 : super self::S::•() ; } abstract class _B1X&S&M1&M = self::_B1X&S&M1 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1&M* + synthetic constructor •() → self::_B1X&S&M1&M : super self::_B1X&S&M1::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B1X&S&M1&M&MX = self::_B1X&S&M1&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B1X&S&M1&M&MX* + synthetic constructor •() → self::_B1X&S&M1&M&MX : super self::_B1X&S&M1&M::•() ; } class B1X extends self::_B1X&S&M1&M&MX { - synthetic constructor •() → self::B1X* + synthetic constructor •() → self::B1X ; } abstract class _B2X&S&M1 = self::S with self::M1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1* + synthetic constructor •() → self::_B2X&S&M1 : super self::S::•() ; } abstract class _B2X&S&M1&M2 = self::_B2X&S&M1 with self::M2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2* + synthetic constructor •() → self::_B2X&S&M1&M2 : super self::_B2X&S&M1::•() ; } abstract class _B2X&S&M1&M2&M = self::_B2X&S&M1&M2 with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2&M* + synthetic constructor •() → self::_B2X&S&M1&M2&M : super self::_B2X&S&M1&M2::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); } abstract class _B2X&S&M1&M2&M&MX = self::_B2X&S&M1&M2&M with self::MX /*isAnonymousMixin*/ { - synthetic constructor •() → self::_B2X&S&M1&M2&M&MX* + synthetic constructor •() → self::_B2X&S&M1&M2&M&MX : super self::_B2X&S&M1&M2&M::•() ; } class B2X extends self::_B2X&S&M1&M2&M&MX { - synthetic constructor •() → self::B2X* + synthetic constructor •() → self::B2X ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/mixin_conflicts.dart b/pkg/front_end/testcases/general/mixin_conflicts.dart index 70cf2030d90..6afebe0db85 100644 --- a/pkg/front_end/testcases/general/mixin_conflicts.dart +++ b/pkg/front_end/testcases/general/mixin_conflicts.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // This class has no problems. class M { foo() {} diff --git a/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline.expect index 2819465f986..5f79e28824f 100644 --- a/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class M { foo() {} } diff --git a/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline_modelled.expect index 96f1a8762b1..b2ad75b20b1 100644 --- a/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_conflicts.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class C3 extends Object with M2 {} abstract class M2 implements M { diff --git a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.expect b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.expect index 94fa4c4022b..2171271aa5b 100644 --- a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -34,151 +34,71 @@ import self as self; import "dart:core" as core; class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; method foo() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N = core::Object with self::M /*hasConstConstructor*/ { - const synthetic constructor •() → self::N* + const synthetic constructor •() → self::N : super core::Object::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&N = core::Object with self::N /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&N* + const synthetic constructor •() → self::_C&Object&N : super core::Object::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends self::_C&Object&N { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&N::•() ; } abstract class M2 extends core::Object implements self::M { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; method bar() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N2 = core::Object with self::M2 /*hasConstConstructor*/ { - const synthetic constructor •() → self::N2* + const synthetic constructor •() → self::N2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N3 = core::Object with self::M2 /*hasConstConstructor*/ { - const synthetic constructor •() → self::N3* + const synthetic constructor •() → self::N3 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C2&Object&M2 = core::Object with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C2&Object&M2* + const synthetic constructor •() → self::_C2&Object&M2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C2 extends self::_C2&Object&M2 { - synthetic constructor •() → self::C2* + synthetic constructor •() → self::C2 : super self::_C2&Object&M2::•() ; } abstract class _C3&Object&M2 = core::Object with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C3&Object&M2* + const synthetic constructor •() → self::_C3&Object&M2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class C3 extends self::_C3&Object&M2 { - synthetic constructor •() → self::C3* + synthetic constructor •() → self::C3 : super self::_C3&Object&M2::•() ; } diff --git a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.modular.expect index 94fa4c4022b..2171271aa5b 100644 --- a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -34,151 +34,71 @@ import self as self; import "dart:core" as core; class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; method foo() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N = core::Object with self::M /*hasConstConstructor*/ { - const synthetic constructor •() → self::N* + const synthetic constructor •() → self::N : super core::Object::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&N = core::Object with self::N /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&N* + const synthetic constructor •() → self::_C&Object&N : super core::Object::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends self::_C&Object&N { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&N::•() ; } abstract class M2 extends core::Object implements self::M { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; method bar() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N2 = core::Object with self::M2 /*hasConstConstructor*/ { - const synthetic constructor •() → self::N2* + const synthetic constructor •() → self::N2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N3 = core::Object with self::M2 /*hasConstConstructor*/ { - const synthetic constructor •() → self::N3* + const synthetic constructor •() → self::N3 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C2&Object&M2 = core::Object with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C2&Object&M2* + const synthetic constructor •() → self::_C2&Object&M2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C2 extends self::_C2&Object&M2 { - synthetic constructor •() → self::C2* + synthetic constructor •() → self::C2 : super self::_C2&Object&M2::•() ; } abstract class _C3&Object&M2 = core::Object with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C3&Object&M2* + const synthetic constructor •() → self::_C3&Object&M2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class C3 extends self::_C3&Object&M2 { - synthetic constructor •() → self::C3* + synthetic constructor •() → self::C3 : super self::_C3&Object&M2::•() ; } diff --git a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.outline.expect index ffe0ebf85f9..57ca6116ca3 100644 --- a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -34,149 +34,69 @@ import self as self; import "dart:core" as core; class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M ; method foo() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N = core::Object with self::M /*hasConstConstructor*/ { - const synthetic constructor •() → self::N* + const synthetic constructor •() → self::N : super core::Object::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&N = core::Object with self::N /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&N* + const synthetic constructor •() → self::_C&Object&N : super core::Object::•() ; mixin-super-stub method foo() → dynamic return super.{self::M::foo}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends self::_C&Object&N { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; } abstract class M2 extends core::Object implements self::M { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 ; method bar() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N2 = core::Object with self::M2 /*hasConstConstructor*/ { - const synthetic constructor •() → self::N2* + const synthetic constructor •() → self::N2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N3 = core::Object with self::M2 /*hasConstConstructor*/ { - const synthetic constructor •() → self::N3* + const synthetic constructor •() → self::N3 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C2&Object&M2 = core::Object with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C2&Object&M2* + const synthetic constructor •() → self::_C2&Object&M2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C2 extends self::_C2&Object&M2 { - synthetic constructor •() → self::C2* + synthetic constructor •() → self::C2 ; } abstract class _C3&Object&M2 = core::Object with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C3&Object&M2* + const synthetic constructor •() → self::_C3&Object&M2 : super core::Object::•() ; mixin-super-stub method bar() → dynamic return super.{self::M2::bar}(); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class C3 extends self::_C3&Object&M2 { - synthetic constructor •() → self::C3* + synthetic constructor •() → self::C3 ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.transformed.expect index fb7371cd68d..badca397770 100644 --- a/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_conflicts.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -34,145 +34,65 @@ import self as self; import "dart:core" as core; class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; method foo() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N extends core::Object implements self::M /*isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::N* + const synthetic constructor •() → self::N : super core::Object::•() ; method foo() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&N extends core::Object implements self::N /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&N* + const synthetic constructor •() → self::_C&Object&N : super core::Object::•() ; method foo() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends self::_C&Object&N { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&N::•() ; } abstract class M2 extends core::Object implements self::M { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; method bar() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class N2 extends core::Object implements self::M2 /*isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::N2* + const synthetic constructor •() → self::N2 : super core::Object::•() ; method bar() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N3 extends core::Object implements self::M2 /*isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::N3* + const synthetic constructor •() → self::N3 : super core::Object::•() ; method bar() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C2&Object&M2 extends core::Object implements self::M2 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C2&Object&M2* + const synthetic constructor •() → self::_C2&Object&M2 : super core::Object::•() ; method bar() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C2 extends self::_C2&Object&M2 { - synthetic constructor •() → self::C2* + synthetic constructor •() → self::C2 : super self::_C2&Object&M2::•() ; } abstract class _C3&Object&M2 extends core::Object implements self::M2 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C3&Object&M2* + const synthetic constructor •() → self::_C3&Object&M2 : super core::Object::•() ; method bar() → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class C3 extends self::_C3&Object&M2 { - synthetic constructor •() → self::C3* + synthetic constructor •() → self::C3 : super self::_C3&Object&M2::•() ; } diff --git a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart index 2e9efabe76e..011cb343ea8 100644 --- a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart +++ b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + import "package:expect/expect.dart"; class C { diff --git a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline.expect index 86ae68a0cda..d671b85f987 100644 --- a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import "package:expect/expect.dart"; class C { diff --git a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline_modelled.expect index e69ebaf70f6..452b24b40d1 100644 --- a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import "package:expect/expect.dart"; class C { diff --git a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.expect b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.expect index 813bde31ca2..beed00c4c44 100644 --- a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -12,63 +12,43 @@ import "package:expect/expect.dart" as exp; import "package:expect/expect.dart"; -class C extends core::Object { - field core::String* trace; - constructor •({dynamic a = #C1, dynamic b = #C2}) → self::C* +class C extends core::Object { + field core::String trace; + constructor •({dynamic a = #C1, dynamic b = #C2}) → self::C : self::C::trace = "a: ${a}, b: ${b}", super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class D = self::C with self::M { - synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::D* +class D = self::C with self::M { + synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::D : super self::C::•(a: a, b: b) ; } class E extends self::D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::D::•() ; } -abstract class _F&C&M = self::C with self::M /*isAnonymousMixin*/ { - synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::_F&C&M* +abstract class _F&C&M = self::C with self::M /*isAnonymousMixin*/ { + synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::_F&C&M : super self::C::•(a: a, b: b) ; } class F extends self::_F&C&M { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super self::_F&C&M::•() ; } static method main() → dynamic { - exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: String", new self::D::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: String", new self::E::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: int", new self::F::•().{self::C::trace}{core::String*}); + exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: String", new self::D::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: String", new self::E::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: int", new self::F::•().{self::C::trace}{core::String}); } constants { diff --git a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.modular.expect index 813bde31ca2..beed00c4c44 100644 --- a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -12,63 +12,43 @@ import "package:expect/expect.dart" as exp; import "package:expect/expect.dart"; -class C extends core::Object { - field core::String* trace; - constructor •({dynamic a = #C1, dynamic b = #C2}) → self::C* +class C extends core::Object { + field core::String trace; + constructor •({dynamic a = #C1, dynamic b = #C2}) → self::C : self::C::trace = "a: ${a}, b: ${b}", super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class D = self::C with self::M { - synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::D* +class D = self::C with self::M { + synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::D : super self::C::•(a: a, b: b) ; } class E extends self::D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::D::•() ; } -abstract class _F&C&M = self::C with self::M /*isAnonymousMixin*/ { - synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::_F&C&M* +abstract class _F&C&M = self::C with self::M /*isAnonymousMixin*/ { + synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::_F&C&M : super self::C::•(a: a, b: b) ; } class F extends self::_F&C&M { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super self::_F&C&M::•() ; } static method main() → dynamic { - exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: String", new self::D::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: String", new self::E::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: int", new self::F::•().{self::C::trace}{core::String*}); + exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: String", new self::D::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: String", new self::E::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: int", new self::F::•().{self::C::trace}{core::String}); } constants { diff --git a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.outline.expect index 42444730079..d5065f7be56 100644 --- a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -11,51 +11,31 @@ import "dart:core" as core; import "package:expect/expect.dart"; -class C extends core::Object { - field core::String* trace; - constructor •({dynamic a = 0, dynamic b = invalid-type}) → self::C* +class C extends core::Object { + field core::String trace; + constructor •({dynamic a = 0, dynamic b = invalid-type}) → self::C ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class D = self::C with self::M { - synthetic constructor •({dynamic a = 0, dynamic b = invalid-type}) → self::D* +class D = self::C with self::M { + synthetic constructor •({dynamic a = 0, dynamic b = invalid-type}) → self::D : super self::C::•(a: a, b: b) ; } class E extends self::D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E ; } -abstract class _F&C&M = self::C with self::M /*isAnonymousMixin*/ { - synthetic constructor •({dynamic a = 0, dynamic b = invalid-type}) → self::_F&C&M* +abstract class _F&C&M = self::C with self::M /*isAnonymousMixin*/ { + synthetic constructor •({dynamic a = 0, dynamic b = invalid-type}) → self::_F&C&M : super self::C::•(a: a, b: b) ; } class F extends self::_F&C&M { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F ; } static method main() → dynamic diff --git a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.transformed.expect index ee8735c4783..98df2eba01b 100644 --- a/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_constructors_with_default_values.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -12,63 +12,43 @@ import "package:expect/expect.dart" as exp; import "package:expect/expect.dart"; -class C extends core::Object { - field core::String* trace; - constructor •({dynamic a = #C1, dynamic b = #C2}) → self::C* +class C extends core::Object { + field core::String trace; + constructor •({dynamic a = #C1, dynamic b = #C2}) → self::C : self::C::trace = "a: ${a}, b: ${b}", super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -class D extends self::C implements self::M /*isEliminatedMixin*/ { - synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::D* +class D extends self::C implements self::M /*isEliminatedMixin*/ { + synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::D : super self::C::•(a: a, b: b) ; } class E extends self::D { - synthetic constructor •() → self::E* + synthetic constructor •() → self::E : super self::D::•() ; } -abstract class _F&C&M extends self::C implements self::M /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::_F&C&M* +abstract class _F&C&M extends self::C implements self::M /*isAnonymousMixin,isEliminatedMixin*/ { + synthetic constructor •({dynamic a = #C1, dynamic b = #C2}) → self::_F&C&M : super self::C::•(a: a, b: b) ; } class F extends self::_F&C&M { - synthetic constructor •() → self::F* + synthetic constructor •() → self::F : super self::_F&C&M::•() ; } static method main() → dynamic { - exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: String", new self::D::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: String", new self::E::•().{self::C::trace}{core::String*}); - exp::Expect::stringEquals("a: 0, b: int", new self::F::•().{self::C::trace}{core::String*}); + exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: T", new self::C::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: String", new self::D::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: String", new self::E::•().{self::C::trace}{core::String}); + exp::Expect::stringEquals("a: 0, b: int", new self::F::•().{self::C::trace}{core::String}); } constants { diff --git a/pkg/front_end/testcases/general/mixin_covariant.dart b/pkg/front_end/testcases/general/mixin_covariant.dart index 77b9cdba446..c32fcd5937d 100644 --- a/pkg/front_end/testcases/general/mixin_covariant.dart +++ b/pkg/front_end/testcases/general/mixin_covariant.dart @@ -1,36 +1,36 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // Derived from language_2/covariant_override/tear_off_type_test // If a parameter is directly or indirectly a covariant override, its type in -// the method tear-off should become Object. +// the method tear-off should become Object?. -typedef void TakeInts(int a, int b, int c, int d, int e); -typedef void TakeObjectsAndInts(Object a, int b, Object c, int d, int e); -typedef void TakeObjects(Object a, Object b, Object c, Object d, Object e); +typedef void TakeInts(int? a, int? b, int? c, int? d, int? e); +typedef void TakeObjectsAndInts(Object? a, int? b, Object? c, int? d, int? e); +typedef void TakeObjects(Object? a, Object? b, Object? c, Object? d, Object? e); -typedef void TakeOptionalInts([int a, int b, int c, int d]); -typedef void TakeOptionalObjectsAndInts([Object a, int b, Object c, int d]); +typedef void TakeOptionalInts([int? a, int? b, int? c, int? d]); +typedef void TakeOptionalObjectsAndInts([Object? a, int? b, Object? c, int? d]); -typedef void TakeNamedInts({int a, int b, int c, int d}); -typedef void TakeNamedObjectsAndInts({Object a, int b, Object c, int d}); +typedef void TakeNamedInts({int? a, int? b, int? c, int? d}); +typedef void TakeNamedObjectsAndInts({Object? a, int? b, Object? c, int? d}); class M1 { - method(covariant int a, int b) {} + method(covariant int? a, int? b) {} } class M2 { - method(int a, covariant int b) {} + method(int? a, covariant int? b) {} } class C extends Object with M1, M2 {} class Direct { - void positional(covariant int a, int b, covariant int c, int d, int e) {} - void optional([covariant int a, int b, covariant int c, int d]) {} - void named({covariant int a, int b, covariant int c, int d}) {} + void positional(covariant int? a, int? b, covariant int? c, int? d, int? e) {} + void optional([covariant int? a, int? b, covariant int? c, int? d]) {} + void named({covariant int? a, int? b, covariant int? c, int? d}) {} } class Inherited extends Direct {} @@ -38,59 +38,59 @@ class Inherited extends Direct {} // --- class Override1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Override2 extends Override1 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Override3 extends Override2 { - void method(int a, int b, int c, int d, int e) {} + void method(int? a, int? b, int? c, int? d, int? e) {} } // --- abstract class Implement1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Implement2 { - void method(int a, covariant int b, int c, int d, int e) {} + void method(int? a, covariant int? b, int? c, int? d, int? e) {} } class Implement3 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Implement4 implements Implement3 { - void method(int a, int b, int c, covariant int d, int e) {} + void method(int? a, int? b, int? c, covariant int? d, int? e) {} } class Implement5 implements Implement1, Implement2, Implement4 { - void method(int a, int b, int c, int d, covariant int e) {} + void method(int? a, int? b, int? c, int? d, covariant int? e) {} } // --- class Interface1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Interface2 { - void method(int a, covariant int b, int c, int d, int e) {} + void method(int? a, covariant int? b, int? c, int? d, int? e) {} } class Mixin1 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Mixin2 { - void method(int a, int b, int c, covariant int d, int e) {} + void method(int? a, int? b, int? c, covariant int? d, int? e) {} } class Superclass { - void method(int a, int b, int c, int d, covariant int e) {} + void method(int? a, int? b, int? c, int? d, covariant int? e) {} } class Mixed extends Superclass diff --git a/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline.expect index 5f9d48cd61a..1dbfd18de89 100644 --- a/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline.expect @@ -1,80 +1,79 @@ -// @dart = 2.9 -typedef void TakeInts(int a, int b, int c, int d, int e); -typedef void TakeObjectsAndInts(Object a, int b, Object c, int d, int e); -typedef void TakeObjects(Object a, Object b, Object c, Object d, Object e); -typedef void TakeOptionalInts([int a, int b, int c, int d]); -typedef void TakeOptionalObjectsAndInts([Object a, int b, Object c, int d]); -typedef void TakeNamedInts({int a, int b, int c, int d}); -typedef void TakeNamedObjectsAndInts({Object a, int b, Object c, int d}); +typedef void TakeInts(int? a, int? b, int? c, int? d, int? e); +typedef void TakeObjectsAndInts(Object? a, int? b, Object? c, int? d, int? e); +typedef void TakeObjects(Object? a, Object? b, Object? c, Object? d, Object? e); +typedef void TakeOptionalInts([int? a, int? b, int? c, int? d]); +typedef void TakeOptionalObjectsAndInts([Object? a, int? b, Object? c, int? d]); +typedef void TakeNamedInts({int? a, int? b, int? c, int? d}); +typedef void TakeNamedObjectsAndInts({Object? a, int? b, Object? c, int? d}); class M1 { - method(covariant int a, int b) {} + method(covariant int? a, int? b) {} } class M2 { - method(int a, covariant int b) {} + method(int? a, covariant int? b) {} } class C extends Object with M1, M2 {} class Direct { - void positional(covariant int a, int b, covariant int c, int d, int e) {} - void optional([covariant int a, int b, covariant int c, int d]) {} - void named({covariant int a, int b, covariant int c, int d}) {} + void positional(covariant int? a, int? b, covariant int? c, int? d, int? e) {} + void optional([covariant int? a, int? b, covariant int? c, int? d]) {} + void named({covariant int? a, int? b, covariant int? c, int? d}) {} } class Inherited extends Direct {} class Override1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Override2 extends Override1 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Override3 extends Override2 { - void method(int a, int b, int c, int d, int e) {} + void method(int? a, int? b, int? c, int? d, int? e) {} } abstract class Implement1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Implement2 { - void method(int a, covariant int b, int c, int d, int e) {} + void method(int? a, covariant int? b, int? c, int? d, int? e) {} } class Implement3 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Implement4 implements Implement3 { - void method(int a, int b, int c, covariant int d, int e) {} + void method(int? a, int? b, int? c, covariant int? d, int? e) {} } class Implement5 implements Implement1, Implement2, Implement4 { - void method(int a, int b, int c, int d, covariant int e) {} + void method(int? a, int? b, int? c, int? d, covariant int? e) {} } class Interface1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Interface2 { - void method(int a, covariant int b, int c, int d, int e) {} + void method(int? a, covariant int? b, int? c, int? d, int? e) {} } class Mixin1 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Mixin2 { - void method(int a, int b, int c, covariant int d, int e) {} + void method(int? a, int? b, int? c, covariant int? d, int? e) {} } class Superclass { - void method(int a, int b, int c, int d, covariant int e) {} + void method(int? a, int? b, int? c, int? d, covariant int? e) {} } class Mixed extends Superclass diff --git a/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline_modelled.expect index bd45a1dfc18..c0534c16a3d 100644 --- a/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_covariant.dart.textual_outline_modelled.expect @@ -1,48 +1,47 @@ -// @dart = 2.9 abstract class Implement1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class C extends Object with M1, M2 {} class Direct { - void named({covariant int a, int b, covariant int c, int d}) {} - void optional([covariant int a, int b, covariant int c, int d]) {} - void positional(covariant int a, int b, covariant int c, int d, int e) {} + void named({covariant int? a, int? b, covariant int? c, int? d}) {} + void optional([covariant int? a, int? b, covariant int? c, int? d]) {} + void positional(covariant int? a, int? b, covariant int? c, int? d, int? e) {} } class Implement2 { - void method(int a, covariant int b, int c, int d, int e) {} + void method(int? a, covariant int? b, int? c, int? d, int? e) {} } class Implement3 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Implement4 implements Implement3 { - void method(int a, int b, int c, covariant int d, int e) {} + void method(int? a, int? b, int? c, covariant int? d, int? e) {} } class Implement5 implements Implement1, Implement2, Implement4 { - void method(int a, int b, int c, int d, covariant int e) {} + void method(int? a, int? b, int? c, int? d, covariant int? e) {} } class Inherited extends Direct {} class Interface1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Interface2 { - void method(int a, covariant int b, int c, int d, int e) {} + void method(int? a, covariant int? b, int? c, int? d, int? e) {} } class M1 { - method(covariant int a, int b) {} + method(covariant int? a, int? b) {} } class M2 { - method(int a, covariant int b) {} + method(int? a, covariant int? b) {} } class Mixed extends Superclass @@ -50,36 +49,36 @@ class Mixed extends Superclass implements Interface1, Interface2 {} class Mixin1 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Mixin2 { - void method(int a, int b, int c, covariant int d, int e) {} + void method(int? a, int? b, int? c, covariant int? d, int? e) {} } class Override1 { - void method(covariant int a, int b, int c, int d, int e) {} + void method(covariant int? a, int? b, int? c, int? d, int? e) {} } class Override2 extends Override1 { - void method(int a, int b, covariant int c, int d, int e) {} + void method(int? a, int? b, covariant int? c, int? d, int? e) {} } class Override3 extends Override2 { - void method(int a, int b, int c, int d, int e) {} + void method(int? a, int? b, int? c, int? d, int? e) {} } class Superclass { - void method(int a, int b, int c, int d, covariant int e) {} + void method(int? a, int? b, int? c, int? d, covariant int? e) {} } -typedef void TakeInts(int a, int b, int c, int d, int e); -typedef void TakeNamedInts({int a, int b, int c, int d}); -typedef void TakeNamedObjectsAndInts({Object a, int b, Object c, int d}); -typedef void TakeObjects(Object a, Object b, Object c, Object d, Object e); -typedef void TakeObjectsAndInts(Object a, int b, Object c, int d, int e); -typedef void TakeOptionalInts([int a, int b, int c, int d]); -typedef void TakeOptionalObjectsAndInts([Object a, int b, Object c, int d]); +typedef void TakeInts(int? a, int? b, int? c, int? d, int? e); +typedef void TakeNamedInts({int? a, int? b, int? c, int? d}); +typedef void TakeNamedObjectsAndInts({Object? a, int? b, Object? c, int? d}); +typedef void TakeObjects(Object? a, Object? b, Object? c, Object? d, Object? e); +typedef void TakeObjectsAndInts(Object? a, int? b, Object? c, int? d, int? e); +typedef void TakeOptionalInts([int? a, int? b, int? c, int? d]); +typedef void TakeOptionalObjectsAndInts([Object? a, int? b, Object? c, int? d]); void isTrue(bool value) {} void main() {} void testDirect() {} diff --git a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.expect b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.expect index 503a71ecc1b..a1fcbe0c342 100644 --- a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.expect @@ -1,305 +1,155 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef TakeInts = (core::int*, core::int*, core::int*, core::int*, core::int*) →* void; -typedef TakeObjectsAndInts = (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void; -typedef TakeObjects = (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void; -typedef TakeOptionalInts = ([core::int*, core::int*, core::int*, core::int*]) →* void; -typedef TakeOptionalObjectsAndInts = ([core::Object*, core::int*, core::Object*, core::int*]) →* void; -typedef TakeNamedInts = ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void; -typedef TakeNamedObjectsAndInts = ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void; +typedef TakeInts = (core::int?, core::int?, core::int?, core::int?, core::int?) → void; +typedef TakeObjectsAndInts = (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void; +typedef TakeObjects = (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void; +typedef TakeOptionalInts = ([core::int?, core::int?, core::int?, core::int?]) → void; +typedef TakeOptionalObjectsAndInts = ([core::Object?, core::int?, core::Object?, core::int?]) → void; +typedef TakeNamedInts = ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void; +typedef TakeNamedObjectsAndInts = ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void; class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b) → dynamic {} } class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b) → dynamic {} } abstract class _C&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; - mixin-super-stub method method(covariant-by-declaration core::int* a, core::int* b) → dynamic + mixin-super-stub method method(covariant-by-declaration core::int? a, core::int? b) → dynamic return super.{self::M1::method}(a, b); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1&M2 = self::_C&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; - forwarding-stub method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b) → dynamic + forwarding-stub method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b) → dynamic return super.{self::M2::method}(a, b); } class C extends self::_C&Object&M1&M2 { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&M1&M2::•() ; } class Direct extends core::Object { - synthetic constructor •() → self::Direct* + synthetic constructor •() → self::Direct : super core::Object::•() ; - method positional(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - method optional([covariant-by-declaration core::int* a = #C1, core::int* b = #C1, covariant-by-declaration core::int* c = #C1, core::int* d = #C1]) → void {} - method named({covariant-by-declaration core::int* a = #C1, core::int* b = #C1, covariant-by-declaration core::int* c = #C1, core::int* d = #C1}) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method positional(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} + method optional([covariant-by-declaration core::int? a = #C1, core::int? b = #C1, covariant-by-declaration core::int? c = #C1, core::int? d = #C1]) → void {} + method named({covariant-by-declaration core::int? a = #C1, core::int? b = #C1, covariant-by-declaration core::int? c = #C1, core::int? d = #C1}) → void {} } class Inherited extends self::Direct { - synthetic constructor •() → self::Inherited* + synthetic constructor •() → self::Inherited : super self::Direct::•() ; } class Override1 extends core::Object { - synthetic constructor •() → self::Override1* + synthetic constructor •() → self::Override1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Override2 extends self::Override1 { - synthetic constructor •() → self::Override2* + synthetic constructor •() → self::Override2 : super self::Override1::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Override3 extends self::Override2 { - synthetic constructor •() → self::Override3* + synthetic constructor •() → self::Override3 : super self::Override2::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } abstract class Implement1 extends core::Object { - synthetic constructor •() → self::Implement1* + synthetic constructor •() → self::Implement1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Implement2 extends core::Object { - synthetic constructor •() → self::Implement2* + synthetic constructor •() → self::Implement2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Implement3 extends core::Object { - synthetic constructor •() → self::Implement3* + synthetic constructor •() → self::Implement3 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Implement4 extends core::Object implements self::Implement3 { - synthetic constructor •() → self::Implement4* + synthetic constructor •() → self::Implement4 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, core::int? e) → void {} } class Implement5 extends core::Object implements self::Implement1, self::Implement2, self::Implement4 { - synthetic constructor •() → self::Implement5* + synthetic constructor •() → self::Implement5 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void {} } class Interface1 extends core::Object { - synthetic constructor •() → self::Interface1* + synthetic constructor •() → self::Interface1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Mixin1 extends core::Object { - synthetic constructor •() → self::Mixin1* + synthetic constructor •() → self::Mixin1 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Mixin2 extends core::Object { - synthetic constructor •() → self::Mixin2* + synthetic constructor •() → self::Mixin2 : super core::Object::•() ; - method method(core::int* a, core::int* b, core::int* c, covariant-by-declaration core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, core::int? c, covariant-by-declaration core::int? d, core::int? e) → void {} } class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass : super core::Object::•() ; - method method(core::int* a, core::int* b, core::int* c, core::int* d, covariant-by-declaration core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, core::int? c, core::int? d, covariant-by-declaration core::int? e) → void {} } abstract class _Mixed&Superclass&Mixin1 = self::Superclass with self::Mixin1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1 : super self::Superclass::•() ; - forwarding-stub method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin1::method}(a, b, c, d, e); } abstract class _Mixed&Superclass&Mixin1&Mixin2 = self::_Mixed&Superclass&Mixin1 with self::Mixin2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2 : super self::_Mixed&Superclass&Mixin1::•() ; - forwarding-stub method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin2::method}(a, b, c, d, e); } class Mixed extends self::_Mixed&Superclass&Mixin1&Mixin2 implements self::Interface1, self::Interface2 { - synthetic constructor •() → self::Mixed* + synthetic constructor •() → self::Mixed : super self::_Mixed&Superclass&Mixin1&Mixin2::•() ; - forwarding-stub method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin2::method}(a, b, c, d, e); } static method main() → void { @@ -310,46 +160,46 @@ static method main() → void { self::testMixed(); } static method testDirect() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void positional = new self::Direct::•().{self::Direct::positional}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(positional is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(positional is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - ([core::int*, core::int*, core::int*, core::int*]) →* void optional = new self::Direct::•().{self::Direct::optional}{([core::int*, core::int*, core::int*, core::int*]) →* void}; - self::isTrue(optional is ([core::int*, core::int*, core::int*, core::int*]) →* void); - self::isTrue(optional is ([core::Object*, core::int*, core::Object*, core::int*]) →* void); - ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void named = new self::Direct::•().{self::Direct::named}{({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void}; - self::isTrue(named is ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void); - self::isTrue(named is ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void positional = new self::Direct::•().{self::Direct::positional}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(positional is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(positional is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + ([core::int?, core::int?, core::int?, core::int?]) → void optional = new self::Direct::•().{self::Direct::optional}{([core::int?, core::int?, core::int?, core::int?]) → void}; + self::isTrue(optional is{ForNonNullableByDefault} ([core::int?, core::int?, core::int?, core::int?]) → void); + self::isTrue(optional is{ForNonNullableByDefault} ([core::Object?, core::int?, core::Object?, core::int?]) → void); + ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void named = new self::Direct::•().{self::Direct::named}{({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void}; + self::isTrue(named is{ForNonNullableByDefault} ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void); + self::isTrue(named is{ForNonNullableByDefault} ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void); } static method testInherited() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void positional = new self::Inherited::•().{self::Direct::positional}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(positional is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(positional is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - ([core::int*, core::int*, core::int*, core::int*]) →* void optional = new self::Inherited::•().{self::Direct::optional}{([core::int*, core::int*, core::int*, core::int*]) →* void}; - self::isTrue(optional is ([core::int*, core::int*, core::int*, core::int*]) →* void); - self::isTrue(optional is ([core::Object*, core::int*, core::Object*, core::int*]) →* void); - ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void named = new self::Inherited::•().{self::Direct::named}{({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void}; - self::isTrue(named is ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void); - self::isTrue(named is ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void positional = new self::Inherited::•().{self::Direct::positional}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(positional is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(positional is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + ([core::int?, core::int?, core::int?, core::int?]) → void optional = new self::Inherited::•().{self::Direct::optional}{([core::int?, core::int?, core::int?, core::int?]) → void}; + self::isTrue(optional is{ForNonNullableByDefault} ([core::int?, core::int?, core::int?, core::int?]) → void); + self::isTrue(optional is{ForNonNullableByDefault} ([core::Object?, core::int?, core::Object?, core::int?]) → void); + ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void named = new self::Inherited::•().{self::Direct::named}{({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void}; + self::isTrue(named is{ForNonNullableByDefault} ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void); + self::isTrue(named is{ForNonNullableByDefault} ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void); } static method testOverridden() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method2 = new self::Override2::•().{self::Override2::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method2 is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method2 is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method3 = new self::Override3::•().{self::Override3::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method3 is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method3 is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method2 = new self::Override2::•().{self::Override2::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method2 is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method2 is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method3 = new self::Override3::•().{self::Override3::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method3 is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method3 is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); } static method testImplemented() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method = new self::Implement5::•().{self::Implement5::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method is (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method = new self::Implement5::•().{self::Implement5::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method is{ForNonNullableByDefault} (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void); } static method testMixed() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method = new self::Mixed::•().{self::Mixed::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method is (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method = new self::Mixed::•().{self::Mixed::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method is{ForNonNullableByDefault} (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void); } -static method isTrue(core::bool* value) → void { +static method isTrue(core::bool value) → void { if(!value) throw "Expected true"; } diff --git a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.modular.expect index 503a71ecc1b..a1fcbe0c342 100644 --- a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.modular.expect @@ -1,305 +1,155 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef TakeInts = (core::int*, core::int*, core::int*, core::int*, core::int*) →* void; -typedef TakeObjectsAndInts = (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void; -typedef TakeObjects = (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void; -typedef TakeOptionalInts = ([core::int*, core::int*, core::int*, core::int*]) →* void; -typedef TakeOptionalObjectsAndInts = ([core::Object*, core::int*, core::Object*, core::int*]) →* void; -typedef TakeNamedInts = ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void; -typedef TakeNamedObjectsAndInts = ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void; +typedef TakeInts = (core::int?, core::int?, core::int?, core::int?, core::int?) → void; +typedef TakeObjectsAndInts = (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void; +typedef TakeObjects = (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void; +typedef TakeOptionalInts = ([core::int?, core::int?, core::int?, core::int?]) → void; +typedef TakeOptionalObjectsAndInts = ([core::Object?, core::int?, core::Object?, core::int?]) → void; +typedef TakeNamedInts = ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void; +typedef TakeNamedObjectsAndInts = ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void; class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b) → dynamic {} } class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b) → dynamic {} } abstract class _C&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; - mixin-super-stub method method(covariant-by-declaration core::int* a, core::int* b) → dynamic + mixin-super-stub method method(covariant-by-declaration core::int? a, core::int? b) → dynamic return super.{self::M1::method}(a, b); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1&M2 = self::_C&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; - forwarding-stub method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b) → dynamic + forwarding-stub method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b) → dynamic return super.{self::M2::method}(a, b); } class C extends self::_C&Object&M1&M2 { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&M1&M2::•() ; } class Direct extends core::Object { - synthetic constructor •() → self::Direct* + synthetic constructor •() → self::Direct : super core::Object::•() ; - method positional(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - method optional([covariant-by-declaration core::int* a = #C1, core::int* b = #C1, covariant-by-declaration core::int* c = #C1, core::int* d = #C1]) → void {} - method named({covariant-by-declaration core::int* a = #C1, core::int* b = #C1, covariant-by-declaration core::int* c = #C1, core::int* d = #C1}) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method positional(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} + method optional([covariant-by-declaration core::int? a = #C1, core::int? b = #C1, covariant-by-declaration core::int? c = #C1, core::int? d = #C1]) → void {} + method named({covariant-by-declaration core::int? a = #C1, core::int? b = #C1, covariant-by-declaration core::int? c = #C1, core::int? d = #C1}) → void {} } class Inherited extends self::Direct { - synthetic constructor •() → self::Inherited* + synthetic constructor •() → self::Inherited : super self::Direct::•() ; } class Override1 extends core::Object { - synthetic constructor •() → self::Override1* + synthetic constructor •() → self::Override1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Override2 extends self::Override1 { - synthetic constructor •() → self::Override2* + synthetic constructor •() → self::Override2 : super self::Override1::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Override3 extends self::Override2 { - synthetic constructor •() → self::Override3* + synthetic constructor •() → self::Override3 : super self::Override2::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } abstract class Implement1 extends core::Object { - synthetic constructor •() → self::Implement1* + synthetic constructor •() → self::Implement1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Implement2 extends core::Object { - synthetic constructor •() → self::Implement2* + synthetic constructor •() → self::Implement2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Implement3 extends core::Object { - synthetic constructor •() → self::Implement3* + synthetic constructor •() → self::Implement3 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Implement4 extends core::Object implements self::Implement3 { - synthetic constructor •() → self::Implement4* + synthetic constructor •() → self::Implement4 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, core::int? e) → void {} } class Implement5 extends core::Object implements self::Implement1, self::Implement2, self::Implement4 { - synthetic constructor •() → self::Implement5* + synthetic constructor •() → self::Implement5 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void {} } class Interface1 extends core::Object { - synthetic constructor •() → self::Interface1* + synthetic constructor •() → self::Interface1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Mixin1 extends core::Object { - synthetic constructor •() → self::Mixin1* + synthetic constructor •() → self::Mixin1 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Mixin2 extends core::Object { - synthetic constructor •() → self::Mixin2* + synthetic constructor •() → self::Mixin2 : super core::Object::•() ; - method method(core::int* a, core::int* b, core::int* c, covariant-by-declaration core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, core::int? c, covariant-by-declaration core::int? d, core::int? e) → void {} } class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass : super core::Object::•() ; - method method(core::int* a, core::int* b, core::int* c, core::int* d, covariant-by-declaration core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, core::int? c, core::int? d, covariant-by-declaration core::int? e) → void {} } abstract class _Mixed&Superclass&Mixin1 = self::Superclass with self::Mixin1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1 : super self::Superclass::•() ; - forwarding-stub method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin1::method}(a, b, c, d, e); } abstract class _Mixed&Superclass&Mixin1&Mixin2 = self::_Mixed&Superclass&Mixin1 with self::Mixin2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2 : super self::_Mixed&Superclass&Mixin1::•() ; - forwarding-stub method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin2::method}(a, b, c, d, e); } class Mixed extends self::_Mixed&Superclass&Mixin1&Mixin2 implements self::Interface1, self::Interface2 { - synthetic constructor •() → self::Mixed* + synthetic constructor •() → self::Mixed : super self::_Mixed&Superclass&Mixin1&Mixin2::•() ; - forwarding-stub method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin2::method}(a, b, c, d, e); } static method main() → void { @@ -310,46 +160,46 @@ static method main() → void { self::testMixed(); } static method testDirect() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void positional = new self::Direct::•().{self::Direct::positional}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(positional is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(positional is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - ([core::int*, core::int*, core::int*, core::int*]) →* void optional = new self::Direct::•().{self::Direct::optional}{([core::int*, core::int*, core::int*, core::int*]) →* void}; - self::isTrue(optional is ([core::int*, core::int*, core::int*, core::int*]) →* void); - self::isTrue(optional is ([core::Object*, core::int*, core::Object*, core::int*]) →* void); - ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void named = new self::Direct::•().{self::Direct::named}{({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void}; - self::isTrue(named is ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void); - self::isTrue(named is ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void positional = new self::Direct::•().{self::Direct::positional}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(positional is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(positional is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + ([core::int?, core::int?, core::int?, core::int?]) → void optional = new self::Direct::•().{self::Direct::optional}{([core::int?, core::int?, core::int?, core::int?]) → void}; + self::isTrue(optional is{ForNonNullableByDefault} ([core::int?, core::int?, core::int?, core::int?]) → void); + self::isTrue(optional is{ForNonNullableByDefault} ([core::Object?, core::int?, core::Object?, core::int?]) → void); + ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void named = new self::Direct::•().{self::Direct::named}{({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void}; + self::isTrue(named is{ForNonNullableByDefault} ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void); + self::isTrue(named is{ForNonNullableByDefault} ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void); } static method testInherited() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void positional = new self::Inherited::•().{self::Direct::positional}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(positional is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(positional is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - ([core::int*, core::int*, core::int*, core::int*]) →* void optional = new self::Inherited::•().{self::Direct::optional}{([core::int*, core::int*, core::int*, core::int*]) →* void}; - self::isTrue(optional is ([core::int*, core::int*, core::int*, core::int*]) →* void); - self::isTrue(optional is ([core::Object*, core::int*, core::Object*, core::int*]) →* void); - ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void named = new self::Inherited::•().{self::Direct::named}{({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void}; - self::isTrue(named is ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void); - self::isTrue(named is ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void positional = new self::Inherited::•().{self::Direct::positional}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(positional is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(positional is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + ([core::int?, core::int?, core::int?, core::int?]) → void optional = new self::Inherited::•().{self::Direct::optional}{([core::int?, core::int?, core::int?, core::int?]) → void}; + self::isTrue(optional is{ForNonNullableByDefault} ([core::int?, core::int?, core::int?, core::int?]) → void); + self::isTrue(optional is{ForNonNullableByDefault} ([core::Object?, core::int?, core::Object?, core::int?]) → void); + ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void named = new self::Inherited::•().{self::Direct::named}{({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void}; + self::isTrue(named is{ForNonNullableByDefault} ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void); + self::isTrue(named is{ForNonNullableByDefault} ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void); } static method testOverridden() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method2 = new self::Override2::•().{self::Override2::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method2 is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method2 is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method3 = new self::Override3::•().{self::Override3::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method3 is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method3 is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method2 = new self::Override2::•().{self::Override2::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method2 is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method2 is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method3 = new self::Override3::•().{self::Override3::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method3 is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method3 is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); } static method testImplemented() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method = new self::Implement5::•().{self::Implement5::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method is (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method = new self::Implement5::•().{self::Implement5::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method is{ForNonNullableByDefault} (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void); } static method testMixed() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method = new self::Mixed::•().{self::Mixed::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method is (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method = new self::Mixed::•().{self::Mixed::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method is{ForNonNullableByDefault} (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void); } -static method isTrue(core::bool* value) → void { +static method isTrue(core::bool value) → void { if(!value) throw "Expected true"; } diff --git a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.outline.expect index cb1a866271a..40e7e6a9386 100644 --- a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.outline.expect @@ -1,304 +1,154 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef TakeInts = (core::int*, core::int*, core::int*, core::int*, core::int*) →* void; -typedef TakeObjectsAndInts = (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void; -typedef TakeObjects = (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void; -typedef TakeOptionalInts = ([core::int*, core::int*, core::int*, core::int*]) →* void; -typedef TakeOptionalObjectsAndInts = ([core::Object*, core::int*, core::Object*, core::int*]) →* void; -typedef TakeNamedInts = ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void; -typedef TakeNamedObjectsAndInts = ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void; +typedef TakeInts = (core::int?, core::int?, core::int?, core::int?, core::int?) → void; +typedef TakeObjectsAndInts = (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void; +typedef TakeObjects = (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void; +typedef TakeOptionalInts = ([core::int?, core::int?, core::int?, core::int?]) → void; +typedef TakeOptionalObjectsAndInts = ([core::Object?, core::int?, core::Object?, core::int?]) → void; +typedef TakeNamedInts = ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void; +typedef TakeNamedObjectsAndInts = ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void; class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 ; - method method(covariant-by-declaration core::int* a, core::int* b) → dynamic + method method(covariant-by-declaration core::int? a, core::int? b) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 ; - method method(core::int* a, covariant-by-declaration core::int* b) → dynamic + method method(core::int? a, covariant-by-declaration core::int? b) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1 = core::Object with self::M1 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; - mixin-super-stub method method(covariant-by-declaration core::int* a, core::int* b) → dynamic + mixin-super-stub method method(covariant-by-declaration core::int? a, core::int? b) → dynamic return super.{self::M1::method}(a, b); - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _C&Object&M1&M2 = self::_C&Object&M1 with self::M2 /*isAnonymousMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; - forwarding-stub method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b) → dynamic + forwarding-stub method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b) → dynamic return super.{self::M2::method}(a, b); } class C extends self::_C&Object&M1&M2 { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; } class Direct extends core::Object { - synthetic constructor •() → self::Direct* + synthetic constructor •() → self::Direct ; - method positional(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void + method positional(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void ; - method optional([covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d]) → void + method optional([covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d]) → void ; - method named({covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d}) → void + method named({covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d}) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Inherited extends self::Direct { - synthetic constructor •() → self::Inherited* + synthetic constructor •() → self::Inherited ; } class Override1 extends core::Object { - synthetic constructor •() → self::Override1* + synthetic constructor •() → self::Override1 ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Override2 extends self::Override1 { - synthetic constructor •() → self::Override2* + synthetic constructor •() → self::Override2 ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void ; } class Override3 extends self::Override2 { - synthetic constructor •() → self::Override3* + synthetic constructor •() → self::Override3 ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void ; } abstract class Implement1 extends core::Object { - synthetic constructor •() → self::Implement1* + synthetic constructor •() → self::Implement1 ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Implement2 extends core::Object { - synthetic constructor •() → self::Implement2* + synthetic constructor •() → self::Implement2 ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Implement3 extends core::Object { - synthetic constructor •() → self::Implement3* + synthetic constructor •() → self::Implement3 ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Implement4 extends core::Object implements self::Implement3 { - synthetic constructor •() → self::Implement4* + synthetic constructor •() → self::Implement4 ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, core::int* e) → void + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Implement5 extends core::Object implements self::Implement1, self::Implement2, self::Implement4 { - synthetic constructor •() → self::Implement5* + synthetic constructor •() → self::Implement5 ; - method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Interface1 extends core::Object { - synthetic constructor •() → self::Interface1* + synthetic constructor •() → self::Interface1 ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin1 extends core::Object { - synthetic constructor •() → self::Mixin1* + synthetic constructor •() → self::Mixin1 ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin2 extends core::Object { - synthetic constructor •() → self::Mixin2* + synthetic constructor •() → self::Mixin2 ; - method method(core::int* a, core::int* b, core::int* c, covariant-by-declaration core::int* d, core::int* e) → void + method method(core::int? a, core::int? b, core::int? c, covariant-by-declaration core::int? d, core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass ; - method method(core::int* a, core::int* b, core::int* c, core::int* d, covariant-by-declaration core::int* e) → void + method method(core::int? a, core::int? b, core::int? c, core::int? d, covariant-by-declaration core::int? e) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Mixed&Superclass&Mixin1 = self::Superclass with self::Mixin1 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1 : super self::Superclass::•() ; - forwarding-stub method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin1::method}(a, b, c, d, e); } abstract class _Mixed&Superclass&Mixin1&Mixin2 = self::_Mixed&Superclass&Mixin1 with self::Mixin2 /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2 : super self::_Mixed&Superclass&Mixin1::•() ; - forwarding-stub method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin2::method}(a, b, c, d, e); } class Mixed extends self::_Mixed&Superclass&Mixin1&Mixin2 implements self::Interface1, self::Interface2 { - synthetic constructor •() → self::Mixed* + synthetic constructor •() → self::Mixed ; - forwarding-stub method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin2::method}(a, b, c, d, e); } static method main() → void @@ -313,5 +163,5 @@ static method testImplemented() → void ; static method testMixed() → void ; -static method isTrue(core::bool* value) → void +static method isTrue(core::bool value) → void ; diff --git a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.transformed.expect index 29fba4ac6b3..89e3789b23b 100644 --- a/pkg/front_end/testcases/general/mixin_covariant.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_covariant.dart.weak.transformed.expect @@ -1,301 +1,151 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -typedef TakeInts = (core::int*, core::int*, core::int*, core::int*, core::int*) →* void; -typedef TakeObjectsAndInts = (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void; -typedef TakeObjects = (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void; -typedef TakeOptionalInts = ([core::int*, core::int*, core::int*, core::int*]) →* void; -typedef TakeOptionalObjectsAndInts = ([core::Object*, core::int*, core::Object*, core::int*]) →* void; -typedef TakeNamedInts = ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void; -typedef TakeNamedObjectsAndInts = ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void; +typedef TakeInts = (core::int?, core::int?, core::int?, core::int?, core::int?) → void; +typedef TakeObjectsAndInts = (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void; +typedef TakeObjects = (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void; +typedef TakeOptionalInts = ([core::int?, core::int?, core::int?, core::int?]) → void; +typedef TakeOptionalObjectsAndInts = ([core::Object?, core::int?, core::Object?, core::int?]) → void; +typedef TakeNamedInts = ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void; +typedef TakeNamedObjectsAndInts = ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void; class M1 extends core::Object { - synthetic constructor •() → self::M1* + synthetic constructor •() → self::M1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b) → dynamic {} } class M2 extends core::Object { - synthetic constructor •() → self::M2* + synthetic constructor •() → self::M2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b) → dynamic {} } abstract class _C&Object&M1 extends core::Object implements self::M1 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1* + const synthetic constructor •() → self::_C&Object&M1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b) → dynamic {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b) → dynamic {} } abstract class _C&Object&M1&M2 extends self::_C&Object&M1 implements self::M2 /*isAnonymousMixin,isEliminatedMixin,hasConstConstructor*/ { - const synthetic constructor •() → self::_C&Object&M1&M2* + const synthetic constructor •() → self::_C&Object&M1&M2 : super self::_C&Object&M1::•() ; - method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b) → dynamic {} + method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b) → dynamic {} } class C extends self::_C&Object&M1&M2 { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super self::_C&Object&M1&M2::•() ; } class Direct extends core::Object { - synthetic constructor •() → self::Direct* + synthetic constructor •() → self::Direct : super core::Object::•() ; - method positional(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - method optional([covariant-by-declaration core::int* a = #C1, core::int* b = #C1, covariant-by-declaration core::int* c = #C1, core::int* d = #C1]) → void {} - method named({covariant-by-declaration core::int* a = #C1, core::int* b = #C1, covariant-by-declaration core::int* c = #C1, core::int* d = #C1}) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method positional(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} + method optional([covariant-by-declaration core::int? a = #C1, core::int? b = #C1, covariant-by-declaration core::int? c = #C1, core::int? d = #C1]) → void {} + method named({covariant-by-declaration core::int? a = #C1, core::int? b = #C1, covariant-by-declaration core::int? c = #C1, core::int? d = #C1}) → void {} } class Inherited extends self::Direct { - synthetic constructor •() → self::Inherited* + synthetic constructor •() → self::Inherited : super self::Direct::•() ; } class Override1 extends core::Object { - synthetic constructor •() → self::Override1* + synthetic constructor •() → self::Override1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Override2 extends self::Override1 { - synthetic constructor •() → self::Override2* + synthetic constructor •() → self::Override2 : super self::Override1::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Override3 extends self::Override2 { - synthetic constructor •() → self::Override3* + synthetic constructor •() → self::Override3 : super self::Override2::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} + method method(covariant-by-declaration core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } abstract class Implement1 extends core::Object { - synthetic constructor •() → self::Implement1* + synthetic constructor •() → self::Implement1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Implement2 extends core::Object { - synthetic constructor •() → self::Implement2* + synthetic constructor •() → self::Implement2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Implement3 extends core::Object { - synthetic constructor •() → self::Implement3* + synthetic constructor •() → self::Implement3 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Implement4 extends core::Object implements self::Implement3 { - synthetic constructor •() → self::Implement4* + synthetic constructor •() → self::Implement4 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, core::int? e) → void {} } class Implement5 extends core::Object implements self::Implement1, self::Implement2, self::Implement4 { - synthetic constructor •() → self::Implement5* + synthetic constructor •() → self::Implement5 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void {} } class Interface1 extends core::Object { - synthetic constructor •() → self::Interface1* + synthetic constructor •() → self::Interface1 : super core::Object::•() ; - method method(covariant-by-declaration core::int* a, core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(covariant-by-declaration core::int? a, core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Interface2 extends core::Object { - synthetic constructor •() → self::Interface2* + synthetic constructor •() → self::Interface2 : super core::Object::•() ; - method method(core::int* a, covariant-by-declaration core::int* b, core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, covariant-by-declaration core::int? b, core::int? c, core::int? d, core::int? e) → void {} } class Mixin1 extends core::Object { - synthetic constructor •() → self::Mixin1* + synthetic constructor •() → self::Mixin1 : super core::Object::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, core::int? e) → void {} } class Mixin2 extends core::Object { - synthetic constructor •() → self::Mixin2* + synthetic constructor •() → self::Mixin2 : super core::Object::•() ; - method method(core::int* a, core::int* b, core::int* c, covariant-by-declaration core::int* d, core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, core::int? c, covariant-by-declaration core::int? d, core::int? e) → void {} } class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass : super core::Object::•() ; - method method(core::int* a, core::int* b, core::int* c, core::int* d, covariant-by-declaration core::int* e) → void {} - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + method method(core::int? a, core::int? b, core::int? c, core::int? d, covariant-by-declaration core::int? e) → void {} } abstract class _Mixed&Superclass&Mixin1 extends self::Superclass implements self::Mixin1 /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1 : super self::Superclass::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, core::int* d, covariant-by-declaration core::int* e) → void {} + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, core::int? d, covariant-by-declaration core::int? e) → void {} } abstract class _Mixed&Superclass&Mixin1&Mixin2 extends self::_Mixed&Superclass&Mixin1 implements self::Mixin2 /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2* + synthetic constructor •() → self::_Mixed&Superclass&Mixin1&Mixin2 : super self::_Mixed&Superclass&Mixin1::•() ; - method method(core::int* a, core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void {} + method method(core::int? a, core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void {} } class Mixed extends self::_Mixed&Superclass&Mixin1&Mixin2 implements self::Interface1, self::Interface2 { - synthetic constructor •() → self::Mixed* + synthetic constructor •() → self::Mixed : super self::_Mixed&Superclass&Mixin1&Mixin2::•() ; - forwarding-stub method method(covariant-by-declaration core::int* a, covariant-by-declaration core::int* b, covariant-by-declaration core::int* c, covariant-by-declaration core::int* d, covariant-by-declaration core::int* e) → void + forwarding-stub method method(covariant-by-declaration core::int? a, covariant-by-declaration core::int? b, covariant-by-declaration core::int? c, covariant-by-declaration core::int? d, covariant-by-declaration core::int? e) → void return super.{self::Mixin2::method}(a, b, c, d, e); } static method main() → void { @@ -306,46 +156,46 @@ static method main() → void { self::testMixed(); } static method testDirect() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void positional = new self::Direct::•().{self::Direct::positional}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(positional is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(positional is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - ([core::int*, core::int*, core::int*, core::int*]) →* void optional = new self::Direct::•().{self::Direct::optional}{([core::int*, core::int*, core::int*, core::int*]) →* void}; - self::isTrue(optional is ([core::int*, core::int*, core::int*, core::int*]) →* void); - self::isTrue(optional is ([core::Object*, core::int*, core::Object*, core::int*]) →* void); - ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void named = new self::Direct::•().{self::Direct::named}{({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void}; - self::isTrue(named is ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void); - self::isTrue(named is ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void positional = new self::Direct::•().{self::Direct::positional}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(positional is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(positional is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + ([core::int?, core::int?, core::int?, core::int?]) → void optional = new self::Direct::•().{self::Direct::optional}{([core::int?, core::int?, core::int?, core::int?]) → void}; + self::isTrue(optional is{ForNonNullableByDefault} ([core::int?, core::int?, core::int?, core::int?]) → void); + self::isTrue(optional is{ForNonNullableByDefault} ([core::Object?, core::int?, core::Object?, core::int?]) → void); + ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void named = new self::Direct::•().{self::Direct::named}{({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void}; + self::isTrue(named is{ForNonNullableByDefault} ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void); + self::isTrue(named is{ForNonNullableByDefault} ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void); } static method testInherited() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void positional = new self::Inherited::•().{self::Direct::positional}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(positional is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(positional is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - ([core::int*, core::int*, core::int*, core::int*]) →* void optional = new self::Inherited::•().{self::Direct::optional}{([core::int*, core::int*, core::int*, core::int*]) →* void}; - self::isTrue(optional is ([core::int*, core::int*, core::int*, core::int*]) →* void); - self::isTrue(optional is ([core::Object*, core::int*, core::Object*, core::int*]) →* void); - ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void named = new self::Inherited::•().{self::Direct::named}{({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void}; - self::isTrue(named is ({a: core::int*, b: core::int*, c: core::int*, d: core::int*}) →* void); - self::isTrue(named is ({a: core::Object*, b: core::int*, c: core::Object*, d: core::int*}) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void positional = new self::Inherited::•().{self::Direct::positional}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(positional is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(positional is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + ([core::int?, core::int?, core::int?, core::int?]) → void optional = new self::Inherited::•().{self::Direct::optional}{([core::int?, core::int?, core::int?, core::int?]) → void}; + self::isTrue(optional is{ForNonNullableByDefault} ([core::int?, core::int?, core::int?, core::int?]) → void); + self::isTrue(optional is{ForNonNullableByDefault} ([core::Object?, core::int?, core::Object?, core::int?]) → void); + ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void named = new self::Inherited::•().{self::Direct::named}{({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void}; + self::isTrue(named is{ForNonNullableByDefault} ({a: core::int?, b: core::int?, c: core::int?, d: core::int?}) → void); + self::isTrue(named is{ForNonNullableByDefault} ({a: core::Object?, b: core::int?, c: core::Object?, d: core::int?}) → void); } static method testOverridden() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method2 = new self::Override2::•().{self::Override2::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method2 is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method2 is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method3 = new self::Override3::•().{self::Override3::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method3 is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method3 is (core::Object*, core::int*, core::Object*, core::int*, core::int*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method2 = new self::Override2::•().{self::Override2::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method2 is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method2 is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method3 = new self::Override3::•().{self::Override3::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method3 is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method3 is{ForNonNullableByDefault} (core::Object?, core::int?, core::Object?, core::int?, core::int?) → void); } static method testImplemented() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method = new self::Implement5::•().{self::Implement5::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method is (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method = new self::Implement5::•().{self::Implement5::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method is{ForNonNullableByDefault} (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void); } static method testMixed() → void { - (core::int*, core::int*, core::int*, core::int*, core::int*) →* void method = new self::Mixed::•().{self::Mixed::method}{(core::int*, core::int*, core::int*, core::int*, core::int*) →* void}; - self::isTrue(method is (core::int*, core::int*, core::int*, core::int*, core::int*) →* void); - self::isTrue(method is (core::Object*, core::Object*, core::Object*, core::Object*, core::Object*) →* void); + (core::int?, core::int?, core::int?, core::int?, core::int?) → void method = new self::Mixed::•().{self::Mixed::method}{(core::int?, core::int?, core::int?, core::int?, core::int?) → void}; + self::isTrue(method is{ForNonNullableByDefault} (core::int?, core::int?, core::int?, core::int?, core::int?) → void); + self::isTrue(method is{ForNonNullableByDefault} (core::Object?, core::Object?, core::Object?, core::Object?, core::Object?) → void); } -static method isTrue(core::bool* value) → void { +static method isTrue(core::bool value) → void { if(!value) throw "Expected true"; } diff --git a/pkg/front_end/testcases/general/mixin_covariant2.dart b/pkg/front_end/testcases/general/mixin_covariant2.dart index 51720ecc011..84541149246 100644 --- a/pkg/front_end/testcases/general/mixin_covariant2.dart +++ b/pkg/front_end/testcases/general/mixin_covariant2.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class Superclass { String method1(num argument1, num argument2) => "Superclass"; String method2(num argument1, num argument2) => "Superclass"; diff --git a/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline.expect index 4e542eb6783..6f22d96cdda 100644 --- a/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Superclass { String method1(num argument1, num argument2) => "Superclass"; String method2(num argument1, num argument2) => "Superclass"; diff --git a/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline_modelled.expect index ba9c54c43c0..9f3d0b44201 100644 --- a/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_covariant2.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Class extends Superclass with Mixin {} class Mixin { diff --git a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.expect b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.expect index 8a65e366cd8..ebd83050d01 100644 --- a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.expect @@ -1,98 +1,78 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass : super core::Object::•() ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String return "Superclass"; - method method2(core::num* argument1, core::num* argument2) → core::String* + method method2(core::num argument1, core::num argument2) → core::String return "Superclass"; - method method3(core::num* argument1, covariant-by-declaration core::int* argument2) → core::String* + method method3(core::num argument1, covariant-by-declaration core::int argument2) → core::String return "Superclass"; - method method4(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + method method4(core::num argument1, covariant-by-declaration core::num argument2) → core::String return "Superclass"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String return "Mixin"; - method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String return "Mixin"; - method method3(core::num* argument1, core::num* argument2) → core::String* + method method3(core::num argument1, core::num argument2) → core::String return "Mixin"; - method method4(covariant-by-declaration core::int* argument1, core::int* argument2) → core::String* + method method4(covariant-by-declaration core::int argument1, core::int argument2) → core::String return "Mixin"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Class&Superclass&Mixin = self::Superclass with self::Mixin /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Class&Superclass&Mixin* + synthetic constructor •() → self::_Class&Superclass&Mixin : super self::Superclass::•() ; - mixin-super-stub method method1(core::num* argument1, core::num* argument2) → core::String* + mixin-super-stub method method1(core::num argument1, core::num argument2) → core::String return super.{self::Mixin::method1}(argument1, argument2); - mixin-super-stub method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + mixin-super-stub method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String return super.{self::Mixin::method2}(argument1, argument2); - forwarding-stub method method3(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + forwarding-stub method method3(core::num argument1, covariant-by-declaration core::num argument2) → core::String return super.{self::Mixin::method3}(argument1, argument2); - forwarding-stub method method4(covariant-by-declaration core::int* argument1, covariant-by-declaration core::int* argument2) → core::String* + forwarding-stub method method4(covariant-by-declaration core::int argument1, covariant-by-declaration core::int argument2) → core::String return super.{self::Mixin::method4}(argument1, argument2); } class Class extends self::_Class&Superclass&Mixin { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class : super self::_Class&Superclass&Mixin::•() ; } static method main() → dynamic { - self::Class* c = new self::Class::•(); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method1}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method2}(0, 1){(core::int*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method3}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method4}(0, 1){(core::int*, core::int*) →* core::String*}); - self::Superclass* s = c; - self::expect("Mixin", s.{self::Superclass::method1}(0.5, 1.5){(core::num*, core::num*) →* core::String*}); - self::throws(() → core::String* => s.{self::Superclass::method2}(0.5, 1.5){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", s.{self::Superclass::method3}(0.5, 1){(core::num*, core::int*) →* core::String*}); - self::throws(() → core::String* => s.{self::Superclass::method4}(0.5, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", s.{self::Superclass::method4}(1, 0.5){(core::num*, core::num*) →* core::String*}); - self::Mixin* m = c; - self::expect("Mixin", m.{self::Mixin::method1}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method2}(0, 1){(core::int*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method3}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method4}(0, 1){(core::int*, core::int*) →* core::String*}); + self::Class c = new self::Class::•(); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method1}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method2}(0, 1){(core::int, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method3}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method4}(0, 1){(core::int, core::int) → core::String}); + self::Superclass s = c; + self::expect("Mixin", s.{self::Superclass::method1}(0.5, 1.5){(core::num, core::num) → core::String}); + self::throws(() → void => s.{self::Superclass::method2}(0.5, 1.5){(core::num, core::num) → core::String}); + self::expect("Mixin", s.{self::Superclass::method3}(0.5, 1){(core::num, core::int) → core::String}); + self::throws(() → void => s.{self::Superclass::method4}(0.5, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", s.{self::Superclass::method4}(1, 0.5){(core::num, core::num) → core::String}); + self::Mixin m = c; + self::expect("Mixin", m.{self::Mixin::method1}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method2}(0, 1){(core::int, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method3}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method4}(0, 1){(core::int, core::int) → core::String}); } static method expect(dynamic expected, dynamic actual) → void { - if(!(expected =={core::Object::==}{(core::Object*) →* core::bool*} actual)) + if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual)) throw "Expected ${expected}, actual ${actual}"; } -static method throws(() →* void f) → void { +static method throws(() → void f) → void { try { - f(){() →* void}; + f(){() → void}; } - on dynamic catch(final dynamic _) { + on core::Object catch(final core::Object _) { return; } throw "Expected exception"; diff --git a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.modular.expect index 8a65e366cd8..ebd83050d01 100644 --- a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.modular.expect @@ -1,98 +1,78 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass : super core::Object::•() ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String return "Superclass"; - method method2(core::num* argument1, core::num* argument2) → core::String* + method method2(core::num argument1, core::num argument2) → core::String return "Superclass"; - method method3(core::num* argument1, covariant-by-declaration core::int* argument2) → core::String* + method method3(core::num argument1, covariant-by-declaration core::int argument2) → core::String return "Superclass"; - method method4(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + method method4(core::num argument1, covariant-by-declaration core::num argument2) → core::String return "Superclass"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String return "Mixin"; - method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String return "Mixin"; - method method3(core::num* argument1, core::num* argument2) → core::String* + method method3(core::num argument1, core::num argument2) → core::String return "Mixin"; - method method4(covariant-by-declaration core::int* argument1, core::int* argument2) → core::String* + method method4(covariant-by-declaration core::int argument1, core::int argument2) → core::String return "Mixin"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Class&Superclass&Mixin = self::Superclass with self::Mixin /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Class&Superclass&Mixin* + synthetic constructor •() → self::_Class&Superclass&Mixin : super self::Superclass::•() ; - mixin-super-stub method method1(core::num* argument1, core::num* argument2) → core::String* + mixin-super-stub method method1(core::num argument1, core::num argument2) → core::String return super.{self::Mixin::method1}(argument1, argument2); - mixin-super-stub method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + mixin-super-stub method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String return super.{self::Mixin::method2}(argument1, argument2); - forwarding-stub method method3(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + forwarding-stub method method3(core::num argument1, covariant-by-declaration core::num argument2) → core::String return super.{self::Mixin::method3}(argument1, argument2); - forwarding-stub method method4(covariant-by-declaration core::int* argument1, covariant-by-declaration core::int* argument2) → core::String* + forwarding-stub method method4(covariant-by-declaration core::int argument1, covariant-by-declaration core::int argument2) → core::String return super.{self::Mixin::method4}(argument1, argument2); } class Class extends self::_Class&Superclass&Mixin { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class : super self::_Class&Superclass&Mixin::•() ; } static method main() → dynamic { - self::Class* c = new self::Class::•(); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method1}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method2}(0, 1){(core::int*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method3}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method4}(0, 1){(core::int*, core::int*) →* core::String*}); - self::Superclass* s = c; - self::expect("Mixin", s.{self::Superclass::method1}(0.5, 1.5){(core::num*, core::num*) →* core::String*}); - self::throws(() → core::String* => s.{self::Superclass::method2}(0.5, 1.5){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", s.{self::Superclass::method3}(0.5, 1){(core::num*, core::int*) →* core::String*}); - self::throws(() → core::String* => s.{self::Superclass::method4}(0.5, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", s.{self::Superclass::method4}(1, 0.5){(core::num*, core::num*) →* core::String*}); - self::Mixin* m = c; - self::expect("Mixin", m.{self::Mixin::method1}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method2}(0, 1){(core::int*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method3}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method4}(0, 1){(core::int*, core::int*) →* core::String*}); + self::Class c = new self::Class::•(); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method1}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method2}(0, 1){(core::int, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method3}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method4}(0, 1){(core::int, core::int) → core::String}); + self::Superclass s = c; + self::expect("Mixin", s.{self::Superclass::method1}(0.5, 1.5){(core::num, core::num) → core::String}); + self::throws(() → void => s.{self::Superclass::method2}(0.5, 1.5){(core::num, core::num) → core::String}); + self::expect("Mixin", s.{self::Superclass::method3}(0.5, 1){(core::num, core::int) → core::String}); + self::throws(() → void => s.{self::Superclass::method4}(0.5, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", s.{self::Superclass::method4}(1, 0.5){(core::num, core::num) → core::String}); + self::Mixin m = c; + self::expect("Mixin", m.{self::Mixin::method1}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method2}(0, 1){(core::int, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method3}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method4}(0, 1){(core::int, core::int) → core::String}); } static method expect(dynamic expected, dynamic actual) → void { - if(!(expected =={core::Object::==}{(core::Object*) →* core::bool*} actual)) + if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual)) throw "Expected ${expected}, actual ${actual}"; } -static method throws(() →* void f) → void { +static method throws(() → void f) → void { try { - f(){() →* void}; + f(){() → void}; } - on dynamic catch(final dynamic _) { + on core::Object catch(final core::Object _) { return; } throw "Expected exception"; diff --git a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.outline.expect index 64d87c4026c..a2ed6ce31fe 100644 --- a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.outline.expect @@ -1,71 +1,51 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String ; - method method2(core::num* argument1, core::num* argument2) → core::String* + method method2(core::num argument1, core::num argument2) → core::String ; - method method3(core::num* argument1, covariant-by-declaration core::int* argument2) → core::String* + method method3(core::num argument1, covariant-by-declaration core::int argument2) → core::String ; - method method4(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + method method4(core::num argument1, covariant-by-declaration core::num argument2) → core::String ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String ; - method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String ; - method method3(core::num* argument1, core::num* argument2) → core::String* + method method3(core::num argument1, core::num argument2) → core::String ; - method method4(covariant-by-declaration core::int* argument1, core::int* argument2) → core::String* + method method4(covariant-by-declaration core::int argument1, core::int argument2) → core::String ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Class&Superclass&Mixin = self::Superclass with self::Mixin /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Class&Superclass&Mixin* + synthetic constructor •() → self::_Class&Superclass&Mixin : super self::Superclass::•() ; - mixin-super-stub method method1(core::num* argument1, core::num* argument2) → core::String* + mixin-super-stub method method1(core::num argument1, core::num argument2) → core::String return super.{self::Mixin::method1}(argument1, argument2); - mixin-super-stub method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + mixin-super-stub method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String return super.{self::Mixin::method2}(argument1, argument2); - forwarding-stub method method3(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + forwarding-stub method method3(core::num argument1, covariant-by-declaration core::num argument2) → core::String return super.{self::Mixin::method3}(argument1, argument2); - forwarding-stub method method4(covariant-by-declaration core::int* argument1, covariant-by-declaration core::int* argument2) → core::String* + forwarding-stub method method4(covariant-by-declaration core::int argument1, covariant-by-declaration core::int argument2) → core::String return super.{self::Mixin::method4}(argument1, argument2); } class Class extends self::_Class&Superclass&Mixin { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class ; } static method main() → dynamic ; static method expect(dynamic expected, dynamic actual) → void ; -static method throws(() →* void f) → void +static method throws(() → void f) → void ; diff --git a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.transformed.expect index 11ed4b80bba..2122e288039 100644 --- a/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_covariant2.dart.weak.transformed.expect @@ -1,98 +1,78 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Superclass extends core::Object { - synthetic constructor •() → self::Superclass* + synthetic constructor •() → self::Superclass : super core::Object::•() ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String return "Superclass"; - method method2(core::num* argument1, core::num* argument2) → core::String* + method method2(core::num argument1, core::num argument2) → core::String return "Superclass"; - method method3(core::num* argument1, covariant-by-declaration core::int* argument2) → core::String* + method method3(core::num argument1, covariant-by-declaration core::int argument2) → core::String return "Superclass"; - method method4(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + method method4(core::num argument1, covariant-by-declaration core::num argument2) → core::String return "Superclass"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Mixin extends core::Object { - synthetic constructor •() → self::Mixin* + synthetic constructor •() → self::Mixin : super core::Object::•() ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String return "Mixin"; - method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String return "Mixin"; - method method3(core::num* argument1, core::num* argument2) → core::String* + method method3(core::num argument1, core::num argument2) → core::String return "Mixin"; - method method4(covariant-by-declaration core::int* argument1, core::int* argument2) → core::String* + method method4(covariant-by-declaration core::int argument1, core::int argument2) → core::String return "Mixin"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Class&Superclass&Mixin extends self::Superclass implements self::Mixin /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •() → self::_Class&Superclass&Mixin* + synthetic constructor •() → self::_Class&Superclass&Mixin : super self::Superclass::•() ; - method method1(core::num* argument1, core::num* argument2) → core::String* + method method1(core::num argument1, core::num argument2) → core::String return "Mixin"; - method method2(covariant-by-declaration core::int* argument1, core::num* argument2) → core::String* + method method2(covariant-by-declaration core::int argument1, core::num argument2) → core::String return "Mixin"; - method method3(core::num* argument1, covariant-by-declaration core::num* argument2) → core::String* + method method3(core::num argument1, covariant-by-declaration core::num argument2) → core::String return "Mixin"; - method method4(covariant-by-declaration core::int* argument1, covariant-by-declaration core::int* argument2) → core::String* + method method4(covariant-by-declaration core::int argument1, covariant-by-declaration core::int argument2) → core::String return "Mixin"; } class Class extends self::_Class&Superclass&Mixin { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class : super self::_Class&Superclass&Mixin::•() ; } static method main() → dynamic { - self::Class* c = new self::Class::•(); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method1}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method2}(0, 1){(core::int*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method3}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method4}(0, 1){(core::int*, core::int*) →* core::String*}); - self::Superclass* s = c; - self::expect("Mixin", s.{self::Superclass::method1}(0.5, 1.5){(core::num*, core::num*) →* core::String*}); - self::throws(() → core::String* => s.{self::Superclass::method2}(0.5, 1.5){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", s.{self::Superclass::method3}(0.5, 1){(core::num*, core::int*) →* core::String*}); - self::throws(() → core::String* => s.{self::Superclass::method4}(0.5, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", s.{self::Superclass::method4}(1, 0.5){(core::num*, core::num*) →* core::String*}); - self::Mixin* m = c; - self::expect("Mixin", m.{self::Mixin::method1}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method2}(0, 1){(core::int*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method3}(0, 1){(core::num*, core::num*) →* core::String*}); - self::expect("Mixin", m.{self::Mixin::method4}(0, 1){(core::int*, core::int*) →* core::String*}); + self::Class c = new self::Class::•(); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method1}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method2}(0, 1){(core::int, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method3}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", c.{self::_Class&Superclass&Mixin::method4}(0, 1){(core::int, core::int) → core::String}); + self::Superclass s = c; + self::expect("Mixin", s.{self::Superclass::method1}(0.5, 1.5){(core::num, core::num) → core::String}); + self::throws(() → void => s.{self::Superclass::method2}(0.5, 1.5){(core::num, core::num) → core::String}); + self::expect("Mixin", s.{self::Superclass::method3}(0.5, 1){(core::num, core::int) → core::String}); + self::throws(() → void => s.{self::Superclass::method4}(0.5, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", s.{self::Superclass::method4}(1, 0.5){(core::num, core::num) → core::String}); + self::Mixin m = c; + self::expect("Mixin", m.{self::Mixin::method1}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method2}(0, 1){(core::int, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method3}(0, 1){(core::num, core::num) → core::String}); + self::expect("Mixin", m.{self::Mixin::method4}(0, 1){(core::int, core::int) → core::String}); } static method expect(dynamic expected, dynamic actual) → void { - if(!(expected =={core::Object::==}{(core::Object*) →* core::bool*} actual)) + if(!(expected =={core::Object::==}{(core::Object) → core::bool} actual)) throw "Expected ${expected}, actual ${actual}"; } -static method throws(() →* void f) → void { +static method throws(() → void f) → void { try { - f(){() →* void}; + f(){() → void}; } - on dynamic catch(final dynamic _) { + on core::Object catch(final core::Object _) { return; } throw "Expected exception"; diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field.dart b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field.dart index 7e4d936e4a8..890f7b5e4da 100644 --- a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field.dart +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field.dart @@ -1,7 +1,9 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE.md file. + // @dart=2.9 + class A {} class C { diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart new file mode 100644 index 00000000000..2cd6db24699 --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart @@ -0,0 +1,24 @@ +// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE.md file. + +class A {} + +class C { + late T _field; + + foo(T x) { + _field = x; + } +} + +class D extends C {} + +class Foo extends Object with C {} + +class B extends A {} + +main() { + var foo = new Foo(); + foo.foo(new B()); +} diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline.expect new file mode 100644 index 00000000000..1c97b579a69 --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline.expect @@ -0,0 +1,14 @@ +class A {} + +class C { + late T _field; + foo(T x) {} +} + +class D extends C {} + +class Foo extends Object with C {} + +class B extends A {} + +main() {} diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..f367e69cdfd --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.textual_outline_modelled.expect @@ -0,0 +1,12 @@ +class A {} +class B extends A {} +class C { + ---- unknown chunk starts ---- +late +---- unknown chunk ends ---- + T _field; + foo(T x) {} +} +class D extends C {} +class Foo extends Object with C {} +main() {} diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.expect b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.expect new file mode 100644 index 00000000000..ef14d3ef036 --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.expect @@ -0,0 +1,48 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + synthetic constructor •() → self::A + : super core::Object::•() + ; +} +class C extends core::Object { + late covariant-by-class field self::C::T _field; + synthetic constructor •() → self::C + : super core::Object::•() + ; + method foo(covariant-by-class self::C::T x) → dynamic { + this.{self::C::_field} = x; + } +} +class D extends self::C { + synthetic constructor •() → self::D + : super self::C::•() + ; +} +abstract class _Foo&Object&C = core::Object with self::C /*isAnonymousMixin*/ { + synthetic constructor •() → self::_Foo&Object&C + : super core::Object::•() + ; + mixin-super-stub get _field() → self::B + return super.{self::C::_field}; + mixin-super-stub set _field(covariant-by-class self::B value) → void + return super.{self::C::_field} = value; + mixin-super-stub method foo(covariant-by-class self::B x) → dynamic + return super.{self::C::foo}(x); +} +class Foo extends self::_Foo&Object&C { + synthetic constructor •() → self::Foo + : super self::_Foo&Object&C::•() + ; +} +class B extends self::A { + synthetic constructor •() → self::B + : super self::A::•() + ; +} +static method main() → dynamic { + self::Foo foo = new self::Foo::•(); + foo.{self::_Foo&Object&C::foo}(new self::B::•()){(self::B) → dynamic}; +} diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.modular.expect new file mode 100644 index 00000000000..ef14d3ef036 --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.modular.expect @@ -0,0 +1,48 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + synthetic constructor •() → self::A + : super core::Object::•() + ; +} +class C extends core::Object { + late covariant-by-class field self::C::T _field; + synthetic constructor •() → self::C + : super core::Object::•() + ; + method foo(covariant-by-class self::C::T x) → dynamic { + this.{self::C::_field} = x; + } +} +class D extends self::C { + synthetic constructor •() → self::D + : super self::C::•() + ; +} +abstract class _Foo&Object&C = core::Object with self::C /*isAnonymousMixin*/ { + synthetic constructor •() → self::_Foo&Object&C + : super core::Object::•() + ; + mixin-super-stub get _field() → self::B + return super.{self::C::_field}; + mixin-super-stub set _field(covariant-by-class self::B value) → void + return super.{self::C::_field} = value; + mixin-super-stub method foo(covariant-by-class self::B x) → dynamic + return super.{self::C::foo}(x); +} +class Foo extends self::_Foo&Object&C { + synthetic constructor •() → self::Foo + : super self::_Foo&Object&C::•() + ; +} +class B extends self::A { + synthetic constructor •() → self::B + : super self::A::•() + ; +} +static method main() → dynamic { + self::Foo foo = new self::Foo::•(); + foo.{self::_Foo&Object&C::foo}(new self::B::•()){(self::B) → dynamic}; +} diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.outline.expect new file mode 100644 index 00000000000..9a6b3bb30d9 --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.outline.expect @@ -0,0 +1,40 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + synthetic constructor •() → self::A + ; +} +class C extends core::Object { + late covariant-by-class field self::C::T _field; + synthetic constructor •() → self::C + ; + method foo(covariant-by-class self::C::T x) → dynamic + ; +} +class D extends self::C { + synthetic constructor •() → self::D + ; +} +abstract class _Foo&Object&C = core::Object with self::C /*isAnonymousMixin*/ { + synthetic constructor •() → self::_Foo&Object&C + : super core::Object::•() + ; + mixin-super-stub get _field() → self::B + return super.{self::C::_field}; + mixin-super-stub set _field(covariant-by-class self::B value) → void + return super.{self::C::_field} = value; + mixin-super-stub method foo(covariant-by-class self::B x) → dynamic + return super.{self::C::foo}(x); +} +class Foo extends self::_Foo&Object&C { + synthetic constructor •() → self::Foo + ; +} +class B extends self::A { + synthetic constructor •() → self::B + ; +} +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.transformed.expect new file mode 100644 index 00000000000..a68dbafc1b1 --- /dev/null +++ b/pkg/front_end/testcases/general/mixin_inherited_setter_for_mixed_in_field2.dart.weak.transformed.expect @@ -0,0 +1,46 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + synthetic constructor •() → self::A + : super core::Object::•() + ; +} +class C extends core::Object { + late covariant-by-class field self::C::T _field; + synthetic constructor •() → self::C + : super core::Object::•() + ; + method foo(covariant-by-class self::C::T x) → dynamic { + this.{self::C::_field} = x; + } +} +class D extends self::C { + synthetic constructor •() → self::D + : super self::C::•() + ; +} +abstract class _Foo&Object&C extends core::Object implements self::C /*isAnonymousMixin,isEliminatedMixin*/ { + late covariant-by-class field self::B _field; + synthetic constructor •() → self::_Foo&Object&C + : super core::Object::•() + ; + method foo(covariant-by-class self::B x) → dynamic { + this.{self::C::_field} = x; + } +} +class Foo extends self::_Foo&Object&C { + synthetic constructor •() → self::Foo + : super self::_Foo&Object&C::•() + ; +} +class B extends self::A { + synthetic constructor •() → self::B + : super self::A::•() + ; +} +static method main() → dynamic { + self::Foo foo = new self::Foo::•(); + foo.{self::_Foo&Object&C::foo}(new self::B::•()){(self::B) → dynamic}; +} diff --git a/pkg/front_end/testcases/general/mixin_interface_conflict.dart b/pkg/front_end/testcases/general/mixin_interface_conflict.dart index 5382f6e7b14..767bf52a9c0 100644 --- a/pkg/front_end/testcases/general/mixin_interface_conflict.dart +++ b/pkg/front_end/testcases/general/mixin_interface_conflict.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class B { int get n => 1; } diff --git a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline.expect index 49f94cda208..d373953674f 100644 --- a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class B { int get n => 1; } diff --git a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline_modelled.expect index c6ed9f3ff29..e2a50a14222 100644 --- a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class B { int get n => 1; } diff --git a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.expect b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.expect index 194538fea89..7cbf184a3f9 100644 --- a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,53 +17,23 @@ import self as self; import "dart:core" as core; class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - get n() → core::int* + get n() → core::int return 1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - get n() → core::double* + get n() → core::double return 2.0; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _M&B&C extends core::Object implements self::B, self::C /*isAnonymousMixin*/ { - synthetic constructor •() → self::_M&B&C* + synthetic constructor •() → self::_M&B&C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M extends self::_M&B&C /*isMixinDeclaration*/ { } diff --git a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.modular.expect index 194538fea89..7cbf184a3f9 100644 --- a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,53 +17,23 @@ import self as self; import "dart:core" as core; class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - get n() → core::int* + get n() → core::int return 1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - get n() → core::double* + get n() → core::double return 2.0; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _M&B&C extends core::Object implements self::B, self::C /*isAnonymousMixin*/ { - synthetic constructor •() → self::_M&B&C* + synthetic constructor •() → self::_M&B&C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M extends self::_M&B&C /*isMixinDeclaration*/ { } diff --git a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.outline.expect index e77f24e758d..5ff43cff051 100644 --- a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,50 +17,20 @@ import self as self; import "dart:core" as core; class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B ; - get n() → core::int* + get n() → core::int ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; - get n() → core::double* + get n() → core::double ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _M&B&C extends core::Object implements self::B, self::C /*isAnonymousMixin*/ { - synthetic constructor •() → self::_M&B&C* + synthetic constructor •() → self::_M&B&C ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M extends self::_M&B&C /*isMixinDeclaration*/ { } diff --git a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.transformed.expect index 194538fea89..7cbf184a3f9 100644 --- a/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_interface_conflict.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -17,53 +17,23 @@ import self as self; import "dart:core" as core; class B extends core::Object { - synthetic constructor •() → self::B* + synthetic constructor •() → self::B : super core::Object::•() ; - get n() → core::int* + get n() → core::int return 1; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; - get n() → core::double* + get n() → core::double return 2.0; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _M&B&C extends core::Object implements self::B, self::C /*isAnonymousMixin*/ { - synthetic constructor •() → self::_M&B&C* + synthetic constructor •() → self::_M&B&C : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class M extends self::_M&B&C /*isMixinDeclaration*/ { } diff --git a/pkg/front_end/testcases/general/mixin_stubs.dart b/pkg/front_end/testcases/general/mixin_stubs.dart index 22e5bb18f0c..59f06918899 100644 --- a/pkg/front_end/testcases/general/mixin_stubs.dart +++ b/pkg/front_end/testcases/general/mixin_stubs.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + abstract class Super { void concreteExtendsConcreteMixin() {} void concreteExtendsAbstractMixin() {} diff --git a/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline.expect index 4f42b33a040..9a72527df43 100644 --- a/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class Super { void concreteExtendsConcreteMixin() {} void concreteExtendsAbstractMixin() {} diff --git a/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline_modelled.expect index 44714c6c78f..b8362add8bd 100644 --- a/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_stubs.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class ClassEqMixin = Super with Mixin; abstract class ClassEqMixinClass = Super with MixinClass; diff --git a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.expect b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.expect index 32aae434f27..61328597cdc 100644 --- a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.expect @@ -1,28 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Super extends core::Object { - synthetic constructor •() → self::Super* + synthetic constructor •() → self::Super : super core::Object::•() ; method concreteExtendsConcreteMixin() → void {} method concreteExtendsAbstractMixin() → void {} abstract method abstractExtendsConcreteMixin() → void; abstract method abstractExtendsAbstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class MixinClass extends core::Object { - synthetic constructor •() → self::MixinClass* + synthetic constructor •() → self::MixinClass : super core::Object::•() ; method concreteExtendsConcreteMixin() → void {} @@ -31,16 +21,6 @@ abstract class MixinClass extends core::Object { method abstractExtendsConcreteMixin() → void {} abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Mixin extends core::Object /*isMixinDeclaration*/ { method concreteExtendsConcreteMixin() → void {} @@ -49,19 +29,9 @@ abstract class Mixin extends core::Object /*isMixinDeclaration*/ { method abstractExtendsConcreteMixin() → void {} abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ClassEqMixinClass = self::Super with self::MixinClass { - synthetic constructor •() → self::ClassEqMixinClass* + synthetic constructor •() → self::ClassEqMixinClass : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -75,7 +45,7 @@ abstract class ClassEqMixinClass = self::Super with self::MixinClass { abstract mixin-stub method abstractMixin() → void; -> self::MixinClass::abstractMixin } abstract class _ClassExtendsMixinClass&Super&MixinClass = self::Super with self::MixinClass /*isAnonymousMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass* + synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -89,12 +59,12 @@ abstract class _ClassExtendsMixinClass&Super&MixinClass = self::Super with self: abstract mixin-stub method abstractMixin() → void; -> self::MixinClass::abstractMixin } abstract class ClassExtendsMixinClass extends self::_ClassExtendsMixinClass&Super&MixinClass { - synthetic constructor •() → self::ClassExtendsMixinClass* + synthetic constructor •() → self::ClassExtendsMixinClass : super self::_ClassExtendsMixinClass&Super&MixinClass::•() ; } abstract class ClassEqMixin = self::Super with self::Mixin { - synthetic constructor •() → self::ClassEqMixin* + synthetic constructor •() → self::ClassEqMixin : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -108,7 +78,7 @@ abstract class ClassEqMixin = self::Super with self::Mixin { abstract mixin-stub method abstractMixin() → void; -> self::Mixin::abstractMixin } abstract class _ClassExtendsMixin&Super&Mixin = self::Super with self::Mixin /*isAnonymousMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin* + synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -122,21 +92,21 @@ abstract class _ClassExtendsMixin&Super&Mixin = self::Super with self::Mixin /*i abstract mixin-stub method abstractMixin() → void; -> self::Mixin::abstractMixin } abstract class ClassExtendsMixin extends self::_ClassExtendsMixin&Super&Mixin { - synthetic constructor •() → self::ClassExtendsMixin* + synthetic constructor •() → self::ClassExtendsMixin : super self::_ClassExtendsMixin&Super&Mixin::•() ; } abstract class SubclassEqMixinClass extends self::ClassEqMixinClass { - synthetic constructor •() → self::SubclassEqMixinClass* + synthetic constructor •() → self::SubclassEqMixinClass : super self::ClassEqMixinClass::•() ; method method() → dynamic { - this.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixinClass::concreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractMixin}(){() →* void}; + this.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::concreteExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixinClass::concreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractMixin}(){() → void}; super.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::ClassEqMixinClass::concreteMixin}(); @@ -144,16 +114,16 @@ abstract class SubclassEqMixinClass extends self::ClassEqMixinClass { } } abstract class SubclassExtendsMixinClass extends self::ClassExtendsMixinClass { - synthetic constructor •() → self::SubclassExtendsMixinClass* + synthetic constructor •() → self::SubclassExtendsMixinClass : super self::ClassExtendsMixinClass::•() ; method method() → dynamic { - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractMixin}(){() →* void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractMixin}(){() → void}; super.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(); @@ -161,16 +131,16 @@ abstract class SubclassExtendsMixinClass extends self::ClassExtendsMixinClass { } } abstract class SubclassEqMixin extends self::ClassEqMixin { - synthetic constructor •() → self::SubclassEqMixin* + synthetic constructor •() → self::SubclassEqMixin : super self::ClassEqMixin::•() ; method method() → dynamic { - this.{self::ClassEqMixin::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixin::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixin::concreteMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractMixin}(){() →* void}; + this.{self::ClassEqMixin::concreteExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixin::concreteExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixin::concreteMixin}(){() → void}; + this.{self::ClassEqMixin::abstractExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixin::abstractExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixin::abstractMixin}(){() → void}; super.{self::ClassEqMixin::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::ClassEqMixin::concreteMixin}(); @@ -178,16 +148,16 @@ abstract class SubclassEqMixin extends self::ClassEqMixin { } } abstract class SubclassExtendsMixin extends self::ClassExtendsMixin { - synthetic constructor •() → self::SubclassExtendsMixin* + synthetic constructor •() → self::SubclassExtendsMixin : super self::ClassExtendsMixin::•() ; method method() → dynamic { - this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractMixin}(){() →* void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractMixin}(){() → void}; super.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(); diff --git a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.modular.expect index 32aae434f27..61328597cdc 100644 --- a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.modular.expect @@ -1,28 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Super extends core::Object { - synthetic constructor •() → self::Super* + synthetic constructor •() → self::Super : super core::Object::•() ; method concreteExtendsConcreteMixin() → void {} method concreteExtendsAbstractMixin() → void {} abstract method abstractExtendsConcreteMixin() → void; abstract method abstractExtendsAbstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class MixinClass extends core::Object { - synthetic constructor •() → self::MixinClass* + synthetic constructor •() → self::MixinClass : super core::Object::•() ; method concreteExtendsConcreteMixin() → void {} @@ -31,16 +21,6 @@ abstract class MixinClass extends core::Object { method abstractExtendsConcreteMixin() → void {} abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Mixin extends core::Object /*isMixinDeclaration*/ { method concreteExtendsConcreteMixin() → void {} @@ -49,19 +29,9 @@ abstract class Mixin extends core::Object /*isMixinDeclaration*/ { method abstractExtendsConcreteMixin() → void {} abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ClassEqMixinClass = self::Super with self::MixinClass { - synthetic constructor •() → self::ClassEqMixinClass* + synthetic constructor •() → self::ClassEqMixinClass : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -75,7 +45,7 @@ abstract class ClassEqMixinClass = self::Super with self::MixinClass { abstract mixin-stub method abstractMixin() → void; -> self::MixinClass::abstractMixin } abstract class _ClassExtendsMixinClass&Super&MixinClass = self::Super with self::MixinClass /*isAnonymousMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass* + synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -89,12 +59,12 @@ abstract class _ClassExtendsMixinClass&Super&MixinClass = self::Super with self: abstract mixin-stub method abstractMixin() → void; -> self::MixinClass::abstractMixin } abstract class ClassExtendsMixinClass extends self::_ClassExtendsMixinClass&Super&MixinClass { - synthetic constructor •() → self::ClassExtendsMixinClass* + synthetic constructor •() → self::ClassExtendsMixinClass : super self::_ClassExtendsMixinClass&Super&MixinClass::•() ; } abstract class ClassEqMixin = self::Super with self::Mixin { - synthetic constructor •() → self::ClassEqMixin* + synthetic constructor •() → self::ClassEqMixin : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -108,7 +78,7 @@ abstract class ClassEqMixin = self::Super with self::Mixin { abstract mixin-stub method abstractMixin() → void; -> self::Mixin::abstractMixin } abstract class _ClassExtendsMixin&Super&Mixin = self::Super with self::Mixin /*isAnonymousMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin* + synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -122,21 +92,21 @@ abstract class _ClassExtendsMixin&Super&Mixin = self::Super with self::Mixin /*i abstract mixin-stub method abstractMixin() → void; -> self::Mixin::abstractMixin } abstract class ClassExtendsMixin extends self::_ClassExtendsMixin&Super&Mixin { - synthetic constructor •() → self::ClassExtendsMixin* + synthetic constructor •() → self::ClassExtendsMixin : super self::_ClassExtendsMixin&Super&Mixin::•() ; } abstract class SubclassEqMixinClass extends self::ClassEqMixinClass { - synthetic constructor •() → self::SubclassEqMixinClass* + synthetic constructor •() → self::SubclassEqMixinClass : super self::ClassEqMixinClass::•() ; method method() → dynamic { - this.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixinClass::concreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractMixin}(){() →* void}; + this.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::concreteExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixinClass::concreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractMixin}(){() → void}; super.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::ClassEqMixinClass::concreteMixin}(); @@ -144,16 +114,16 @@ abstract class SubclassEqMixinClass extends self::ClassEqMixinClass { } } abstract class SubclassExtendsMixinClass extends self::ClassExtendsMixinClass { - synthetic constructor •() → self::SubclassExtendsMixinClass* + synthetic constructor •() → self::SubclassExtendsMixinClass : super self::ClassExtendsMixinClass::•() ; method method() → dynamic { - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractMixin}(){() →* void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractMixin}(){() → void}; super.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(); @@ -161,16 +131,16 @@ abstract class SubclassExtendsMixinClass extends self::ClassExtendsMixinClass { } } abstract class SubclassEqMixin extends self::ClassEqMixin { - synthetic constructor •() → self::SubclassEqMixin* + synthetic constructor •() → self::SubclassEqMixin : super self::ClassEqMixin::•() ; method method() → dynamic { - this.{self::ClassEqMixin::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixin::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixin::concreteMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractMixin}(){() →* void}; + this.{self::ClassEqMixin::concreteExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixin::concreteExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixin::concreteMixin}(){() → void}; + this.{self::ClassEqMixin::abstractExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixin::abstractExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixin::abstractMixin}(){() → void}; super.{self::ClassEqMixin::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::ClassEqMixin::concreteMixin}(); @@ -178,16 +148,16 @@ abstract class SubclassEqMixin extends self::ClassEqMixin { } } abstract class SubclassExtendsMixin extends self::ClassExtendsMixin { - synthetic constructor •() → self::SubclassExtendsMixin* + synthetic constructor •() → self::SubclassExtendsMixin : super self::ClassExtendsMixin::•() ; method method() → dynamic { - this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractMixin}(){() →* void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractMixin}(){() → void}; super.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(); diff --git a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.outline.expect index 8f9542da61d..781d4f51afc 100644 --- a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.outline.expect @@ -1,9 +1,9 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Super extends core::Object { - synthetic constructor •() → self::Super* + synthetic constructor •() → self::Super ; method concreteExtendsConcreteMixin() → void ; @@ -11,19 +11,9 @@ abstract class Super extends core::Object { ; abstract method abstractExtendsConcreteMixin() → void; abstract method abstractExtendsAbstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class MixinClass extends core::Object { - synthetic constructor •() → self::MixinClass* + synthetic constructor •() → self::MixinClass ; method concreteExtendsConcreteMixin() → void ; @@ -34,16 +24,6 @@ abstract class MixinClass extends core::Object { ; abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Mixin extends core::Object /*isMixinDeclaration*/ { method concreteExtendsConcreteMixin() → void @@ -55,19 +35,9 @@ abstract class Mixin extends core::Object /*isMixinDeclaration*/ { ; abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ClassEqMixinClass = self::Super with self::MixinClass { - synthetic constructor •() → self::ClassEqMixinClass* + synthetic constructor •() → self::ClassEqMixinClass : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -81,7 +51,7 @@ abstract class ClassEqMixinClass = self::Super with self::MixinClass { abstract mixin-stub method abstractMixin() → void; -> self::MixinClass::abstractMixin } abstract class _ClassExtendsMixinClass&Super&MixinClass = self::Super with self::MixinClass /*isAnonymousMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass* + synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -95,11 +65,11 @@ abstract class _ClassExtendsMixinClass&Super&MixinClass = self::Super with self: abstract mixin-stub method abstractMixin() → void; -> self::MixinClass::abstractMixin } abstract class ClassExtendsMixinClass extends self::_ClassExtendsMixinClass&Super&MixinClass { - synthetic constructor •() → self::ClassExtendsMixinClass* + synthetic constructor •() → self::ClassExtendsMixinClass ; } abstract class ClassEqMixin = self::Super with self::Mixin { - synthetic constructor •() → self::ClassEqMixin* + synthetic constructor •() → self::ClassEqMixin : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -113,7 +83,7 @@ abstract class ClassEqMixin = self::Super with self::Mixin { abstract mixin-stub method abstractMixin() → void; -> self::Mixin::abstractMixin } abstract class _ClassExtendsMixin&Super&Mixin = self::Super with self::Mixin /*isAnonymousMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin* + synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin : super self::Super::•() ; mixin-super-stub method concreteExtendsConcreteMixin() → void @@ -127,29 +97,29 @@ abstract class _ClassExtendsMixin&Super&Mixin = self::Super with self::Mixin /*i abstract mixin-stub method abstractMixin() → void; -> self::Mixin::abstractMixin } abstract class ClassExtendsMixin extends self::_ClassExtendsMixin&Super&Mixin { - synthetic constructor •() → self::ClassExtendsMixin* + synthetic constructor •() → self::ClassExtendsMixin ; } abstract class SubclassEqMixinClass extends self::ClassEqMixinClass { - synthetic constructor •() → self::SubclassEqMixinClass* + synthetic constructor •() → self::SubclassEqMixinClass ; method method() → dynamic ; } abstract class SubclassExtendsMixinClass extends self::ClassExtendsMixinClass { - synthetic constructor •() → self::SubclassExtendsMixinClass* + synthetic constructor •() → self::SubclassExtendsMixinClass ; method method() → dynamic ; } abstract class SubclassEqMixin extends self::ClassEqMixin { - synthetic constructor •() → self::SubclassEqMixin* + synthetic constructor •() → self::SubclassEqMixin ; method method() → dynamic ; } abstract class SubclassExtendsMixin extends self::ClassExtendsMixin { - synthetic constructor •() → self::SubclassExtendsMixin* + synthetic constructor •() → self::SubclassExtendsMixin ; method method() → dynamic ; diff --git a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.transformed.expect index 3b87509beea..1350fad1641 100644 --- a/pkg/front_end/testcases/general/mixin_stubs.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_stubs.dart.weak.transformed.expect @@ -1,28 +1,18 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class Super extends core::Object { - synthetic constructor •() → self::Super* + synthetic constructor •() → self::Super : super core::Object::•() ; method concreteExtendsConcreteMixin() → void {} method concreteExtendsAbstractMixin() → void {} abstract method abstractExtendsConcreteMixin() → void; abstract method abstractExtendsAbstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class MixinClass extends core::Object { - synthetic constructor •() → self::MixinClass* + synthetic constructor •() → self::MixinClass : super core::Object::•() ; method concreteExtendsConcreteMixin() → void {} @@ -31,16 +21,6 @@ abstract class MixinClass extends core::Object { method abstractExtendsConcreteMixin() → void {} abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Mixin extends core::Object /*isMixinDeclaration*/ { method concreteExtendsConcreteMixin() → void {} @@ -49,19 +29,9 @@ abstract class Mixin extends core::Object /*isMixinDeclaration*/ { method abstractExtendsConcreteMixin() → void {} abstract method abstractExtendsAbstractMixin() → void; abstract method abstractMixin() → void; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class ClassEqMixinClass extends self::Super implements self::MixinClass /*isEliminatedMixin*/ { - synthetic constructor •() → self::ClassEqMixinClass* + synthetic constructor •() → self::ClassEqMixinClass : super self::Super::•() ; method concreteExtendsConcreteMixin() → void {} @@ -72,7 +42,7 @@ abstract class ClassEqMixinClass extends self::Super implements self::MixinClass abstract method abstractMixin() → void; } abstract class _ClassExtendsMixinClass&Super&MixinClass extends self::Super implements self::MixinClass /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass* + synthetic constructor •() → self::_ClassExtendsMixinClass&Super&MixinClass : super self::Super::•() ; method concreteExtendsConcreteMixin() → void {} @@ -83,12 +53,12 @@ abstract class _ClassExtendsMixinClass&Super&MixinClass extends self::Super impl abstract method abstractMixin() → void; } abstract class ClassExtendsMixinClass extends self::_ClassExtendsMixinClass&Super&MixinClass { - synthetic constructor •() → self::ClassExtendsMixinClass* + synthetic constructor •() → self::ClassExtendsMixinClass : super self::_ClassExtendsMixinClass&Super&MixinClass::•() ; } abstract class ClassEqMixin extends self::Super implements self::Mixin /*isEliminatedMixin*/ { - synthetic constructor •() → self::ClassEqMixin* + synthetic constructor •() → self::ClassEqMixin : super self::Super::•() ; method concreteExtendsConcreteMixin() → void {} @@ -99,7 +69,7 @@ abstract class ClassEqMixin extends self::Super implements self::Mixin /*isElimi abstract method abstractMixin() → void; } abstract class _ClassExtendsMixin&Super&Mixin extends self::Super implements self::Mixin /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin* + synthetic constructor •() → self::_ClassExtendsMixin&Super&Mixin : super self::Super::•() ; method concreteExtendsConcreteMixin() → void {} @@ -110,21 +80,21 @@ abstract class _ClassExtendsMixin&Super&Mixin extends self::Super implements sel abstract method abstractMixin() → void; } abstract class ClassExtendsMixin extends self::_ClassExtendsMixin&Super&Mixin { - synthetic constructor •() → self::ClassExtendsMixin* + synthetic constructor •() → self::ClassExtendsMixin : super self::_ClassExtendsMixin&Super&Mixin::•() ; } abstract class SubclassEqMixinClass extends self::ClassEqMixinClass { - synthetic constructor •() → self::SubclassEqMixinClass* + synthetic constructor •() → self::SubclassEqMixinClass : super self::ClassEqMixinClass::•() ; method method() → dynamic { - this.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixinClass::concreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixinClass::abstractMixin}(){() →* void}; + this.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::concreteExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixinClass::concreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixinClass::abstractMixin}(){() → void}; super.{self::ClassEqMixinClass::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::ClassEqMixinClass::concreteMixin}(); @@ -132,16 +102,16 @@ abstract class SubclassEqMixinClass extends self::ClassEqMixinClass { } } abstract class SubclassExtendsMixinClass extends self::ClassExtendsMixinClass { - synthetic constructor •() → self::SubclassExtendsMixinClass* + synthetic constructor •() → self::SubclassExtendsMixinClass : super self::ClassExtendsMixinClass::•() ; method method() → dynamic { - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractMixin}(){() →* void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixinClass&Super&MixinClass::abstractMixin}(){() → void}; super.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::_ClassExtendsMixinClass&Super&MixinClass::concreteMixin}(); @@ -149,16 +119,16 @@ abstract class SubclassExtendsMixinClass extends self::ClassExtendsMixinClass { } } abstract class SubclassEqMixin extends self::ClassEqMixin { - synthetic constructor •() → self::SubclassEqMixin* + synthetic constructor •() → self::SubclassEqMixin : super self::ClassEqMixin::•() ; method method() → dynamic { - this.{self::ClassEqMixin::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixin::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixin::concreteMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::ClassEqMixin::abstractMixin}(){() →* void}; + this.{self::ClassEqMixin::concreteExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixin::concreteExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixin::concreteMixin}(){() → void}; + this.{self::ClassEqMixin::abstractExtendsConcreteMixin}(){() → void}; + this.{self::ClassEqMixin::abstractExtendsAbstractMixin}(){() → void}; + this.{self::ClassEqMixin::abstractMixin}(){() → void}; super.{self::ClassEqMixin::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::ClassEqMixin::concreteMixin}(); @@ -166,16 +136,16 @@ abstract class SubclassEqMixin extends self::ClassEqMixin { } } abstract class SubclassExtendsMixin extends self::ClassExtendsMixin { - synthetic constructor •() → self::SubclassExtendsMixin* + synthetic constructor •() → self::SubclassExtendsMixin : super self::ClassExtendsMixin::•() ; method method() → dynamic { - this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsConcreteMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsAbstractMixin}(){() →* void}; - this.{self::_ClassExtendsMixin&Super&Mixin::abstractMixin}(){() →* void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsConcreteMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractExtendsAbstractMixin}(){() → void}; + this.{self::_ClassExtendsMixin&Super&Mixin::abstractMixin}(){() → void}; super.{self::_ClassExtendsMixin&Super&Mixin::concreteExtendsConcreteMixin}(); super.{self::Super::concreteExtendsAbstractMixin}(); super.{self::_ClassExtendsMixin&Super&Mixin::concreteMixin}(); diff --git a/pkg/front_end/testcases/general/mixin_super_repeated.dart b/pkg/front_end/testcases/general/mixin_super_repeated.dart index f8fcad76b19..e9453fd16c3 100644 --- a/pkg/front_end/testcases/general/mixin_super_repeated.dart +++ b/pkg/front_end/testcases/general/mixin_super_repeated.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + abstract class M { var m; } diff --git a/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline.expect index 9975f5cddb5..e92d32e1c69 100644 --- a/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class M { var m; } diff --git a/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline_modelled.expect index 5f64874460e..2d9c4d4c702 100644 --- a/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_super_repeated.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class M { var m; } diff --git a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.expect b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.expect index 526ec743c75..5ed308d75ca 100644 --- a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.expect @@ -1,25 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class M extends core::Object { field dynamic m = null; - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N extends self::M { - synthetic constructor •() → self::N* + synthetic constructor •() → self::N : super self::M::•() ; set superM(dynamic value) → void { @@ -29,22 +19,12 @@ abstract class N extends self::M { return super.{self::M::m}; } class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Named&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Named&S&M* + synthetic constructor •() → self::_Named&S&M : super self::S::•() ; mixin-super-stub get m() → dynamic @@ -53,7 +33,7 @@ abstract class _Named&S&M = self::S with self::M /*isAnonymousMixin*/ { return super.{self::M::m} = value; } abstract class _Named&S&M&N = self::_Named&S&M with self::N /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Named&S&M&N* + synthetic constructor •() → self::_Named&S&M&N : super self::_Named&S&M::•() ; mixin-super-stub get superM() → dynamic @@ -62,7 +42,7 @@ abstract class _Named&S&M&N = self::_Named&S&M with self::N /*isAnonymousMixin*/ return super.{self::N::superM} = value; } class Named = self::_Named&S&M&N with self::M { - synthetic constructor •() → self::Named* + synthetic constructor •() → self::Named : super self::_Named&S&M&N::•() ; mixin-super-stub get m() → dynamic @@ -71,13 +51,13 @@ class Named = self::_Named&S&M&N with self::M { return super.{self::M::m} = value; } static method main() → dynamic { - self::Named* named = new self::Named::•(); + self::Named named = new self::Named::•(); named.{self::Named::m} = 42; named.{self::_Named&S&M&N::superM} = 87; - if(!(named.{self::Named::m}{dynamic} =={core::Object::==}{(core::Object*) →* core::bool*} 42)) { + if(!(named.{self::Named::m}{dynamic} =={core::Object::==}{(core::Object) → core::bool} 42)) { throw "Bad mixin translation of set:superM"; } - if(!(named.{self::_Named&S&M&N::superM}{dynamic} =={core::Object::==}{(core::Object*) →* core::bool*} 87)) { + if(!(named.{self::_Named&S&M&N::superM}{dynamic} =={core::Object::==}{(core::Object) → core::bool} 87)) { throw "Bad mixin translation of get:superM"; } } diff --git a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.modular.expect index 526ec743c75..5ed308d75ca 100644 --- a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.modular.expect @@ -1,25 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class M extends core::Object { field dynamic m = null; - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N extends self::M { - synthetic constructor •() → self::N* + synthetic constructor •() → self::N : super self::M::•() ; set superM(dynamic value) → void { @@ -29,22 +19,12 @@ abstract class N extends self::M { return super.{self::M::m}; } class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Named&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Named&S&M* + synthetic constructor •() → self::_Named&S&M : super self::S::•() ; mixin-super-stub get m() → dynamic @@ -53,7 +33,7 @@ abstract class _Named&S&M = self::S with self::M /*isAnonymousMixin*/ { return super.{self::M::m} = value; } abstract class _Named&S&M&N = self::_Named&S&M with self::N /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Named&S&M&N* + synthetic constructor •() → self::_Named&S&M&N : super self::_Named&S&M::•() ; mixin-super-stub get superM() → dynamic @@ -62,7 +42,7 @@ abstract class _Named&S&M&N = self::_Named&S&M with self::N /*isAnonymousMixin*/ return super.{self::N::superM} = value; } class Named = self::_Named&S&M&N with self::M { - synthetic constructor •() → self::Named* + synthetic constructor •() → self::Named : super self::_Named&S&M&N::•() ; mixin-super-stub get m() → dynamic @@ -71,13 +51,13 @@ class Named = self::_Named&S&M&N with self::M { return super.{self::M::m} = value; } static method main() → dynamic { - self::Named* named = new self::Named::•(); + self::Named named = new self::Named::•(); named.{self::Named::m} = 42; named.{self::_Named&S&M&N::superM} = 87; - if(!(named.{self::Named::m}{dynamic} =={core::Object::==}{(core::Object*) →* core::bool*} 42)) { + if(!(named.{self::Named::m}{dynamic} =={core::Object::==}{(core::Object) → core::bool} 42)) { throw "Bad mixin translation of set:superM"; } - if(!(named.{self::_Named&S&M&N::superM}{dynamic} =={core::Object::==}{(core::Object*) →* core::bool*} 87)) { + if(!(named.{self::_Named&S&M&N::superM}{dynamic} =={core::Object::==}{(core::Object) → core::bool} 87)) { throw "Bad mixin translation of get:superM"; } } diff --git a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.outline.expect index 1a4626c2609..48f57f8697c 100644 --- a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.outline.expect @@ -1,24 +1,14 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class M extends core::Object { field dynamic m; - synthetic constructor •() → self::M* + synthetic constructor •() → self::M ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N extends self::M { - synthetic constructor •() → self::N* + synthetic constructor •() → self::N ; set superM(dynamic value) → void ; @@ -26,21 +16,11 @@ abstract class N extends self::M { ; } class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Named&S&M = self::S with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Named&S&M* + synthetic constructor •() → self::_Named&S&M : super self::S::•() ; mixin-super-stub get m() → dynamic @@ -49,7 +29,7 @@ abstract class _Named&S&M = self::S with self::M /*isAnonymousMixin*/ { return super.{self::M::m} = value; } abstract class _Named&S&M&N = self::_Named&S&M with self::N /*isAnonymousMixin*/ { - synthetic constructor •() → self::_Named&S&M&N* + synthetic constructor •() → self::_Named&S&M&N : super self::_Named&S&M::•() ; mixin-super-stub get superM() → dynamic @@ -58,7 +38,7 @@ abstract class _Named&S&M&N = self::_Named&S&M with self::N /*isAnonymousMixin*/ return super.{self::N::superM} = value; } class Named = self::_Named&S&M&N with self::M { - synthetic constructor •() → self::Named* + synthetic constructor •() → self::Named : super self::_Named&S&M&N::•() ; mixin-super-stub get m() → dynamic diff --git a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.transformed.expect index e0aa9ba57ce..94d705863cf 100644 --- a/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_super_repeated.dart.weak.transformed.expect @@ -1,25 +1,15 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class M extends core::Object { field dynamic m = null; - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class N extends self::M { - synthetic constructor •() → self::N* + synthetic constructor •() → self::N : super self::M::•() ; set superM(dynamic value) → void { @@ -29,28 +19,18 @@ abstract class N extends self::M { return super.{self::M::m}; } class S extends core::Object { - synthetic constructor •() → self::S* + synthetic constructor •() → self::S : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class _Named&S&M extends self::S implements self::M /*isAnonymousMixin,isEliminatedMixin*/ { field dynamic m = null; - synthetic constructor •() → self::_Named&S&M* + synthetic constructor •() → self::_Named&S&M : super self::S::•() ; } abstract class _Named&S&M&N extends self::_Named&S&M implements self::N /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •() → self::_Named&S&M&N* + synthetic constructor •() → self::_Named&S&M&N : super self::_Named&S&M::•() ; get superM() → dynamic @@ -61,18 +41,18 @@ abstract class _Named&S&M&N extends self::_Named&S&M implements self::N /*isAnon } class Named extends self::_Named&S&M&N implements self::M /*isEliminatedMixin*/ { field dynamic m = null; - synthetic constructor •() → self::Named* + synthetic constructor •() → self::Named : super self::_Named&S&M&N::•() ; } static method main() → dynamic { - self::Named* named = new self::Named::•(); + self::Named named = new self::Named::•(); named.{self::Named::m} = 42; named.{self::_Named&S&M&N::superM} = 87; - if(!(named.{self::Named::m}{dynamic} =={core::Object::==}{(core::Object*) →* core::bool*} 42)) { + if(!(named.{self::Named::m}{dynamic} =={core::Object::==}{(core::Object) → core::bool} 42)) { throw "Bad mixin translation of set:superM"; } - if(!(named.{self::_Named&S&M&N::superM}{dynamic} =={core::Object::==}{(core::Object*) →* core::bool*} 87)) { + if(!(named.{self::_Named&S&M&N::superM}{dynamic} =={core::Object::==}{(core::Object) → core::bool} 87)) { throw "Bad mixin translation of get:superM"; } } diff --git a/pkg/front_end/testcases/general/mixin_with_static_member.dart b/pkg/front_end/testcases/general/mixin_with_static_member.dart index 2737bb4c332..954d649f805 100644 --- a/pkg/front_end/testcases/general/mixin_with_static_member.dart +++ b/pkg/front_end/testcases/general/mixin_with_static_member.dart @@ -1,15 +1,15 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class A extends B with M {} class B { - final Object m = null; + final Object m = new Object(); } class M { - static Object m() => null; + static Object m() => new Object(); } main() { diff --git a/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline.expect index 4b1e84feda6..460aed50315 100644 --- a/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline.expect @@ -1,12 +1,11 @@ -// @dart = 2.9 class A extends B with M {} class B { - final Object m = null; + final Object m = new Object(); } class M { - static Object m() => null; + static Object m() => new Object(); } main() {} diff --git a/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline_modelled.expect index 4b1e84feda6..460aed50315 100644 --- a/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/mixin_with_static_member.dart.textual_outline_modelled.expect @@ -1,12 +1,11 @@ -// @dart = 2.9 class A extends B with M {} class B { - final Object m = null; + final Object m = new Object(); } class M { - static Object m() => null; + static Object m() => new Object(); } main() {} diff --git a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.expect b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.expect index e89e5370b5d..bfa81881efc 100644 --- a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.expect +++ b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.expect @@ -1,49 +1,29 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _A&B&M = self::B with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A&B&M* + synthetic constructor •() → self::_A&B&M : super self::B::•() ; } class A extends self::_A&B&M { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super self::_A&B&M::•() ; } class B extends core::Object { - final field core::Object* m = null; - synthetic constructor •() → self::B* + final field core::Object m = new core::Object::•(); + synthetic constructor •() → self::B : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - static method m() → core::Object* - return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static method m() → core::Object + return new core::Object::•(); } static method main() → dynamic { new self::A::•(); diff --git a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.modular.expect b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.modular.expect index e89e5370b5d..bfa81881efc 100644 --- a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.modular.expect @@ -1,49 +1,29 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _A&B&M = self::B with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A&B&M* + synthetic constructor •() → self::_A&B&M : super self::B::•() ; } class A extends self::_A&B&M { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super self::_A&B&M::•() ; } class B extends core::Object { - final field core::Object* m = null; - synthetic constructor •() → self::B* + final field core::Object m = new core::Object::•(); + synthetic constructor •() → self::B : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - static method m() → core::Object* - return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static method m() → core::Object + return new core::Object::•(); } static method main() → dynamic { new self::A::•(); diff --git a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.outline.expect b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.outline.expect index 8799c3a966b..2b5e162c2a2 100644 --- a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.outline.expect @@ -1,46 +1,26 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _A&B&M = self::B with self::M /*isAnonymousMixin*/ { - synthetic constructor •() → self::_A&B&M* + synthetic constructor •() → self::_A&B&M : super self::B::•() ; } class A extends self::_A&B&M { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A ; } class B extends core::Object { - final field core::Object* m; - synthetic constructor •() → self::B* + final field core::Object m; + synthetic constructor •() → self::B ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M ; - static method m() → core::Object* + static method m() → core::Object ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.transformed.expect b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.transformed.expect index 29e04643d65..d81db035921 100644 --- a/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/mixin_with_static_member.dart.weak.transformed.expect @@ -1,51 +1,31 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; abstract class _A&B&M extends self::B implements self::M /*isAnonymousMixin,isEliminatedMixin*/ { - synthetic constructor •() → self::_A&B&M* + synthetic constructor •() → self::_A&B&M : super self::B::•() ; - static method m() → core::Object* - return null; + static method m() → core::Object + return new core::Object::•(); } class A extends self::_A&B&M { - synthetic constructor •() → self::A* + synthetic constructor •() → self::A : super self::_A&B&M::•() ; } class B extends core::Object { - final field core::Object* m = null; - synthetic constructor •() → self::B* + final field core::Object m = new core::Object::•(); + synthetic constructor •() → self::B : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class M extends core::Object { - synthetic constructor •() → self::M* + synthetic constructor •() → self::M : super core::Object::•() ; - static method m() → core::Object* - return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + static method m() → core::Object + return new core::Object::•(); } static method main() → dynamic { new self::A::•(); diff --git a/pkg/front_end/testcases/general/named_function_scope.dart b/pkg/front_end/testcases/general/named_function_scope.dart index 0a78452a548..bfb0a73638f 100644 --- a/pkg/front_end/testcases/general/named_function_scope.dart +++ b/pkg/front_end/testcases/general/named_function_scope.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class T {} class V {} @@ -53,17 +53,17 @@ test() { } { T t; - T T() {} + T T() => throw ''; } { - T T() {} + T T() => throw ''; } { T t; - T T(T t) {} + T T(T t) => t; } { - T T(T t) {} + T T(T t) => t; } { void T(T t) {} diff --git a/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline.expect b/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline.expect index 9fe26ce5c1d..b05a61bb1b3 100644 --- a/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class T {} class V {} diff --git a/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline_modelled.expect index 9fe26ce5c1d..b05a61bb1b3 100644 --- a/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/named_function_scope.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class T {} class V {} diff --git a/pkg/front_end/testcases/general/named_function_scope.dart.weak.expect b/pkg/front_end/testcases/general/named_function_scope.dart.weak.expect index 8ae3c40e396..18cd85ebe54 100644 --- a/pkg/front_end/testcases/general/named_function_scope.dart.weak.expect +++ b/pkg/front_end/testcases/general/named_function_scope.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -50,31 +50,31 @@ library; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:56:7: Error: Can't declare 'T' because it was already used in this scope. -// T T() {} +// T T() => throw ''; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:55:5: Context: Previous use of 'T'. // T t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:59:7: Error: Can't declare 'T' because it was already used in this scope. -// T T() {} +// T T() => throw ''; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:59:5: Context: Previous use of 'T'. -// T T() {} +// T T() => throw ''; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:63:7: Error: Can't declare 'T' because it was already used in this scope. -// T T(T t) {} +// T T(T t) => t; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:62:5: Context: Previous use of 'T'. // T t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:66:7: Error: Can't declare 'T' because it was already used in this scope. -// T T(T t) {} +// T T(T t) => t; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:66:5: Context: Previous use of 'T'. -// T T(T t) {} +// T T(T t) => t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:69:12: Error: 'T' isn't a type. @@ -85,38 +85,18 @@ import self as self; import "dart:core" as core; class T extends core::Object { - synthetic constructor •() → self::T* + synthetic constructor •() → self::T : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class V extends core::Object { - synthetic constructor •() → self::V* + synthetic constructor •() → self::V : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method test() → dynamic { - self::T* t; - self::V* v; + self::T t; + self::V v; { function T() → Null {} } @@ -124,68 +104,72 @@ static method test() → dynamic { dynamic v; } { - self::T* t; - () →* Null x = let final () →* Null T = () → Null {} in T; + self::T t; + () → Null x = let final () → Null T = () → Null {} in T; } { - self::V* v; + self::V v; invalid-type V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:31:9: Error: Can't declare 'V' because it was already used in this scope. var V; ^"; } { - self::V* v; + self::V v; invalid-type V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:36:9: Error: Can't declare 'V' because it was already used in this scope. var V = null; ^" in null; } { - () →* Null x = let final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:41:15: Error: Can't declare 'T' because it was already used in this scope. + () → Null x = let final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:41:15: Error: Can't declare 'T' because it was already used in this scope. var x = T T() {}; - ^" in let final () →* Null T = () → Null {} in T; + ^" in let final () → Null T = () → Null {} in T; } { - self::V* V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:47:7: Error: Can't declare 'V' because it was already used in this scope. + self::V V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:47:7: Error: Can't declare 'V' because it was already used in this scope. V V; ^"; } { - () →* Null x = let final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:52:13: Error: 'T' is already declared in this scope. + () → Null x = let final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:52:13: Error: 'T' is already declared in this scope. var x = T() {}; - ^" in let final () →* Null T = () → Null {} in T; + ^" in let final () → Null T = () → Null {} in T; } { - self::T* t; + self::T t; { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:56:7: Error: Can't declare 'T' because it was already used in this scope. - T T() {} + T T() => throw ''; ^"; - function T() → self::T* {} + function T() → self::T + return throw ""; } } { { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:59:7: Error: Can't declare 'T' because it was already used in this scope. - T T() {} + T T() => throw ''; ^"; - function T() → self::T* {} + function T() → self::T + return throw ""; } } { - self::T* t; + self::T t; { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:63:7: Error: Can't declare 'T' because it was already used in this scope. - T T(T t) {} + T T(T t) => t; ^"; - function T(self::T* t) → self::T* {} + function T(self::T t) → self::T + return t; } } { { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:66:7: Error: Can't declare 'T' because it was already used in this scope. - T T(T t) {} + T T(T t) => t; ^"; - function T(self::T* t) → self::T* {} + function T(self::T t) → self::T + return t; } } { diff --git a/pkg/front_end/testcases/general/named_function_scope.dart.weak.modular.expect b/pkg/front_end/testcases/general/named_function_scope.dart.weak.modular.expect index 8ae3c40e396..18cd85ebe54 100644 --- a/pkg/front_end/testcases/general/named_function_scope.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/named_function_scope.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -50,31 +50,31 @@ library; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:56:7: Error: Can't declare 'T' because it was already used in this scope. -// T T() {} +// T T() => throw ''; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:55:5: Context: Previous use of 'T'. // T t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:59:7: Error: Can't declare 'T' because it was already used in this scope. -// T T() {} +// T T() => throw ''; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:59:5: Context: Previous use of 'T'. -// T T() {} +// T T() => throw ''; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:63:7: Error: Can't declare 'T' because it was already used in this scope. -// T T(T t) {} +// T T(T t) => t; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:62:5: Context: Previous use of 'T'. // T t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:66:7: Error: Can't declare 'T' because it was already used in this scope. -// T T(T t) {} +// T T(T t) => t; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:66:5: Context: Previous use of 'T'. -// T T(T t) {} +// T T(T t) => t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:69:12: Error: 'T' isn't a type. @@ -85,38 +85,18 @@ import self as self; import "dart:core" as core; class T extends core::Object { - synthetic constructor •() → self::T* + synthetic constructor •() → self::T : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class V extends core::Object { - synthetic constructor •() → self::V* + synthetic constructor •() → self::V : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method test() → dynamic { - self::T* t; - self::V* v; + self::T t; + self::V v; { function T() → Null {} } @@ -124,68 +104,72 @@ static method test() → dynamic { dynamic v; } { - self::T* t; - () →* Null x = let final () →* Null T = () → Null {} in T; + self::T t; + () → Null x = let final () → Null T = () → Null {} in T; } { - self::V* v; + self::V v; invalid-type V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:31:9: Error: Can't declare 'V' because it was already used in this scope. var V; ^"; } { - self::V* v; + self::V v; invalid-type V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:36:9: Error: Can't declare 'V' because it was already used in this scope. var V = null; ^" in null; } { - () →* Null x = let final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:41:15: Error: Can't declare 'T' because it was already used in this scope. + () → Null x = let final dynamic #t1 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:41:15: Error: Can't declare 'T' because it was already used in this scope. var x = T T() {}; - ^" in let final () →* Null T = () → Null {} in T; + ^" in let final () → Null T = () → Null {} in T; } { - self::V* V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:47:7: Error: Can't declare 'V' because it was already used in this scope. + self::V V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:47:7: Error: Can't declare 'V' because it was already used in this scope. V V; ^"; } { - () →* Null x = let final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:52:13: Error: 'T' is already declared in this scope. + () → Null x = let final dynamic #t2 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:52:13: Error: 'T' is already declared in this scope. var x = T() {}; - ^" in let final () →* Null T = () → Null {} in T; + ^" in let final () → Null T = () → Null {} in T; } { - self::T* t; + self::T t; { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:56:7: Error: Can't declare 'T' because it was already used in this scope. - T T() {} + T T() => throw ''; ^"; - function T() → self::T* {} + function T() → self::T + return throw ""; } } { { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:59:7: Error: Can't declare 'T' because it was already used in this scope. - T T() {} + T T() => throw ''; ^"; - function T() → self::T* {} + function T() → self::T + return throw ""; } } { - self::T* t; + self::T t; { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:63:7: Error: Can't declare 'T' because it was already used in this scope. - T T(T t) {} + T T(T t) => t; ^"; - function T(self::T* t) → self::T* {} + function T(self::T t) → self::T + return t; } } { { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:66:7: Error: Can't declare 'T' because it was already used in this scope. - T T(T t) {} + T T(T t) => t; ^"; - function T(self::T* t) → self::T* {} + function T(self::T t) → self::T + return t; } } { diff --git a/pkg/front_end/testcases/general/named_function_scope.dart.weak.outline.expect b/pkg/front_end/testcases/general/named_function_scope.dart.weak.outline.expect index 7d88d261779..67307296772 100644 --- a/pkg/front_end/testcases/general/named_function_scope.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/named_function_scope.dart.weak.outline.expect @@ -1,34 +1,14 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class T extends core::Object { - synthetic constructor •() → self::T* + synthetic constructor •() → self::T ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class V extends core::Object { - synthetic constructor •() → self::V* + synthetic constructor •() → self::V ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method test() → dynamic ; diff --git a/pkg/front_end/testcases/general/named_function_scope.dart.weak.transformed.expect b/pkg/front_end/testcases/general/named_function_scope.dart.weak.transformed.expect index c14d8e67ce2..b2b67d29a40 100644 --- a/pkg/front_end/testcases/general/named_function_scope.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/named_function_scope.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; // // Problems in library: // @@ -50,31 +50,31 @@ library; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:56:7: Error: Can't declare 'T' because it was already used in this scope. -// T T() {} +// T T() => throw ''; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:55:5: Context: Previous use of 'T'. // T t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:59:7: Error: Can't declare 'T' because it was already used in this scope. -// T T() {} +// T T() => throw ''; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:59:5: Context: Previous use of 'T'. -// T T() {} +// T T() => throw ''; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:63:7: Error: Can't declare 'T' because it was already used in this scope. -// T T(T t) {} +// T T(T t) => t; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:62:5: Context: Previous use of 'T'. // T t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:66:7: Error: Can't declare 'T' because it was already used in this scope. -// T T(T t) {} +// T T(T t) => t; // ^ // pkg/front_end/testcases/general/named_function_scope.dart:66:5: Context: Previous use of 'T'. -// T T(T t) {} +// T T(T t) => t; // ^ // // pkg/front_end/testcases/general/named_function_scope.dart:69:12: Error: 'T' isn't a type. @@ -85,38 +85,18 @@ import self as self; import "dart:core" as core; class T extends core::Object { - synthetic constructor •() → self::T* + synthetic constructor •() → self::T : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class V extends core::Object { - synthetic constructor •() → self::V* + synthetic constructor •() → self::V : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method test() → dynamic { - self::T* t; - self::V* v; + self::T t; + self::V v; { function T() → Null {} } @@ -124,68 +104,72 @@ static method test() → dynamic { dynamic v; } { - self::T* t; - () →* Null x = let final () →* Null T = () → Null {} in T; + self::T t; + () → Null x = let final () → Null T = () → Null {} in T; } { - self::V* v; + self::V v; invalid-type V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:31:9: Error: Can't declare 'V' because it was already used in this scope. var V; ^"; } { - self::V* v; + self::V v; invalid-type V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:36:9: Error: Can't declare 'V' because it was already used in this scope. var V = null; ^" in null; } { - () →* Null x = let final invalid-type #t1 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:41:15: Error: Can't declare 'T' because it was already used in this scope. + () → Null x = let final invalid-type #t1 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:41:15: Error: Can't declare 'T' because it was already used in this scope. var x = T T() {}; - ^" in let final () →* Null T = () → Null {} in T; + ^" in let final () → Null T = () → Null {} in T; } { - self::V* V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:47:7: Error: Can't declare 'V' because it was already used in this scope. + self::V V = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:47:7: Error: Can't declare 'V' because it was already used in this scope. V V; ^"; } { - () →* Null x = let final invalid-type #t2 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:52:13: Error: 'T' is already declared in this scope. + () → Null x = let final invalid-type #t2 = invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:52:13: Error: 'T' is already declared in this scope. var x = T() {}; - ^" in let final () →* Null T = () → Null {} in T; + ^" in let final () → Null T = () → Null {} in T; } { - self::T* t; + self::T t; { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:56:7: Error: Can't declare 'T' because it was already used in this scope. - T T() {} + T T() => throw ''; ^"; - function T() → self::T* {} + function T() → self::T + return throw ""; } } { { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:59:7: Error: Can't declare 'T' because it was already used in this scope. - T T() {} + T T() => throw ''; ^"; - function T() → self::T* {} + function T() → self::T + return throw ""; } } { - self::T* t; + self::T t; { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:63:7: Error: Can't declare 'T' because it was already used in this scope. - T T(T t) {} + T T(T t) => t; ^"; - function T(self::T* t) → self::T* {} + function T(self::T t) → self::T + return t; } } { { invalid-expression "pkg/front_end/testcases/general/named_function_scope.dart:66:7: Error: Can't declare 'T' because it was already used in this scope. - T T(T t) {} + T T(T t) => t; ^"; - function T(self::T* t) → self::T* {} + function T(self::T t) → self::T + return t; } } { diff --git a/pkg/front_end/testcases/general/named_parameters.dart b/pkg/front_end/testcases/general/named_parameters.dart index a2685613823..a1892c6d00b 100644 --- a/pkg/front_end/testcases/general/named_parameters.dart +++ b/pkg/front_end/testcases/general/named_parameters.dart @@ -1,10 +1,10 @@ // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + class Superclass { foo({alpha, beta}) {} bar({beta, alpha}) {} -// @dart=2.9 namedCallback(callback({String alpha, int beta})) { callback(alpha: 'one', beta: 2); callback(beta: 1, alpha: 'two'); diff --git a/pkg/front_end/testcases/general/native_as_name.dart b/pkg/front_end/testcases/general/native_as_name.dart index 02e41561d7e..f22c361ab56 100644 --- a/pkg/front_end/testcases/general/native_as_name.dart +++ b/pkg/front_end/testcases/general/native_as_name.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + main() { print(new W().native); print(new X().native()); @@ -29,5 +29,5 @@ class Y2 extends Y1 { class Z { set native(String s) => f = s; - String f; + String? f; } diff --git a/pkg/front_end/testcases/general/native_as_name.dart.textual_outline.expect b/pkg/front_end/testcases/general/native_as_name.dart.textual_outline.expect index 30a75506211..7617a873278 100644 --- a/pkg/front_end/testcases/general/native_as_name.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/native_as_name.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 main() {} class W { @@ -21,5 +20,5 @@ class Y2 extends Y1 { class Z { set native(String s) => f = s; - String f; + String? f; } diff --git a/pkg/front_end/testcases/general/native_as_name.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/native_as_name.dart.textual_outline_modelled.expect index 0517e7f91bf..d44851f0d87 100644 --- a/pkg/front_end/testcases/general/native_as_name.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/native_as_name.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 abstract class Y1 { String get native; } @@ -18,7 +17,7 @@ class Y2 extends Y1 { } class Z { - String f; + String? f; set native(String s) => f = s; } diff --git a/pkg/front_end/testcases/general/native_as_name.dart.weak.expect b/pkg/front_end/testcases/general/native_as_name.dart.weak.expect index f85423d77c3..236f30c8aa4 100644 --- a/pkg/front_end/testcases/general/native_as_name.dart.weak.expect +++ b/pkg/front_end/testcases/general/native_as_name.dart.weak.expect @@ -1,89 +1,49 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class W extends core::Object { - field core::String* native; - constructor •() → self::W* + field core::String native; + constructor •() → self::W : self::W::native = "field", super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X : super core::Object::•() ; - method native() → core::String* + method native() → core::String return "method"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Y1 extends core::Object { - synthetic constructor •() → self::Y1* + synthetic constructor •() → self::Y1 : super core::Object::•() ; - abstract get native() → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract get native() → core::String; } class Y2 extends self::Y1 { - synthetic constructor •() → self::Y2* + synthetic constructor •() → self::Y2 : super self::Y1::•() ; @#C1 - get native() → core::String* + get native() → core::String return "getter"; } class Z extends core::Object { - field core::String* f = null; - synthetic constructor •() → self::Z* + field core::String? f = null; + synthetic constructor •() → self::Z : super core::Object::•() ; - set native(core::String* s) → void + set native(core::String s) → void return this.{self::Z::f} = s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - core::print(new self::W::•().{self::W::native}{core::String*}); - core::print(new self::X::•().{self::X::native}(){() →* core::String*}); - core::print(new self::Y2::•().{self::Y2::native}{core::String*}); - core::print((let final self::Z* #t1 = new self::Z::•() in block { + core::print(new self::W::•().{self::W::native}{core::String}); + core::print(new self::X::•().{self::X::native}(){() → core::String}); + core::print(new self::Y2::•().{self::Y2::native}{core::String}); + core::print((let final self::Z #t1 = new self::Z::•() in block { #t1.{self::Z::native} = "setter"; - } =>#t1).{self::Z::f}{core::String*}); + } =>#t1).{self::Z::f}{core::String?}); } constants { diff --git a/pkg/front_end/testcases/general/native_as_name.dart.weak.modular.expect b/pkg/front_end/testcases/general/native_as_name.dart.weak.modular.expect index f85423d77c3..236f30c8aa4 100644 --- a/pkg/front_end/testcases/general/native_as_name.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/native_as_name.dart.weak.modular.expect @@ -1,89 +1,49 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class W extends core::Object { - field core::String* native; - constructor •() → self::W* + field core::String native; + constructor •() → self::W : self::W::native = "field", super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X : super core::Object::•() ; - method native() → core::String* + method native() → core::String return "method"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Y1 extends core::Object { - synthetic constructor •() → self::Y1* + synthetic constructor •() → self::Y1 : super core::Object::•() ; - abstract get native() → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract get native() → core::String; } class Y2 extends self::Y1 { - synthetic constructor •() → self::Y2* + synthetic constructor •() → self::Y2 : super self::Y1::•() ; @#C1 - get native() → core::String* + get native() → core::String return "getter"; } class Z extends core::Object { - field core::String* f = null; - synthetic constructor •() → self::Z* + field core::String? f = null; + synthetic constructor •() → self::Z : super core::Object::•() ; - set native(core::String* s) → void + set native(core::String s) → void return this.{self::Z::f} = s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - core::print(new self::W::•().{self::W::native}{core::String*}); - core::print(new self::X::•().{self::X::native}(){() →* core::String*}); - core::print(new self::Y2::•().{self::Y2::native}{core::String*}); - core::print((let final self::Z* #t1 = new self::Z::•() in block { + core::print(new self::W::•().{self::W::native}{core::String}); + core::print(new self::X::•().{self::X::native}(){() → core::String}); + core::print(new self::Y2::•().{self::Y2::native}{core::String}); + core::print((let final self::Z #t1 = new self::Z::•() in block { #t1.{self::Z::native} = "setter"; - } =>#t1).{self::Z::f}{core::String*}); + } =>#t1).{self::Z::f}{core::String?}); } constants { diff --git a/pkg/front_end/testcases/general/native_as_name.dart.weak.outline.expect b/pkg/front_end/testcases/general/native_as_name.dart.weak.outline.expect index 27aedb439cc..bbae0cc552a 100644 --- a/pkg/front_end/testcases/general/native_as_name.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/native_as_name.dart.weak.outline.expect @@ -1,76 +1,36 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class W extends core::Object { - field core::String* native; - constructor •() → self::W* + field core::String native; + constructor •() → self::W ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X ; - method native() → core::String* + method native() → core::String ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Y1 extends core::Object { - synthetic constructor •() → self::Y1* + synthetic constructor •() → self::Y1 ; - abstract get native() → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract get native() → core::String; } class Y2 extends self::Y1 { - synthetic constructor •() → self::Y2* + synthetic constructor •() → self::Y2 ; @core::override - get native() → core::String* + get native() → core::String ; } class Z extends core::Object { - field core::String* f; - synthetic constructor •() → self::Z* + field core::String? f; + synthetic constructor •() → self::Z ; - set native(core::String* s) → void + set native(core::String s) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/native_as_name.dart.weak.transformed.expect b/pkg/front_end/testcases/general/native_as_name.dart.weak.transformed.expect index f85423d77c3..236f30c8aa4 100644 --- a/pkg/front_end/testcases/general/native_as_name.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/native_as_name.dart.weak.transformed.expect @@ -1,89 +1,49 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class W extends core::Object { - field core::String* native; - constructor •() → self::W* + field core::String native; + constructor •() → self::W : self::W::native = "field", super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X : super core::Object::•() ; - method native() → core::String* + method native() → core::String return "method"; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } abstract class Y1 extends core::Object { - synthetic constructor •() → self::Y1* + synthetic constructor •() → self::Y1 : super core::Object::•() ; - abstract get native() → core::String*; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract get native() → core::String; } class Y2 extends self::Y1 { - synthetic constructor •() → self::Y2* + synthetic constructor •() → self::Y2 : super self::Y1::•() ; @#C1 - get native() → core::String* + get native() → core::String return "getter"; } class Z extends core::Object { - field core::String* f = null; - synthetic constructor •() → self::Z* + field core::String? f = null; + synthetic constructor •() → self::Z : super core::Object::•() ; - set native(core::String* s) → void + set native(core::String s) → void return this.{self::Z::f} = s; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - core::print(new self::W::•().{self::W::native}{core::String*}); - core::print(new self::X::•().{self::X::native}(){() →* core::String*}); - core::print(new self::Y2::•().{self::Y2::native}{core::String*}); - core::print((let final self::Z* #t1 = new self::Z::•() in block { + core::print(new self::W::•().{self::W::native}{core::String}); + core::print(new self::X::•().{self::X::native}(){() → core::String}); + core::print(new self::Y2::•().{self::Y2::native}{core::String}); + core::print((let final self::Z #t1 = new self::Z::•() in block { #t1.{self::Z::native} = "setter"; - } =>#t1).{self::Z::f}{core::String*}); + } =>#t1).{self::Z::f}{core::String?}); } constants { diff --git a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart index 915e7dc0cb6..e797b0ef18b 100644 --- a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart +++ b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + const int foo = const int.fromEnvironment("fisk"); class A { diff --git a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline.expect b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline.expect index 31ede2763fc..0bad45da6f7 100644 --- a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 const int foo = const int.fromEnvironment("fisk"); class A { diff --git a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline_modelled.expect index 6e81cb6a4f5..c2ae67e05a0 100644 --- a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class A { const A(this.bar); final int bar; diff --git a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.expect b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.expect index ddcf830ed02..e401da04835 100644 --- a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.expect +++ b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.expect @@ -1,58 +1,28 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - final field core::int* bar; - const constructor •(core::int* bar) → self::A* + final field core::int bar; + const constructor •(core::int bar) → self::A : self::A::bar = bar, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object /*hasConstConstructor*/ { - final field self::A* baz; - const constructor •(self::A* baz) → self::B* + final field self::A baz; + const constructor •(self::A baz) → self::B : self::B::baz = baz, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; method fun() → dynamic { new self::B::•(new self::A::•(#C1)); } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static const field core::int* foo = #C1; +static const field core::int foo = #C1; static method main() → dynamic {} constants { diff --git a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.modular.expect b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.modular.expect index ddcf830ed02..e401da04835 100644 --- a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.modular.expect @@ -1,58 +1,28 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - final field core::int* bar; - const constructor •(core::int* bar) → self::A* + final field core::int bar; + const constructor •(core::int bar) → self::A : self::A::bar = bar, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object /*hasConstConstructor*/ { - final field self::A* baz; - const constructor •(self::A* baz) → self::B* + final field self::A baz; + const constructor •(self::A baz) → self::B : self::B::baz = baz, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; method fun() → dynamic { new self::B::•(new self::A::•(#C1)); } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static const field core::int* foo = #C1; +static const field core::int foo = #C1; static method main() → dynamic {} constants { diff --git a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.outline.expect b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.outline.expect index 2c8cde56236..fdbe3e34855 100644 --- a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.outline.expect @@ -1,56 +1,26 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - final field core::int* bar; - const constructor •(core::int* bar) → self::A* + final field core::int bar; + const constructor •(core::int bar) → self::A : self::A::bar = bar, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object /*hasConstConstructor*/ { - final field self::A* baz; - const constructor •(self::A* baz) → self::B* + final field self::A baz; + const constructor •(self::A baz) → self::B : self::B::baz = baz, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C ; method fun() → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static const field core::int* foo = const core::int::fromEnvironment("fisk"); +static const field core::int foo = const core::int::fromEnvironment("fisk"); static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.transformed.expect b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.transformed.expect index ddcf830ed02..e401da04835 100644 --- a/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/nested_implicit_const_with_env_var.dart.weak.transformed.expect @@ -1,58 +1,28 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class A extends core::Object /*hasConstConstructor*/ { - final field core::int* bar; - const constructor •(core::int* bar) → self::A* + final field core::int bar; + const constructor •(core::int bar) → self::A : self::A::bar = bar, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class B extends core::Object /*hasConstConstructor*/ { - final field self::A* baz; - const constructor •(self::A* baz) → self::B* + final field self::A baz; + const constructor •(self::A baz) → self::B : self::B::baz = baz, super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class C extends core::Object { - synthetic constructor •() → self::C* + synthetic constructor •() → self::C : super core::Object::•() ; method fun() → dynamic { new self::B::•(new self::A::•(#C1)); } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static const field core::int* foo = #C1; +static const field core::int foo = #C1; static method main() → dynamic {} constants { diff --git a/pkg/front_end/testcases/general/nested_property_set.dart b/pkg/front_end/testcases/general/nested_property_set.dart index 52559f0b972..ba6989bda8e 100644 --- a/pkg/front_end/testcases/general/nested_property_set.dart +++ b/pkg/front_end/testcases/general/nested_property_set.dart @@ -1,7 +1,9 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + class NumField { num field; } diff --git a/pkg/front_end/testcases/general/nested_variable_set.dart b/pkg/front_end/testcases/general/nested_variable_set.dart index b0fc13dd1c0..915afb371bd 100644 --- a/pkg/front_end/testcases/general/nested_variable_set.dart +++ b/pkg/front_end/testcases/general/nested_variable_set.dart @@ -1,7 +1,9 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + main() { int intLocal1; int intLocal2; diff --git a/pkg/front_end/testcases/general/nested_variance.dart b/pkg/front_end/testcases/general/nested_variance.dart index 94f1a0506b4..c1d23d35505 100644 --- a/pkg/front_end/testcases/general/nested_variance.dart +++ b/pkg/front_end/testcases/general/nested_variance.dart @@ -1,7 +1,9 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + // Testing that i2b and checks for correct super-boundedness are applied // to type arguments, taking the variance of type parameters into account. diff --git a/pkg/front_end/testcases/general/nested_variance2.dart b/pkg/front_end/testcases/general/nested_variance2.dart new file mode 100644 index 00000000000..e5d8f3c4227 --- /dev/null +++ b/pkg/front_end/testcases/general/nested_variance2.dart @@ -0,0 +1,242 @@ +// Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +// Testing that i2b and checks for correct super-boundedness are applied +// to type arguments, taking the variance of type parameters into account. + +// Standard type comparison support. + +typedef F = void Function(); +F toF(X x) => throw ''; + +// Material specific to this test. + +typedef Fcov = X Function(); +typedef Fcon = Function(X); +typedef Finv = X Function(X); + +class Acov, Y> {} + +class Acon, Y> {} + +class Ainv, Y> {} + +typedef FcovBound = X Function(); +typedef FconBound = Function(X); +typedef FinvBound = X Function(X); + +class AcovBound, Y extends num> {} + +class AconBound, Y extends num> {} + +class AinvBound, Y extends num> {} + +class A {} + +typedef FcovCyclicBound> = X Function(); +typedef FconCyclicBound> = Function(X); +typedef FinvCyclicBound> = X Function(X); + +class AcovCyclicBound, Y extends A> {} + +class AconCyclicBound, Y extends A> {} + +class AinvCyclicBound, Y extends A> {} + +typedef FcovCyclicCoBound = X Function(); +typedef FconCyclicCoBound = Function(X); +typedef FinvCyclicCoBound = X Function(X); + +class AcovCyclicCoBound, Y extends Function(Y)> { +} + +class AconCyclicCoBound, Y extends Function(Y)> { +} + +class AinvCyclicCoBound, Y extends Function(Y)> { +} + +class B {} + +void testTypeAliasAsTypeArgument( + Acov source1, + Acon source2, + Ainv source3, + AcovBound source4, + AconBound source5, + AinvBound source6, + AcovCyclicBound source7, + AconCyclicBound source8, + AcovCyclicCoBound source10, + AconCyclicCoBound source11, +) { + // I2b: Use bounds (Fcov, dynamic), then replace covariant occurrence + // (of `Y` in `Acov, _>`) by `Y`s value `dynamic`. Resulting type + // `Acov, dynamic>` is regular-bounded. + var fsource1 = toF(source1); + F, dynamic>> target1 = fsource1; + + // I2b: Use bounds (Fcon, dynamic), then replace contravariant occurrence + // (of `Y` in `Acon, _>`) by `Null`. Resulting type + // is super-bounded: Acon, Null> is regular-bounded. + var fsource2 = toF(source2); + F, dynamic>> target2 = fsource2; + + // I2b: Use bounds (Finv, dynamic) then replace invariant occurrence + // (of `Y` in `Ainv, _>`) by `Y`s value `dynamic`. Resulting type + // `Ainv, dynamic>` is regular-bounded. + var fsource3 = toF(source3); + F, dynamic>> target3 = fsource3; + + // I2b: Use bounds (FcovBound, num), then replace covariant occurrence + // (of `Y` in `AcovBound, _>`) by `Y`s value `num`. + // Resulting type `AcovBound, num>` is regular-bounded. + var fsource4 = toF(source4); + F, num>> target4 = fsource4; + + // I2b: Use bounds (FconBound, num), then replace contravariant occurrence + // of `Y` in `AconBound, _>` by `Never`. Resulting type is + // super-bounded: AconBound, num> is regular-bounded. + var fsource5 = toF(source5); + F, num>> target5 = fsource5; + + // I2b: Use bounds (FinvBound, num), then replace invariant occurrence + // of `Y` in `AinvBound, _>` by `Y`s value `num`. Resulting + // type `AinvBound, num>` is regular-bounded. + var fsource6 = toF(source6); + F, num>> target6 = fsource6; + + // I2b: Use bounds (FcovCyclicBound, A), then break cycle {Y} by + // replacing covariant occurrence of `Y` in `AcovCyclicBound<_, A>` + // by `dynamic`; then replace covariant occurrence of `Y` in + // `AcovCyclicBound, _>` by `Y`s value `A`. + // Resulting type `AcovCyclicBound>, A>>` + // is regular-bounded. + var fsource7 = toF(source7); + F>, A>> target7 = + fsource7; + + // I2b: Use bounds (FconCyclicBound, A), then break cycle {Y} by + // replacing covariant occurrence of `Y` in `AconCyclicBound<_, A>` + // by `dynamic`; then replace contravariant occurrence of `Y` in + // `AconCyclicBound, _>` by `Never`. + // Resulting type `AconCyclicBound, A>>` is + // super-bounded because `AconCyclicBound, A>>` + // is regular-bounded. + var fsource8 = toF(source8); + F, A>> target8 = fsource8; + + // I2b: Use bounds (FinvCyclicBound, A), then break cycle {Y} by + // replacing covariant occurrence of `Y` in `AinvCyclicBound<_, A>` + // by `dynamic`; then replace invariant occurrence of `Y` in + // `AinvCyclicBound, _>` by `Y`s value `A`. + // Resulting type `AinvCyclicBound>, A>>` + // looks regular-bounded, but contains `FinvCyclicBound>` which + // is not well-bounded. + AinvCyclicBound source9 = throw ''; //# 01: compile-time error + // var fsource9 = toF(source9); + // F>, A>> target9 = + // fsource9; + + // I2b: Use bounds (FcovCyclicCoBound, Function(Y)), then break cycle {Y} + // by replacing contravariant occurrence of `Y` in + // `AcovCyclicCoBound<_, Function(Y)>` by `Never`; then replace covariant + // occurrence of `Y` in `AcovCyclicCoBound, _>` by `Y`s + // value `Function(Never)`. Resulting type + // `AcovCyclicCoBound, Function(Null)>` + // is regular-bounded, with subterm `FcovCyclicCoBound` which + // is super-bounded because `FcovCyclicCoBound` is + // regular-bounded. + var fsource10 = toF(source10); + F, Function(Never)>> + target10 = fsource10; + + // I2b: Use bounds (FconCyclicCoBound, Function(Y)), then break cycle {Y} + // by replacing contravariant occurrence of `Y` in + // `AconCyclicCoBound<_, Function(Y)>` by `Never`; then replace contravariant + // occurrence of `Y` in `AconCyclicCoBound, _>` by + // `Never`. Resulting type + // `AconCyclicCoBound, Function(Never)>` is + // super-bounded because + // `AconCyclicCoBound, Function(Object)>` is + // regular-bounded. + var fsource11 = toF(source11); + F, Function(Never)>> target11 = + fsource11; + + // I2b: Use bounds (FinvCyclicCoBound, Function(Y)), then break cycle {Y} + // by replacing contravariant occurrence of `Y` in + // `AinvCyclicCoBound<_, Function(Y)>` by `Null`; then replace invariant + // occurrence of `Y` in `AinvCyclicCoBound, _>` by `Y`s + // value `Function(Null)`. + // Resulting type + // `AinvCyclicCoBound, Function(Null)>>` + // looks regular-bounded, but contains `FinvCyclicCoBound` + // which is not well-bounded. + AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error + // var fsource12 = toF(source12); + // F, Function(Null)>> + // target12 = fsource12; +} + +void testNested( + B source1, + B source2, + B source3, + B source4, + B source5, + B source6, + B source7, + B source8, + B source10, + B source11, +) { + // Everything gets the same treatment when the cases from `testTopLevel` + // are duplicated at the nested level in a covariant position. + + var fsource1 = toF(source1); + F, dynamic>>> target1 = fsource1; + + var fsource2 = toF(source2); + F, dynamic>>> target2 = fsource2; + + var fsource3 = toF(source3); + F, dynamic>>> target3 = fsource3; + + var fsource4 = toF(source4); + F, num>>> target4 = fsource4; + + var fsource5 = toF(source5); + F, num>>> target5 = fsource5; + + var fsource6 = toF(source6); + F, num>>> target6 = fsource6; + + var fsource7 = toF(source7); + F>, A>>> target7 = + fsource7; + + var fsource8 = toF(source8); + F, A>>> target8 = fsource8; + + B source9 = throw ''; //# 03: compile-time error + // var fsource9 = toF(source9); + // F>, A>>> target9 = + // fsource9; + + var fsource10 = toF(source10); + F, Function(Never)>>> + target10 = fsource10; + + var fsource11 = toF(source11); + F, Function(Never)>>> target11 = + fsource11; + + B source12 = throw ''; //# 04: compile-time error + // var fsource12 = toF(source12); + // F, Function(Null)>>> + // target12 = fsource12; +} + +main() {} diff --git a/pkg/front_end/testcases/general/nested_variance2.dart.textual_outline.expect b/pkg/front_end/testcases/general/nested_variance2.dart.textual_outline.expect new file mode 100644 index 00000000000..68a90306c3e --- /dev/null +++ b/pkg/front_end/testcases/general/nested_variance2.dart.textual_outline.expect @@ -0,0 +1,74 @@ +typedef F = void Function(); +F toF(X x) => throw ''; +typedef Fcov = X Function(); +typedef Fcon = Function(X); +typedef Finv = X Function(X); + +class Acov, Y> {} + +class Acon, Y> {} + +class Ainv, Y> {} + +typedef FcovBound = X Function(); +typedef FconBound = Function(X); +typedef FinvBound = X Function(X); + +class AcovBound, Y extends num> {} + +class AconBound, Y extends num> {} + +class AinvBound, Y extends num> {} + +class A {} + +typedef FcovCyclicBound> = X Function(); +typedef FconCyclicBound> = Function(X); +typedef FinvCyclicBound> = X Function(X); + +class AcovCyclicBound, Y extends A> {} + +class AconCyclicBound, Y extends A> {} + +class AinvCyclicBound, Y extends A> {} + +typedef FcovCyclicCoBound = X Function(); +typedef FconCyclicCoBound = Function(X); +typedef FinvCyclicCoBound = X Function(X); + +class AcovCyclicCoBound, Y extends Function(Y)> { +} + +class AconCyclicCoBound, Y extends Function(Y)> { +} + +class AinvCyclicCoBound, Y extends Function(Y)> { +} + +class B {} + +void testTypeAliasAsTypeArgument( + Acov source1, + Acon source2, + Ainv source3, + AcovBound source4, + AconBound source5, + AinvBound source6, + AcovCyclicBound source7, + AconCyclicBound source8, + AcovCyclicCoBound source10, + AconCyclicCoBound source11, +) {} +void testNested( + B source1, + B source2, + B source3, + B source4, + B source5, + B source6, + B source7, + B source8, + B source10, + B source11, +) {} +main() {} diff --git a/pkg/front_end/testcases/general/nested_variance2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/nested_variance2.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..b9ddca8dd31 --- /dev/null +++ b/pkg/front_end/testcases/general/nested_variance2.dart.textual_outline_modelled.expect @@ -0,0 +1,71 @@ +F toF(X x) => throw ''; + +class A {} + +class Acon, Y> {} + +class AconBound, Y extends num> {} + +class AconCyclicBound, Y extends A> {} + +class AconCyclicCoBound, Y extends Function(Y)> { +} + +class Acov, Y> {} + +class AcovBound, Y extends num> {} + +class AcovCyclicBound, Y extends A> {} + +class AcovCyclicCoBound, Y extends Function(Y)> { +} + +class Ainv, Y> {} + +class AinvBound, Y extends num> {} + +class AinvCyclicBound, Y extends A> {} + +class AinvCyclicCoBound, Y extends Function(Y)> { +} + +class B {} + +main() {} +typedef F = void Function(); +typedef Fcon = Function(X); +typedef FconBound = Function(X); +typedef FconCyclicBound> = Function(X); +typedef FconCyclicCoBound = Function(X); +typedef Fcov = X Function(); +typedef FcovBound = X Function(); +typedef FcovCyclicBound> = X Function(); +typedef FcovCyclicCoBound = X Function(); +typedef Finv = X Function(X); +typedef FinvBound = X Function(X); +typedef FinvCyclicBound> = X Function(X); +typedef FinvCyclicCoBound = X Function(X); +void testNested( + B source1, + B source2, + B source3, + B source4, + B source5, + B source6, + B source7, + B source8, + B source10, + B source11, +) {} +void testTypeAliasAsTypeArgument( + Acov source1, + Acon source2, + Ainv source3, + AcovBound source4, + AconBound source5, + AinvBound source6, + AcovCyclicBound source7, + AconCyclicBound source8, + AcovCyclicCoBound source10, + AconCyclicCoBound source11, +) {} diff --git a/pkg/front_end/testcases/general/nested_variance2.dart.weak.expect b/pkg/front_end/testcases/general/nested_variance2.dart.weak.expect new file mode 100644 index 00000000000..8c5790bda47 --- /dev/null +++ b/pkg/front_end/testcases/general/nested_variance2.dart.weak.expect @@ -0,0 +1,203 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(Y)' of the type variable 'Y' on 'AinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:57:57: Context: This is the type variable whose bound isn't conformed to. +// class AinvCyclicCoBound, Y extends Function(Y)> { +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Context: If you want 'AinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'AinvCyclicCoBound, Never Function(Object?)>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(X)' of the type variable 'X' on 'FinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:49:27: Context: This is the type variable whose bound isn't conformed to. +// typedef FinvCyclicCoBound = X Function(X); +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Context: If you want 'FinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'AinvCyclicCoBound, Never Function(Object?)>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:84:42: Error: A value of type 'void Function>()' can't be assigned to a variable of type 'void Function>()' because 'Null' is nullable and 'Never' isn't. +// - 'Acon' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// F, dynamic>> target2 = fsource2; +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(Y)' of the type variable 'Y' on 'AinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:57:57: Context: This is the type variable whose bound isn't conformed to. +// class AinvCyclicCoBound, Y extends Function(Y)> { +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Context: If you want 'AinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'B, Never Function(Object?)>>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'B' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(X)' of the type variable 'X' on 'FinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:49:27: Context: This is the type variable whose bound isn't conformed to. +// typedef FinvCyclicCoBound = X Function(X); +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Context: If you want 'FinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'B, Never Function(Object?)>>' must then satisfy its bounds, which it does not. +// - 'B' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// +import self as self; +import "dart:core" as core; + +typedef F = () → void; +typedef Fcov = () → X%; +typedef Fcon = (X%) → dynamic; +typedef Finv = (X%) → X%; +typedef FcovBound = () → X; +typedef FconBound = (X) → dynamic; +typedef FinvBound = (X) → X; +typedef FcovCyclicBound = self::A> = () → X; +typedef FconCyclicBound = self::A> = (X) → dynamic; +typedef FinvCyclicBound = self::A> = (X) → X; +typedef FcovCyclicCoBound = () → X; +typedef FconCyclicCoBound = (X) → dynamic; +typedef FinvCyclicCoBound = (X) → X; +class Acov extends core::Object { + synthetic constructor •() → self::Acov + : super core::Object::•() + ; +} +class Acon extends core::Object { + synthetic constructor •() → self::Acon + : super core::Object::•() + ; +} +class Ainv extends core::Object { + synthetic constructor •() → self::Ainv + : super core::Object::•() + ; +} +class AcovBound extends core::Object { + synthetic constructor •() → self::AcovBound + : super core::Object::•() + ; +} +class AconBound extends core::Object { + synthetic constructor •() → self::AconBound + : super core::Object::•() + ; +} +class AinvBound extends core::Object { + synthetic constructor •() → self::AinvBound + : super core::Object::•() + ; +} +class A extends core::Object { + synthetic constructor •() → self::A + : super core::Object::•() + ; +} +class AcovCyclicBound, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AcovCyclicBound + : super core::Object::•() + ; +} +class AconCyclicBound = self::A> extends core::Object { + synthetic constructor •() → self::AconCyclicBound + : super core::Object::•() + ; +} +class AinvCyclicBound) → self::A, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AinvCyclicBound + : super core::Object::•() + ; +} +class AcovCyclicCoBound extends core::Object { + synthetic constructor •() → self::AcovCyclicCoBound + : super core::Object::•() + ; +} +class AconCyclicCoBound extends core::Object { + synthetic constructor •() → self::AconCyclicCoBound + : super core::Object::•() + ; +} +class AinvCyclicCoBound extends core::Object { + synthetic constructor •() → self::AinvCyclicCoBound + : super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; +} +static method toF(self::toF::X% x) → () → void + return throw ""; +static method testTypeAliasAsTypeArgument(self::Acov<() → dynamic, dynamic> source1, self::Acon<(Never) → dynamic, dynamic> source2, self::Ainv<(dynamic) → dynamic, dynamic> source3, self::AcovBound<() → core::num, core::num> source4, self::AconBound<(Never) → dynamic, core::num> source5, self::AinvBound<(core::num) → core::num, core::num> source6, self::AcovCyclicBound<() → self::A, self::A> source7, self::AconCyclicBound<(Never) → dynamic, self::A> source8, self::AcovCyclicCoBound<() → (Never) → dynamic, (Never) → dynamic> source10, self::AconCyclicCoBound<(Never) → dynamic, (Never) → dynamic> source11) → void { + = dynamic>() → void fsource1 = self::toF>(source1); + = dynamic>() → void target1 = fsource1; + = dynamic>() → void fsource2 = self::toF>(source2); + = dynamic>() → void target2 = invalid-expression "pkg/front_end/testcases/general/nested_variance2.dart:84:42: Error: A value of type 'void Function>()' can't be assigned to a variable of type 'void Function>()' because 'Null' is nullable and 'Never' isn't. + - 'Acon' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. + F, dynamic>> target2 = fsource2; + ^" in fsource2 as{TypeError,ForNonNullableByDefault} = dynamic>() → void; + = dynamic>() → void fsource3 = self::toF>(source3); + = dynamic>() → void target3 = fsource3; + = dynamic>() → void fsource4 = self::toF>(source4); + = dynamic>() → void target4 = fsource4; + = dynamic>() → void fsource5 = self::toF>(source5); + = dynamic>() → void target5 = fsource5; + = dynamic>() → void fsource6 = self::toF>(source6); + = dynamic>() → void target6 = fsource6; + , self::A> = dynamic>() → void fsource7 = self::toF, self::A>>(source7); + , self::A> = dynamic>() → void target7 = fsource7; + > = dynamic>() → void fsource8 = self::toF>>(source8); + > = dynamic>() → void target8 = fsource8; + self::AinvCyclicBound<(self::A) → self::A, self::A> source9 = throw ""; + = dynamic>() → void fsource10 = self::toF>(source10); + = dynamic>() → void target10 = fsource10; + = dynamic>() → void fsource11 = self::toF>(source11); + = dynamic>() → void target11 = fsource11; + self::AinvCyclicCoBound<((Never) → dynamic) → (Never) → dynamic, (Never) → dynamic> source12 = throw ""; +} +static method testNested(self::B> source1, self::B> source2, self::B> source3, self::B> source4, self::B> source5, self::B> source6, self::B, self::A>> source7, self::B>> source8, self::B> source10, self::B> source11) → void { + > = dynamic>() → void fsource1 = self::toF>>(source1); + > = dynamic>() → void target1 = fsource1; + > = dynamic>() → void fsource2 = self::toF>>(source2); + > = dynamic>() → void target2 = fsource2; + > = dynamic>() → void fsource3 = self::toF>>(source3); + > = dynamic>() → void target3 = fsource3; + > = dynamic>() → void fsource4 = self::toF>>(source4); + > = dynamic>() → void target4 = fsource4; + > = dynamic>() → void fsource5 = self::toF>>(source5); + > = dynamic>() → void target5 = fsource5; + > = dynamic>() → void fsource6 = self::toF>>(source6); + > = dynamic>() → void target6 = fsource6; + , self::A>> = dynamic>() → void fsource7 = self::toF, self::A>>>(source7); + , self::A>> = dynamic>() → void target7 = fsource7; + >> = dynamic>() → void fsource8 = self::toF>>>(source8); + >> = dynamic>() → void target8 = fsource8; + self::B) → self::A, self::A>> source9 = throw ""; + > = dynamic>() → void fsource10 = self::toF>>(source10); + > = dynamic>() → void target10 = fsource10; + > = dynamic>() → void fsource11 = self::toF>>(source11); + > = dynamic>() → void target11 = fsource11; + self::B> source12 = throw ""; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/nested_variance2.dart.weak.modular.expect b/pkg/front_end/testcases/general/nested_variance2.dart.weak.modular.expect new file mode 100644 index 00000000000..8c5790bda47 --- /dev/null +++ b/pkg/front_end/testcases/general/nested_variance2.dart.weak.modular.expect @@ -0,0 +1,203 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(Y)' of the type variable 'Y' on 'AinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:57:57: Context: This is the type variable whose bound isn't conformed to. +// class AinvCyclicCoBound, Y extends Function(Y)> { +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Context: If you want 'AinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'AinvCyclicCoBound, Never Function(Object?)>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(X)' of the type variable 'X' on 'FinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:49:27: Context: This is the type variable whose bound isn't conformed to. +// typedef FinvCyclicCoBound = X Function(X); +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Context: If you want 'FinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'AinvCyclicCoBound, Never Function(Object?)>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:84:42: Error: A value of type 'void Function>()' can't be assigned to a variable of type 'void Function>()' because 'Null' is nullable and 'Never' isn't. +// - 'Acon' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// F, dynamic>> target2 = fsource2; +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(Y)' of the type variable 'Y' on 'AinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:57:57: Context: This is the type variable whose bound isn't conformed to. +// class AinvCyclicCoBound, Y extends Function(Y)> { +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Context: If you want 'AinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'B, Never Function(Object?)>>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'B' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(X)' of the type variable 'X' on 'FinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:49:27: Context: This is the type variable whose bound isn't conformed to. +// typedef FinvCyclicCoBound = X Function(X); +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Context: If you want 'FinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'B, Never Function(Object?)>>' must then satisfy its bounds, which it does not. +// - 'B' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// +import self as self; +import "dart:core" as core; + +typedef F = () → void; +typedef Fcov = () → X%; +typedef Fcon = (X%) → dynamic; +typedef Finv = (X%) → X%; +typedef FcovBound = () → X; +typedef FconBound = (X) → dynamic; +typedef FinvBound = (X) → X; +typedef FcovCyclicBound = self::A> = () → X; +typedef FconCyclicBound = self::A> = (X) → dynamic; +typedef FinvCyclicBound = self::A> = (X) → X; +typedef FcovCyclicCoBound = () → X; +typedef FconCyclicCoBound = (X) → dynamic; +typedef FinvCyclicCoBound = (X) → X; +class Acov extends core::Object { + synthetic constructor •() → self::Acov + : super core::Object::•() + ; +} +class Acon extends core::Object { + synthetic constructor •() → self::Acon + : super core::Object::•() + ; +} +class Ainv extends core::Object { + synthetic constructor •() → self::Ainv + : super core::Object::•() + ; +} +class AcovBound extends core::Object { + synthetic constructor •() → self::AcovBound + : super core::Object::•() + ; +} +class AconBound extends core::Object { + synthetic constructor •() → self::AconBound + : super core::Object::•() + ; +} +class AinvBound extends core::Object { + synthetic constructor •() → self::AinvBound + : super core::Object::•() + ; +} +class A extends core::Object { + synthetic constructor •() → self::A + : super core::Object::•() + ; +} +class AcovCyclicBound, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AcovCyclicBound + : super core::Object::•() + ; +} +class AconCyclicBound = self::A> extends core::Object { + synthetic constructor •() → self::AconCyclicBound + : super core::Object::•() + ; +} +class AinvCyclicBound) → self::A, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AinvCyclicBound + : super core::Object::•() + ; +} +class AcovCyclicCoBound extends core::Object { + synthetic constructor •() → self::AcovCyclicCoBound + : super core::Object::•() + ; +} +class AconCyclicCoBound extends core::Object { + synthetic constructor •() → self::AconCyclicCoBound + : super core::Object::•() + ; +} +class AinvCyclicCoBound extends core::Object { + synthetic constructor •() → self::AinvCyclicCoBound + : super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; +} +static method toF(self::toF::X% x) → () → void + return throw ""; +static method testTypeAliasAsTypeArgument(self::Acov<() → dynamic, dynamic> source1, self::Acon<(Never) → dynamic, dynamic> source2, self::Ainv<(dynamic) → dynamic, dynamic> source3, self::AcovBound<() → core::num, core::num> source4, self::AconBound<(Never) → dynamic, core::num> source5, self::AinvBound<(core::num) → core::num, core::num> source6, self::AcovCyclicBound<() → self::A, self::A> source7, self::AconCyclicBound<(Never) → dynamic, self::A> source8, self::AcovCyclicCoBound<() → (Never) → dynamic, (Never) → dynamic> source10, self::AconCyclicCoBound<(Never) → dynamic, (Never) → dynamic> source11) → void { + = dynamic>() → void fsource1 = self::toF>(source1); + = dynamic>() → void target1 = fsource1; + = dynamic>() → void fsource2 = self::toF>(source2); + = dynamic>() → void target2 = invalid-expression "pkg/front_end/testcases/general/nested_variance2.dart:84:42: Error: A value of type 'void Function>()' can't be assigned to a variable of type 'void Function>()' because 'Null' is nullable and 'Never' isn't. + - 'Acon' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. + F, dynamic>> target2 = fsource2; + ^" in fsource2 as{TypeError,ForNonNullableByDefault} = dynamic>() → void; + = dynamic>() → void fsource3 = self::toF>(source3); + = dynamic>() → void target3 = fsource3; + = dynamic>() → void fsource4 = self::toF>(source4); + = dynamic>() → void target4 = fsource4; + = dynamic>() → void fsource5 = self::toF>(source5); + = dynamic>() → void target5 = fsource5; + = dynamic>() → void fsource6 = self::toF>(source6); + = dynamic>() → void target6 = fsource6; + , self::A> = dynamic>() → void fsource7 = self::toF, self::A>>(source7); + , self::A> = dynamic>() → void target7 = fsource7; + > = dynamic>() → void fsource8 = self::toF>>(source8); + > = dynamic>() → void target8 = fsource8; + self::AinvCyclicBound<(self::A) → self::A, self::A> source9 = throw ""; + = dynamic>() → void fsource10 = self::toF>(source10); + = dynamic>() → void target10 = fsource10; + = dynamic>() → void fsource11 = self::toF>(source11); + = dynamic>() → void target11 = fsource11; + self::AinvCyclicCoBound<((Never) → dynamic) → (Never) → dynamic, (Never) → dynamic> source12 = throw ""; +} +static method testNested(self::B> source1, self::B> source2, self::B> source3, self::B> source4, self::B> source5, self::B> source6, self::B, self::A>> source7, self::B>> source8, self::B> source10, self::B> source11) → void { + > = dynamic>() → void fsource1 = self::toF>>(source1); + > = dynamic>() → void target1 = fsource1; + > = dynamic>() → void fsource2 = self::toF>>(source2); + > = dynamic>() → void target2 = fsource2; + > = dynamic>() → void fsource3 = self::toF>>(source3); + > = dynamic>() → void target3 = fsource3; + > = dynamic>() → void fsource4 = self::toF>>(source4); + > = dynamic>() → void target4 = fsource4; + > = dynamic>() → void fsource5 = self::toF>>(source5); + > = dynamic>() → void target5 = fsource5; + > = dynamic>() → void fsource6 = self::toF>>(source6); + > = dynamic>() → void target6 = fsource6; + , self::A>> = dynamic>() → void fsource7 = self::toF, self::A>>>(source7); + , self::A>> = dynamic>() → void target7 = fsource7; + >> = dynamic>() → void fsource8 = self::toF>>>(source8); + >> = dynamic>() → void target8 = fsource8; + self::B) → self::A, self::A>> source9 = throw ""; + > = dynamic>() → void fsource10 = self::toF>>(source10); + > = dynamic>() → void target10 = fsource10; + > = dynamic>() → void fsource11 = self::toF>>(source11); + > = dynamic>() → void target11 = fsource11; + self::B> source12 = throw ""; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/nested_variance2.dart.weak.outline.expect b/pkg/front_end/testcases/general/nested_variance2.dart.weak.outline.expect new file mode 100644 index 00000000000..0cf1a6b4c35 --- /dev/null +++ b/pkg/front_end/testcases/general/nested_variance2.dart.weak.outline.expect @@ -0,0 +1,81 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +typedef F = () → void; +typedef Fcov = () → X%; +typedef Fcon = (X%) → dynamic; +typedef Finv = (X%) → X%; +typedef FcovBound = () → X; +typedef FconBound = (X) → dynamic; +typedef FinvBound = (X) → X; +typedef FcovCyclicBound = self::A> = () → X; +typedef FconCyclicBound = self::A> = (X) → dynamic; +typedef FinvCyclicBound = self::A> = (X) → X; +typedef FcovCyclicCoBound = () → X; +typedef FconCyclicCoBound = (X) → dynamic; +typedef FinvCyclicCoBound = (X) → X; +class Acov extends core::Object { + synthetic constructor •() → self::Acov + ; +} +class Acon extends core::Object { + synthetic constructor •() → self::Acon + ; +} +class Ainv extends core::Object { + synthetic constructor •() → self::Ainv + ; +} +class AcovBound extends core::Object { + synthetic constructor •() → self::AcovBound + ; +} +class AconBound extends core::Object { + synthetic constructor •() → self::AconBound + ; +} +class AinvBound extends core::Object { + synthetic constructor •() → self::AinvBound + ; +} +class A extends core::Object { + synthetic constructor •() → self::A + ; +} +class AcovCyclicBound, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AcovCyclicBound + ; +} +class AconCyclicBound = self::A> extends core::Object { + synthetic constructor •() → self::AconCyclicBound + ; +} +class AinvCyclicBound) → self::A, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AinvCyclicBound + ; +} +class AcovCyclicCoBound extends core::Object { + synthetic constructor •() → self::AcovCyclicCoBound + ; +} +class AconCyclicCoBound extends core::Object { + synthetic constructor •() → self::AconCyclicCoBound + ; +} +class AinvCyclicCoBound extends core::Object { + synthetic constructor •() → self::AinvCyclicCoBound + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + ; +} +static method toF(self::toF::X% x) → () → void + ; +static method testTypeAliasAsTypeArgument(self::Acov<() → dynamic, dynamic> source1, self::Acon<(Never) → dynamic, dynamic> source2, self::Ainv<(dynamic) → dynamic, dynamic> source3, self::AcovBound<() → core::num, core::num> source4, self::AconBound<(Never) → dynamic, core::num> source5, self::AinvBound<(core::num) → core::num, core::num> source6, self::AcovCyclicBound<() → self::A, self::A> source7, self::AconCyclicBound<(Never) → dynamic, self::A> source8, self::AcovCyclicCoBound<() → (Never) → dynamic, (Never) → dynamic> source10, self::AconCyclicCoBound<(Never) → dynamic, (Never) → dynamic> source11) → void + ; +static method testNested(self::B> source1, self::B> source2, self::B> source3, self::B> source4, self::B> source5, self::B> source6, self::B, self::A>> source7, self::B>> source8, self::B> source10, self::B> source11) → void + ; +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/nested_variance2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/nested_variance2.dart.weak.transformed.expect new file mode 100644 index 00000000000..77f1c4c777e --- /dev/null +++ b/pkg/front_end/testcases/general/nested_variance2.dart.weak.transformed.expect @@ -0,0 +1,203 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(Y)' of the type variable 'Y' on 'AinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:57:57: Context: This is the type variable whose bound isn't conformed to. +// class AinvCyclicCoBound, Y extends Function(Y)> { +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Context: If you want 'AinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'AinvCyclicCoBound, Never Function(Object?)>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(X)' of the type variable 'X' on 'FinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:49:27: Context: This is the type variable whose bound isn't conformed to. +// typedef FinvCyclicCoBound = X Function(X); +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:177:21: Context: If you want 'FinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'AinvCyclicCoBound, Never Function(Object?)>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// AinvCyclicCoBound source12 = throw ''; //# 02: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:84:42: Error: A value of type 'void Function>()' can't be assigned to a variable of type 'void Function>()' because 'Null' is nullable and 'Never' isn't. +// - 'Acon' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// F, dynamic>> target2 = fsource2; +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(Y)' of the type variable 'Y' on 'AinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:57:57: Context: This is the type variable whose bound isn't conformed to. +// class AinvCyclicCoBound, Y extends Function(Y)> { +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Context: If you want 'AinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'B, Never Function(Object?)>>' must then satisfy its bounds, which it does not. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'B' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Error: Type argument 'dynamic Function(Never)' doesn't conform to the bound 'dynamic Function(X)' of the type variable 'X' on 'FinvCyclicCoBound'. +// Try changing type arguments so that they conform to the bounds. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:49:27: Context: This is the type variable whose bound isn't conformed to. +// typedef FinvCyclicCoBound = X Function(X); +// ^ +// pkg/front_end/testcases/general/nested_variance2.dart:236:24: Context: If you want 'FinvCyclicCoBound' to be a super-bounded type, note that the inverted type 'B, Never Function(Object?)>>' must then satisfy its bounds, which it does not. +// - 'B' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'AinvCyclicCoBound' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. +// - 'Object' is from 'dart:core'. +// B source12 = throw ''; //# 04: compile-time error +// ^ +// +import self as self; +import "dart:core" as core; + +typedef F = () → void; +typedef Fcov = () → X%; +typedef Fcon = (X%) → dynamic; +typedef Finv = (X%) → X%; +typedef FcovBound = () → X; +typedef FconBound = (X) → dynamic; +typedef FinvBound = (X) → X; +typedef FcovCyclicBound = self::A> = () → X; +typedef FconCyclicBound = self::A> = (X) → dynamic; +typedef FinvCyclicBound = self::A> = (X) → X; +typedef FcovCyclicCoBound = () → X; +typedef FconCyclicCoBound = (X) → dynamic; +typedef FinvCyclicCoBound = (X) → X; +class Acov extends core::Object { + synthetic constructor •() → self::Acov + : super core::Object::•() + ; +} +class Acon extends core::Object { + synthetic constructor •() → self::Acon + : super core::Object::•() + ; +} +class Ainv extends core::Object { + synthetic constructor •() → self::Ainv + : super core::Object::•() + ; +} +class AcovBound extends core::Object { + synthetic constructor •() → self::AcovBound + : super core::Object::•() + ; +} +class AconBound extends core::Object { + synthetic constructor •() → self::AconBound + : super core::Object::•() + ; +} +class AinvBound extends core::Object { + synthetic constructor •() → self::AinvBound + : super core::Object::•() + ; +} +class A extends core::Object { + synthetic constructor •() → self::A + : super core::Object::•() + ; +} +class AcovCyclicBound, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AcovCyclicBound + : super core::Object::•() + ; +} +class AconCyclicBound = self::A> extends core::Object { + synthetic constructor •() → self::AconCyclicBound + : super core::Object::•() + ; +} +class AinvCyclicBound) → self::A, Y extends self::A = self::A> extends core::Object { + synthetic constructor •() → self::AinvCyclicBound + : super core::Object::•() + ; +} +class AcovCyclicCoBound extends core::Object { + synthetic constructor •() → self::AcovCyclicCoBound + : super core::Object::•() + ; +} +class AconCyclicCoBound extends core::Object { + synthetic constructor •() → self::AconCyclicCoBound + : super core::Object::•() + ; +} +class AinvCyclicCoBound extends core::Object { + synthetic constructor •() → self::AinvCyclicCoBound + : super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; +} +static method toF(self::toF::X% x) → () → void + return throw ""; +static method testTypeAliasAsTypeArgument(self::Acov<() → dynamic, dynamic> source1, self::Acon<(Never) → dynamic, dynamic> source2, self::Ainv<(dynamic) → dynamic, dynamic> source3, self::AcovBound<() → core::num, core::num> source4, self::AconBound<(Never) → dynamic, core::num> source5, self::AinvBound<(core::num) → core::num, core::num> source6, self::AcovCyclicBound<() → self::A, self::A> source7, self::AconCyclicBound<(Never) → dynamic, self::A> source8, self::AcovCyclicCoBound<() → (Never) → dynamic, (Never) → dynamic> source10, self::AconCyclicCoBound<(Never) → dynamic, (Never) → dynamic> source11) → void { + = dynamic>() → void fsource1 = self::toF>(source1); + = dynamic>() → void target1 = fsource1; + = dynamic>() → void fsource2 = self::toF>(source2); + = dynamic>() → void target2 = invalid-expression "pkg/front_end/testcases/general/nested_variance2.dart:84:42: Error: A value of type 'void Function>()' can't be assigned to a variable of type 'void Function>()' because 'Null' is nullable and 'Never' isn't. + - 'Acon' is from 'pkg/front_end/testcases/general/nested_variance2.dart'. + F, dynamic>> target2 = fsource2; + ^" in fsource2; + = dynamic>() → void fsource3 = self::toF>(source3); + = dynamic>() → void target3 = fsource3; + = dynamic>() → void fsource4 = self::toF>(source4); + = dynamic>() → void target4 = fsource4; + = dynamic>() → void fsource5 = self::toF>(source5); + = dynamic>() → void target5 = fsource5; + = dynamic>() → void fsource6 = self::toF>(source6); + = dynamic>() → void target6 = fsource6; + , self::A> = dynamic>() → void fsource7 = self::toF, self::A>>(source7); + , self::A> = dynamic>() → void target7 = fsource7; + > = dynamic>() → void fsource8 = self::toF>>(source8); + > = dynamic>() → void target8 = fsource8; + self::AinvCyclicBound<(self::A) → self::A, self::A> source9 = throw ""; + = dynamic>() → void fsource10 = self::toF>(source10); + = dynamic>() → void target10 = fsource10; + = dynamic>() → void fsource11 = self::toF>(source11); + = dynamic>() → void target11 = fsource11; + self::AinvCyclicCoBound<((Never) → dynamic) → (Never) → dynamic, (Never) → dynamic> source12 = throw ""; +} +static method testNested(self::B> source1, self::B> source2, self::B> source3, self::B> source4, self::B> source5, self::B> source6, self::B, self::A>> source7, self::B>> source8, self::B> source10, self::B> source11) → void { + > = dynamic>() → void fsource1 = self::toF>>(source1); + > = dynamic>() → void target1 = fsource1; + > = dynamic>() → void fsource2 = self::toF>>(source2); + > = dynamic>() → void target2 = fsource2; + > = dynamic>() → void fsource3 = self::toF>>(source3); + > = dynamic>() → void target3 = fsource3; + > = dynamic>() → void fsource4 = self::toF>>(source4); + > = dynamic>() → void target4 = fsource4; + > = dynamic>() → void fsource5 = self::toF>>(source5); + > = dynamic>() → void target5 = fsource5; + > = dynamic>() → void fsource6 = self::toF>>(source6); + > = dynamic>() → void target6 = fsource6; + , self::A>> = dynamic>() → void fsource7 = self::toF, self::A>>>(source7); + , self::A>> = dynamic>() → void target7 = fsource7; + >> = dynamic>() → void fsource8 = self::toF>>>(source8); + >> = dynamic>() → void target8 = fsource8; + self::B) → self::A, self::A>> source9 = throw ""; + > = dynamic>() → void fsource10 = self::toF>>(source10); + > = dynamic>() → void target10 = fsource10; + > = dynamic>() → void fsource11 = self::toF>>(source11); + > = dynamic>() → void target11 = fsource11; + self::B> source12 = throw ""; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/no_such_method_forwarder.dart b/pkg/front_end/testcases/general/no_such_method_forwarder.dart index b2938fc4f42..2d3319aefa8 100644 --- a/pkg/front_end/testcases/general/no_such_method_forwarder.dart +++ b/pkg/front_end/testcases/general/no_such_method_forwarder.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - class X { void _foo() async { await null; diff --git a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline.expect b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline.expect index bf31270eb54..1caa183d2c0 100644 --- a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class X { void _foo() async {} void foo() => _foo(); diff --git a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline_modelled.expect index bf31270eb54..1caa183d2c0 100644 --- a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class X { void _foo() async {} void foo() => _foo(); diff --git a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.expect b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.expect index 2fd6b9dd70f..c43b4117af1 100644 --- a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.expect +++ b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.expect @@ -1,9 +1,9 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X : super core::Object::•() ; method _foo() → void async { @@ -11,42 +11,23 @@ class X extends core::Object { core::print("hello"); } method foo() → void - return this.{self::X::_foo}(){() →* void}; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + return this.{self::X::_foo}(){() → void}; } class Y extends core::Object implements self::X { - synthetic constructor •() → self::Y* + synthetic constructor •() → self::Y : super core::Object::•() ; - method noSuchMethod(core::Invocation* _) → void { + method noSuchMethod(core::Invocation _) → void { core::print("Hello from noSuchMethod"); } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType no-such-method-forwarder method _foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → void}; no-such-method-forwarder method foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → void}; } static method main() → dynamic { - self::Y* y = new self::Y::•(); - y.{self::X::foo}(){() →* void}; + self::Y y = new self::Y::•(); + y.{self::X::foo}(){() → void}; } constants { diff --git a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.modular.expect b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.modular.expect index 2fd6b9dd70f..c43b4117af1 100644 --- a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.modular.expect @@ -1,9 +1,9 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X : super core::Object::•() ; method _foo() → void async { @@ -11,42 +11,23 @@ class X extends core::Object { core::print("hello"); } method foo() → void - return this.{self::X::_foo}(){() →* void}; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + return this.{self::X::_foo}(){() → void}; } class Y extends core::Object implements self::X { - synthetic constructor •() → self::Y* + synthetic constructor •() → self::Y : super core::Object::•() ; - method noSuchMethod(core::Invocation* _) → void { + method noSuchMethod(core::Invocation _) → void { core::print("Hello from noSuchMethod"); } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType no-such-method-forwarder method _foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → void}; no-such-method-forwarder method foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → void}; } static method main() → dynamic { - self::Y* y = new self::Y::•(); - y.{self::X::foo}(){() →* void}; + self::Y y = new self::Y::•(); + y.{self::X::foo}(){() → void}; } constants { diff --git a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.outline.expect b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.outline.expect index a58f8efdd59..d466ed38570 100644 --- a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.outline.expect @@ -1,55 +1,36 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X ; method _foo() → void async ; method foo() → void ; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } class Y extends core::Object implements self::X { - synthetic constructor •() → self::Y* + synthetic constructor •() → self::Y ; - method noSuchMethod(core::Invocation* _) → void + method noSuchMethod(core::Invocation _) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType no-such-method-forwarder method _foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#_foo, 0, const [], const [], core::Map::unmodifiable(const {}))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#_foo, 0, const [], const [], core::Map::unmodifiable(const {}))){(core::Invocation) → void}; no-such-method-forwarder method foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#foo, 0, const [], const [], core::Map::unmodifiable(const {}))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#foo, 0, const [], const [], core::Map::unmodifiable(const {}))){(core::Invocation) → void}; } static method main() → dynamic ; Extra constant evaluation status: -Evaluated: SymbolLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:8:8 -> SymbolConstant(#_foo) -Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:8:8 -> ListConstant(const []) -Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:8:8 -> ListConstant(const []) -Evaluated: MapLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:8:8 -> MapConstant(const {}) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:13:8 -> SymbolConstant(#foo) -Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:13:8 -> ListConstant(const []) -Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:13:8 -> ListConstant(const []) -Evaluated: MapLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:13:8 -> MapConstant(const {}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:6:8 -> SymbolConstant(#_foo) +Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:6:8 -> ListConstant(const []) +Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:6:8 -> ListConstant(const []) +Evaluated: MapLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:6:8 -> MapConstant(const {}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:11:8 -> SymbolConstant(#foo) +Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:11:8 -> ListConstant(const []) +Evaluated: ListLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:11:8 -> ListConstant(const []) +Evaluated: MapLiteral @ org-dartlang-testcase:///no_such_method_forwarder.dart:11:8 -> MapConstant(const {}) Extra constant evaluation: evaluated: 16, effectively constant: 8 diff --git a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.transformed.expect b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.transformed.expect index ad020a3cfe2..f1d1f67b491 100644 --- a/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/no_such_method_forwarder.dart.weak.transformed.expect @@ -1,20 +1,20 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "dart:async" as asy; import "dart:_internal" as _in; class X extends core::Object { - synthetic constructor •() → self::X* + synthetic constructor •() → self::X : super core::Object::•() ; method _foo() → void /* originally async */ { - final asy::_Future* :async_future = new asy::_Future::•(); + final asy::_Future :async_future = new asy::_Future::•(); core::bool* :is_sync = false; dynamic :return_value; - (dynamic) →* dynamic :async_op_then; - (core::Object*, core::StackTrace*) →* dynamic :async_op_error; - core::int* :await_jump_var = 0; + (dynamic) → dynamic :async_op_then; + (core::Object, core::StackTrace) → dynamic :async_op_error; + core::int :await_jump_var = 0; dynamic :await_ctx_var; dynamic :saved_try_context_var0; function :async_op(dynamic :result_or_exception, dynamic :stack_trace) → dynamic yielding @@ -28,52 +28,33 @@ class X extends core::Object { asy::_completeWithNoFutureOnAsyncReturn(:async_future, :return_value, :is_sync); return; } - on dynamic catch(dynamic exception, core::StackTrace* stack_trace) { + on dynamic catch(dynamic exception, core::StackTrace stack_trace) { asy::_completeOnAsyncError(:async_future, exception, stack_trace, :is_sync); } :async_op_then = asy::_asyncThenWrapperHelper(:async_op); :async_op_error = asy::_asyncErrorWrapperHelper(:async_op); - :async_op(null, null){() →* dynamic}; + :async_op(null, null){() → dynamic}; :is_sync = true; return :async_future; } method foo() → void - return this.{self::X::_foo}(){() →* void}; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + return this.{self::X::_foo}(){() → void}; } class Y extends core::Object implements self::X { - synthetic constructor •() → self::Y* + synthetic constructor •() → self::Y : super core::Object::•() ; - method noSuchMethod(core::Invocation* _) → void { + method noSuchMethod(core::Invocation _) → void { core::print("Hello from noSuchMethod"); } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType no-such-method-forwarder method _foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → void}; no-such-method-forwarder method foo() → void - return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* void}; + return this.{self::Y::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 0, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → void}; } static method main() → dynamic { - self::Y* y = new self::Y::•(); - y.{self::X::foo}(){() →* void}; + self::Y y = new self::Y::•(); + y.{self::X::foo}(){() → void}; } constants { diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter.dart b/pkg/front_end/testcases/general/no_such_method_private_setter.dart index 88c4614d241..9d026b57c60 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter.dart +++ b/pkg/front_end/testcases/general/no_such_method_private_setter.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + import './no_such_method_private_setter_lib.dart'; // `Bar' contains a private setter `_x'. The generated Kernel code for `Foo' diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline.expect b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline.expect index b9a6d1372bb..8aa3b3b59d0 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import './no_such_method_private_setter_lib.dart'; class Foo implements Bar {} diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline_modelled.expect index b9a6d1372bb..8aa3b3b59d0 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import './no_such_method_private_setter_lib.dart'; class Foo implements Bar {} diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.expect b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.expect index 180ea5a9737..ad96a5d5edf 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.expect +++ b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "no_such_method_private_setter_lib.dart" as no_; @@ -6,49 +6,36 @@ import "no_such_method_private_setter_lib.dart" as no_; import "org-dartlang-testcase:///no_such_method_private_setter_lib.dart"; class Foo extends core::Object implements no_::Bar { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int* - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 1, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* dynamic} as{TypeError,ForDynamic} core::int*; - no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int* value) → void - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 2, #C2, core::List::unmodifiable([value]), core::Map::unmodifiable(#C4))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 1, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → dynamic} as{TypeError,ForDynamic,ForNonNullableByDefault} core::int; + no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int value) → void + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 2, #C2, core::List::unmodifiable([value]), core::Map::unmodifiable(#C4))){(core::Invocation) → dynamic}; } static method main() → dynamic { no_::baz(new self::Foo::•()); } -library; +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/no_such_method_private_setter_lib.dart:8:7: Error: Field '_x' should be initialized because its type 'int' doesn't allow null. +// int _x; +// ^^ +// import self as no_; import "dart:core" as core; class Bar extends core::Object { - field core::int* _x = null; - synthetic constructor •() → no_::Bar* + field core::int _x = null; + synthetic constructor •() → no_::Bar : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method baz(no_::Bar* bar) → void { +static method baz(no_::Bar bar) → void { return; } diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.modular.expect b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.modular.expect index 180ea5a9737..ad96a5d5edf 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.modular.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "no_such_method_private_setter_lib.dart" as no_; @@ -6,49 +6,36 @@ import "no_such_method_private_setter_lib.dart" as no_; import "org-dartlang-testcase:///no_such_method_private_setter_lib.dart"; class Foo extends core::Object implements no_::Bar { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int* - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 1, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* dynamic} as{TypeError,ForDynamic} core::int*; - no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int* value) → void - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 2, #C2, core::List::unmodifiable([value]), core::Map::unmodifiable(#C4))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 1, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → dynamic} as{TypeError,ForDynamic,ForNonNullableByDefault} core::int; + no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int value) → void + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 2, #C2, core::List::unmodifiable([value]), core::Map::unmodifiable(#C4))){(core::Invocation) → dynamic}; } static method main() → dynamic { no_::baz(new self::Foo::•()); } -library; +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/no_such_method_private_setter_lib.dart:8:7: Error: Field '_x' should be initialized because its type 'int' doesn't allow null. +// int _x; +// ^^ +// import self as no_; import "dart:core" as core; class Bar extends core::Object { - field core::int* _x = null; - synthetic constructor •() → no_::Bar* + field core::int _x = null; + synthetic constructor •() → no_::Bar : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method baz(no_::Bar* bar) → void { +static method baz(no_::Bar bar) → void { return; } diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.outline.expect b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.outline.expect index 882f03b3e73..9750dcc9119 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.outline.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "no_such_method_private_setter_lib.dart" as no_; @@ -6,46 +6,26 @@ import "no_such_method_private_setter_lib.dart" as no_; import "org-dartlang-testcase:///no_such_method_private_setter_lib.dart"; class Foo extends core::Object implements no_::Bar { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int* - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#_x, 1, const [], const [], core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic} as{TypeError,ForDynamic} core::int*; - no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int* value) → void - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#_x=, 2, const [], core::List::unmodifiable([value]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#_x, 1, const [], const [], core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic} as{TypeError,ForDynamic,ForNonNullableByDefault} core::int; + no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int value) → void + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#_x=, 2, const [], core::List::unmodifiable([value]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; } static method main() → dynamic ; -library; +library /*isNonNullableByDefault*/; import self as no_; import "dart:core" as core; class Bar extends core::Object { - field core::int* _x; - synthetic constructor •() → no_::Bar* + field core::int _x; + synthetic constructor •() → no_::Bar ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method baz(no_::Bar* bar) → void +static method baz(no_::Bar bar) → void ; diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.transformed.expect b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.transformed.expect index bc8c75fbcad..48b88df6efd 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/no_such_method_private_setter.dart.weak.transformed.expect @@ -1,4 +1,4 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "no_such_method_private_setter_lib.dart" as no_; @@ -6,49 +6,36 @@ import "no_such_method_private_setter_lib.dart" as no_; import "org-dartlang-testcase:///no_such_method_private_setter_lib.dart"; class Foo extends core::Object implements no_::Bar { - synthetic constructor •() → self::Foo* + synthetic constructor •() → self::Foo : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int* - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 1, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation*) →* dynamic} as{TypeError,ForDynamic} core::int*; - no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int* value) → void - return this.{self::Foo::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 2, #C2, core::List::unmodifiable(core::_GrowableList::_literal1(value)), core::Map::unmodifiable(#C4))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder get /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x() → core::int + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#C1, 1, #C2, #C3, core::Map::unmodifiable(#C4))){(core::Invocation) → dynamic} as{TypeError,ForDynamic,ForNonNullableByDefault} core::int; + no-such-method-forwarder set /* from org-dartlang-testcase:///no_such_method_private_setter_lib.dart */ _x(core::int value) → void + return this.{core::Object::noSuchMethod}(new core::_InvocationMirror::_withType(#C5, 2, #C2, core::List::unmodifiable(core::_GrowableList::_literal1(value)), core::Map::unmodifiable(#C4))){(core::Invocation) → dynamic}; } static method main() → dynamic { no_::baz(new self::Foo::•()); } -library; +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/no_such_method_private_setter_lib.dart:8:7: Error: Field '_x' should be initialized because its type 'int' doesn't allow null. +// int _x; +// ^^ +// import self as no_; import "dart:core" as core; class Bar extends core::Object { - field core::int* _x = null; - synthetic constructor •() → no_::Bar* + field core::int _x = null; + synthetic constructor •() → no_::Bar : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } -static method baz(no_::Bar* bar) → void { +static method baz(no_::Bar bar) → void { return; } diff --git a/pkg/front_end/testcases/general/no_such_method_private_setter_lib.dart b/pkg/front_end/testcases/general/no_such_method_private_setter_lib.dart index c2d04f0efc9..b4f3e2cbc3c 100644 --- a/pkg/front_end/testcases/general/no_such_method_private_setter_lib.dart +++ b/pkg/front_end/testcases/general/no_such_method_private_setter_lib.dart @@ -1,7 +1,7 @@ // Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + // Companion library to no_such_method_private_setter.dart. class Bar { diff --git a/pkg/front_end/testcases/general/non_covariant_checks.dart b/pkg/front_end/testcases/general/non_covariant_checks.dart index 17c1225e791..a46e84f88cc 100644 --- a/pkg/front_end/testcases/general/non_covariant_checks.dart +++ b/pkg/front_end/testcases/general/non_covariant_checks.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + /*@testedFeatures=checks*/ class C { @@ -16,7 +16,7 @@ class C { field9 = ((void Function(T) f) => field1), field10 = ((T Function(T) f) {}), field11 = ((T Function(T) f) => field1), - field12 = () => null, + field12 = () => throw '', field13 = (S s) {}, field14 = (S s) => s, field15 = ((S Function() f) {}); @@ -185,26 +185,26 @@ main() { c.field1; c.field2; try { - c. /*@ checkReturn=(num*) ->* void */ field3; + c. /*@checkReturn=(num) -> void*/ field3; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(num*) ->* num* */ field4; + c. /*@checkReturn=(num) -> num*/ field4; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } c.field5; try { - c. /*@ checkReturn=(() ->* num*) ->* void */ field6; + c. /*@checkReturn=(() -> num) -> void*/ field6; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(() ->* num*) ->* num* */ field7; + c. /*@checkReturn=(() -> num) -> num*/ field7; throw 'TypeError expected'; } on TypeError catch (e) { print(e); @@ -212,37 +212,37 @@ main() { c.field8; c.field9; try { - c. /*@ checkReturn=((num*) ->* num*) ->* void */ field10; + c. /*@checkReturn=((num) -> num) -> void*/ field10; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=((num*) ->* num*) ->* num* */ field11; + c. /*@checkReturn=((num) -> num) -> num*/ field11; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=() ->* S* */ field12; + c. /*@checkReturn=() -> S*/ field12; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(S*) ->* void */ field13; + c. /*@checkReturn=(S) -> void*/ field13; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(S*) ->* S* */ field14; + c. /*@checkReturn=(S) -> S*/ field14; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(() ->* S*) ->* void */ field15; + c. /*@checkReturn=(() -> S) -> void*/ field15; throw 'TypeError expected'; } on TypeError catch (e) { print(e); @@ -251,26 +251,26 @@ main() { c.getter1; c.getter2; try { - c. /*@ checkReturn=(num*) ->* void */ getter3; + c. /*@checkReturn=(num) -> void*/ getter3; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(num*) ->* num* */ getter4; + c. /*@checkReturn=(num) -> num*/ getter4; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } c.getter5; try { - c. /*@ checkReturn=(() ->* num*) ->* void */ getter6; + c. /*@checkReturn=(() -> num) -> void*/ getter6; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(() ->* num*) ->* num* */ getter7; + c. /*@checkReturn=(() -> num) -> num*/ getter7; throw 'TypeError expected'; } on TypeError catch (e) { print(e); @@ -278,37 +278,37 @@ main() { c.getter8; c.getter9; try { - c. /*@ checkReturn=((num*) ->* num*) ->* void */ getter10; + c. /*@checkReturn=((num) -> num) -> void*/ getter10; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=((num*) ->* num*) ->* num* */ getter11; + c. /*@checkReturn=((num) -> num) -> num*/ getter11; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=() ->* S* */ getter12; + c. /*@checkReturn=() -> S*/ getter12; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(S*) ->* void */ getter13; + c. /*@checkReturn=(S) -> void*/ getter13; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(S*) ->* S* */ getter14; + c. /*@checkReturn=(S) -> S*/ getter14; throw 'TypeError expected'; } on TypeError catch (e) { print(e); } try { - c. /*@ checkReturn=(() ->* S*) ->* void */ getter15; + c. /*@checkReturn=(() -> S) -> void*/ getter15; throw 'TypeError expected'; } on TypeError catch (e) { print(e); @@ -371,7 +371,7 @@ main() { print(e); } try { - c.setter12 = () => null; + c.setter12 = () => throw ''; throw 'TypeError expected'; } on TypeError catch (e) { print(e); @@ -452,7 +452,7 @@ main() { print(e); } try { - c.method12(() => null); + c.method12(() => throw ''); throw 'TypeError expected'; } on TypeError catch (e) { print(e); diff --git a/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline.expect b/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline.expect index e25dc030860..9c7f737c56f 100644 --- a/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class C { C(this.field1) : field2 = (() => field1), @@ -11,7 +10,7 @@ class C { field9 = ((void Function(T) f) => field1), field10 = ((T Function(T) f) {}), field11 = ((T Function(T) f) => field1), - field12 = () => null, + field12 = () => throw '', field13 = (S s) {}, field14 = (S s) => s, field15 = ((S Function() f) {}); diff --git a/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline_modelled.expect index 506de4944a9..f9b68a1b600 100644 --- a/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/non_covariant_checks.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class C { C(this.field1) : field2 = (() => field1), @@ -11,7 +10,7 @@ class C { field9 = ((void Function(T) f) => field1), field10 = ((T Function(T) f) {}), field11 = ((T Function(T) f) => field1), - field12 = () => null, + field12 = () => throw '', field13 = (S s) {}, field14 = (S s) => s, field15 = ((S Function() f) {}); diff --git a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.expect b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.expect index 5f06498b837..f80ffa16cec 100644 --- a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.expect +++ b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.expect @@ -1,493 +1,483 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class C extends core::Object { - covariant-by-class field self::C::T* field1; - covariant-by-class field () →* self::C::T* field2; - field (self::C::T*) →* void field3; - covariant-by-class field (self::C::T*) →* self::C::T* field4; - covariant-by-class field () →* () →* self::C::T* field5; - field (() →* self::C::T*) →* void field6; - covariant-by-class field (() →* self::C::T*) →* self::C::T* field7; - covariant-by-class field ((self::C::T*) →* void) →* void field8; - covariant-by-class field ((self::C::T*) →* void) →* self::C::T* field9; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* void field10; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* self::C::T* field11; - covariant-by-class field () →* S* field12; - covariant-by-class field (S*) →* void field13; - covariant-by-class field (S*) →* S* field14; - covariant-by-class field (() →* S*) →* void field15; - constructor •(self::C::T* field1) → self::C* - : self::C::field1 = field1, self::C::field2 = () → self::C::T* => field1, self::C::field3 = (self::C::T* t) → Null {}, self::C::field4 = (self::C::T* t) → self::C::T* => t, self::C::field5 = () → () →* self::C::T* => () → self::C::T* => field1, self::C::field6 = (() →* self::C::T* f) → Null {}, self::C::field7 = (() →* self::C::T* f) → self::C::T* => field1, self::C::field8 = ((self::C::T*) →* void f) → Null {}, self::C::field9 = ((self::C::T*) →* void f) → self::C::T* => field1, self::C::field10 = ((self::C::T*) →* self::C::T* f) → Null {}, self::C::field11 = ((self::C::T*) →* self::C::T* f) → self::C::T* => field1, self::C::field12 = () → Null => null, self::C::field13 = (S* s) → Null {}, self::C::field14 = (S* s) → S* => s, self::C::field15 = (() →* S* f) → Null {}, super core::Object::•() +class C extends core::Object { + covariant-by-class field self::C::T% field1; + covariant-by-class field () → self::C::T% field2; + field (self::C::T%) → void field3; + covariant-by-class field (self::C::T%) → self::C::T% field4; + covariant-by-class field () → () → self::C::T% field5; + field (() → self::C::T%) → void field6; + covariant-by-class field (() → self::C::T%) → self::C::T% field7; + covariant-by-class field ((self::C::T%) → void) → void field8; + covariant-by-class field ((self::C::T%) → void) → self::C::T% field9; + covariant-by-class field ((self::C::T%) → self::C::T%) → void field10; + covariant-by-class field ((self::C::T%) → self::C::T%) → self::C::T% field11; + covariant-by-class field () → S% field12; + covariant-by-class field (S%) → void field13; + covariant-by-class field (S%) → S% field14; + covariant-by-class field (() → S%) → void field15; + constructor •(self::C::T% field1) → self::C + : self::C::field1 = field1, self::C::field2 = () → self::C::T% => field1, self::C::field3 = (self::C::T% t) → void {}, self::C::field4 = (self::C::T% t) → self::C::T% => t, self::C::field5 = () → () → self::C::T% => () → self::C::T% => field1, self::C::field6 = (() → self::C::T% f) → void {}, self::C::field7 = (() → self::C::T% f) → self::C::T% => field1, self::C::field8 = ((self::C::T%) → void f) → void {}, self::C::field9 = ((self::C::T%) → void f) → self::C::T% => field1, self::C::field10 = ((self::C::T%) → self::C::T% f) → void {}, self::C::field11 = ((self::C::T%) → self::C::T% f) → self::C::T% => field1, self::C::field12 = () → Never => throw "", self::C::field13 = (S% s) → void {}, self::C::field14 = (S% s) → S% => s, self::C::field15 = (() → S% f) → void {}, super core::Object::•() ; - get getter1() → self::C::T* - return this.{self::C::field1}{self::C::T*}; - get getter2() → () →* self::C::T* - return this.{self::C::field2}{() →* self::C::T*}; - get getter3() → (self::C::T*) →* void - return this.{self::C::field3}{(self::C::T*) →* void}; - get getter4() → (self::C::T*) →* self::C::T* - return this.{self::C::field4}{(self::C::T*) →* self::C::T*}; - get getter5() → () →* () →* self::C::T* - return this.{self::C::field5}{() →* () →* self::C::T*}; - get getter6() → (() →* self::C::T*) →* void - return this.{self::C::field6}{(() →* self::C::T*) →* void}; - get getter7() → (() →* self::C::T*) →* self::C::T* - return this.{self::C::field7}{(() →* self::C::T*) →* self::C::T*}; - get getter8() → ((self::C::T*) →* void) →* void - return this.{self::C::field8}{((self::C::T*) →* void) →* void}; - get getter9() → ((self::C::T*) →* void) →* self::C::T* - return this.{self::C::field9}{((self::C::T*) →* void) →* self::C::T*}; - get getter10() → ((self::C::T*) →* self::C::T*) →* void - return this.{self::C::field10}{((self::C::T*) →* self::C::T*) →* void}; - get getter11() → ((self::C::T*) →* self::C::T*) →* self::C::T* - return this.{self::C::field11}{((self::C::T*) →* self::C::T*) →* self::C::T*}; - get getter12() → () →* S* - return this.{self::C::field12}{() →* S*}; - get getter13() → (S*) →* void - return this.{self::C::field13}{(S*) →* void}; - get getter14() → (S*) →* S* - return this.{self::C::field14}{(S*) →* S*}; - get getter15() → (() →* S*) →* void - return this.{self::C::field15}{(() →* S*) →* void}; - set setter1(covariant-by-class self::C::T* value) → void { + get getter1() → self::C::T% + return this.{self::C::field1}{self::C::T%}; + get getter2() → () → self::C::T% + return this.{self::C::field2}{() → self::C::T%}; + get getter3() → (self::C::T%) → void + return this.{self::C::field3}{(self::C::T%) → void}; + get getter4() → (self::C::T%) → self::C::T% + return this.{self::C::field4}{(self::C::T%) → self::C::T%}; + get getter5() → () → () → self::C::T% + return this.{self::C::field5}{() → () → self::C::T%}; + get getter6() → (() → self::C::T%) → void + return this.{self::C::field6}{(() → self::C::T%) → void}; + get getter7() → (() → self::C::T%) → self::C::T% + return this.{self::C::field7}{(() → self::C::T%) → self::C::T%}; + get getter8() → ((self::C::T%) → void) → void + return this.{self::C::field8}{((self::C::T%) → void) → void}; + get getter9() → ((self::C::T%) → void) → self::C::T% + return this.{self::C::field9}{((self::C::T%) → void) → self::C::T%}; + get getter10() → ((self::C::T%) → self::C::T%) → void + return this.{self::C::field10}{((self::C::T%) → self::C::T%) → void}; + get getter11() → ((self::C::T%) → self::C::T%) → self::C::T% + return this.{self::C::field11}{((self::C::T%) → self::C::T%) → self::C::T%}; + get getter12() → () → S% + return this.{self::C::field12}{() → S%}; + get getter13() → (S%) → void + return this.{self::C::field13}{(S%) → void}; + get getter14() → (S%) → S% + return this.{self::C::field14}{(S%) → S%}; + get getter15() → (() → S%) → void + return this.{self::C::field15}{(() → S%) → void}; + set setter1(covariant-by-class self::C::T% value) → void { this.{self::C::field1} = value; } - set setter2(covariant-by-class () →* self::C::T* value) → void { + set setter2(covariant-by-class () → self::C::T% value) → void { this.{self::C::field2} = value; } - set setter3((self::C::T*) →* void value) → void { + set setter3((self::C::T%) → void value) → void { this.{self::C::field3} = value; } - set setter4(covariant-by-class (self::C::T*) →* self::C::T* value) → void { + set setter4(covariant-by-class (self::C::T%) → self::C::T% value) → void { this.{self::C::field4} = value; } - set setter5(covariant-by-class () →* () →* self::C::T* value) → void { + set setter5(covariant-by-class () → () → self::C::T% value) → void { this.{self::C::field5} = value; } - set setter6((() →* self::C::T*) →* void value) → void { + set setter6((() → self::C::T%) → void value) → void { this.{self::C::field6} = value; } - set setter7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void { + set setter7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void { this.{self::C::field7} = value; } - set setter8(covariant-by-class ((self::C::T*) →* void) →* void value) → void { + set setter8(covariant-by-class ((self::C::T%) → void) → void value) → void { this.{self::C::field8} = value; } - set setter9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void { + set setter9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void { this.{self::C::field9} = value; } - set setter10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void { + set setter10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void { this.{self::C::field10} = value; } - set setter11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void { + set setter11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void { this.{self::C::field11} = value; } - set setter12(covariant-by-class () →* S* value) → void { + set setter12(covariant-by-class () → S% value) → void { this.{self::C::field12} = value; } - set setter13(covariant-by-class (S*) →* void value) → void { + set setter13(covariant-by-class (S%) → void value) → void { this.{self::C::field13} = value; } - set setter14(covariant-by-class (S*) →* S* value) → void { + set setter14(covariant-by-class (S%) → S% value) → void { this.{self::C::field14} = value; } - set setter15(covariant-by-class (() →* S*) →* void value) → void { + set setter15(covariant-by-class (() → S%) → void value) → void { this.{self::C::field15} = value; } - method method1(covariant-by-class self::C::T* value) → void { + method method1(covariant-by-class self::C::T% value) → void { this.{self::C::field1} = value; } - method method2(covariant-by-class () →* self::C::T* value) → void { + method method2(covariant-by-class () → self::C::T% value) → void { this.{self::C::field2} = value; } - method method3((self::C::T*) →* void value) → void { + method method3((self::C::T%) → void value) → void { this.{self::C::field3} = value; } - method method4(covariant-by-class (self::C::T*) →* self::C::T* value) → void { + method method4(covariant-by-class (self::C::T%) → self::C::T% value) → void { this.{self::C::field4} = value; } - method method5(covariant-by-class () →* () →* self::C::T* value) → void { + method method5(covariant-by-class () → () → self::C::T% value) → void { this.{self::C::field5} = value; } - method method6((() →* self::C::T*) →* void value) → void { + method method6((() → self::C::T%) → void value) → void { this.{self::C::field6} = value; } - method method7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void { + method method7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void { this.{self::C::field7} = value; } - method method8(covariant-by-class ((self::C::T*) →* void) →* void value) → void { + method method8(covariant-by-class ((self::C::T%) → void) → void value) → void { this.{self::C::field8} = value; } - method method9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void { + method method9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void { this.{self::C::field9} = value; } - method method10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void { + method method10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void { this.{self::C::field10} = value; } - method method11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void { + method method11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void { this.{self::C::field11} = value; } - method method12(covariant-by-class () →* S* value) → void { + method method12(covariant-by-class () → S% value) → void { this.{self::C::field12} = value; } - method method13(covariant-by-class (S*) →* void value) → void { + method method13(covariant-by-class (S%) → void value) → void { this.{self::C::field13} = value; } - method method14(covariant-by-class (S*) →* S* value) → void { + method method14(covariant-by-class (S%) → S% value) → void { this.{self::C::field14} = value; } - method method15(covariant-by-class (() →* S*) →* void value) → void { + method method15(covariant-by-class (() → S%) → void value) → void { this.{self::C::field15} = value; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - self::C* c = new self::C::•(0); - c.{self::C::field1}{core::num*}; - c.{self::C::field2}{() →* core::num*}; + self::C c = new self::C::•(0); + c.{self::C::field1}{core::num}; + c.{self::C::field2}{() → core::num}; try { - c.{self::C::field3}{(core::num*) →* void} as{TypeError,CovarianceCheck} (core::num*) →* void; + c.{self::C::field3}{(core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field4}{(core::num*) →* core::num*} as{TypeError,CovarianceCheck} (core::num*) →* core::num*; + c.{self::C::field4}{(core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::field5}{() →* () →* core::num*}; + c.{self::C::field5}{() → () → core::num}; try { - c.{self::C::field6}{(() →* core::num*) →* void} as{TypeError,CovarianceCheck} (() →* core::num*) →* void; + c.{self::C::field6}{(() → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field7}{(() →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*; + c.{self::C::field7}{(() → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::field8}{((core::num*) →* void) →* void}; - c.{self::C::field9}{((core::num*) →* void) →* core::num*}; + c.{self::C::field8}{((core::num) → void) → void}; + c.{self::C::field9}{((core::num) → void) → core::num}; try { - c.{self::C::field10}{((core::num*) →* core::num*) →* void} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void; + c.{self::C::field10}{((core::num) → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field11}{((core::num*) →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*; + c.{self::C::field11}{((core::num) → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field12}{() →* S*} as{TypeError,CovarianceCheck} () →* S*; + c.{self::C::field12}{() → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} () → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field13}{(S*) →* void} as{TypeError,CovarianceCheck} (S*) →* void; + c.{self::C::field13}{(S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field14}{(S*) →* S*} as{TypeError,CovarianceCheck} (S*) →* S*; + c.{self::C::field14}{(S) → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field15}{(() →* S*) →* void} as{TypeError,CovarianceCheck} (() →* S*) →* void; + c.{self::C::field15}{(() → S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter1}{core::num*}; - c.{self::C::getter2}{() →* core::num*}; + c.{self::C::getter1}{core::num}; + c.{self::C::getter2}{() → core::num}; try { - c.{self::C::getter3}{(core::num*) →* void} as{TypeError,CovarianceCheck} (core::num*) →* void; + c.{self::C::getter3}{(core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter4}{(core::num*) →* core::num*} as{TypeError,CovarianceCheck} (core::num*) →* core::num*; + c.{self::C::getter4}{(core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter5}{() →* () →* core::num*}; + c.{self::C::getter5}{() → () → core::num}; try { - c.{self::C::getter6}{(() →* core::num*) →* void} as{TypeError,CovarianceCheck} (() →* core::num*) →* void; + c.{self::C::getter6}{(() → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter7}{(() →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*; + c.{self::C::getter7}{(() → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter8}{((core::num*) →* void) →* void}; - c.{self::C::getter9}{((core::num*) →* void) →* core::num*}; + c.{self::C::getter8}{((core::num) → void) → void}; + c.{self::C::getter9}{((core::num) → void) → core::num}; try { - c.{self::C::getter10}{((core::num*) →* core::num*) →* void} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void; + c.{self::C::getter10}{((core::num) → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter11}{((core::num*) →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*; + c.{self::C::getter11}{((core::num) → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter12}{() →* S*} as{TypeError,CovarianceCheck} () →* S*; + c.{self::C::getter12}{() → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} () → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter13}{(S*) →* void} as{TypeError,CovarianceCheck} (S*) →* void; + c.{self::C::getter13}{(S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter14}{(S*) →* S*} as{TypeError,CovarianceCheck} (S*) →* S*; + c.{self::C::getter14}{(S) → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter15}{(() →* S*) →* void} as{TypeError,CovarianceCheck} (() →* S*) →* void; + c.{self::C::getter15}{(() → S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { c.{self::C::setter1} = 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter2} = () → core::double* => 0.5; + c.{self::C::setter2} = () → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::setter3} = (core::num* n) → Null {}; + c.{self::C::setter3} = (core::num n) → void {}; try { - c.{self::C::setter4} = (core::num* n) → core::double* => 0.5; + c.{self::C::setter4} = (core::num n) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter5} = () → () →* core::double* => () → core::double* => 0.5; + c.{self::C::setter5} = () → () → core::double => () → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::setter6} = (() →* core::num* f) → Null {}; + c.{self::C::setter6} = (() → core::num f) → void {}; try { - c.{self::C::setter7} = (() →* core::num* f) → core::double* => 0.5; + c.{self::C::setter7} = (() → core::num f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter8} = ((core::double*) →* void f) → Null {}; + c.{self::C::setter8} = ((core::double) → void f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter9} = ((core::double*) →* void f) → core::double* => 0.5; + c.{self::C::setter9} = ((core::double) → void f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter10} = ((core::double*) →* core::num* f) → Null {}; + c.{self::C::setter10} = ((core::double) → core::num f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter11} = ((core::double*) →* core::num* f) → core::double* => 0.5; + c.{self::C::setter11} = ((core::double) → core::num f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter12} = () → Null => null; + c.{self::C::setter12} = () → Never => throw ""; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter13} = (S* s) → Null {}; + c.{self::C::setter13} = (S s) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter14} = (S* s) → S* => s; + c.{self::C::setter14} = (S s) → S => s; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter15} = (() →* S* f) → Null {}; + c.{self::C::setter15} = (() → S f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method1}(0.5){(core::num*) →* void}; + c.{self::C::method1}(0.5){(core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method2}(() → core::double* => 0.5){(() →* core::num*) →* void}; + c.{self::C::method2}(() → core::double => 0.5){(() → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::method3}((core::num* n) → Null {}){((core::num*) →* void) →* void}; + c.{self::C::method3}((core::num n) → void {}){((core::num) → void) → void}; try { - c.{self::C::method4}((core::num* n) → core::double* => 0.5){((core::num*) →* core::num*) →* void}; + c.{self::C::method4}((core::num n) → core::double => 0.5){((core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method5}(() → () →* core::double* => () → core::double* => 0.5){(() →* () →* core::num*) →* void}; + c.{self::C::method5}(() → () → core::double => () → core::double => 0.5){(() → () → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::method6}((() →* core::num* f) → Null {}){((() →* core::num*) →* void) →* void}; + c.{self::C::method6}((() → core::num f) → void {}){((() → core::num) → void) → void}; try { - c.{self::C::method7}((() →* core::num* f) → core::double* => 0.5){((() →* core::num*) →* core::num*) →* void}; + c.{self::C::method7}((() → core::num f) → core::double => 0.5){((() → core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method8}(((core::double*) →* void f) → Null {}){(((core::num*) →* void) →* void) →* void}; + c.{self::C::method8}(((core::double) → void f) → void {}){(((core::num) → void) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method9}(((core::double*) →* void f) → core::double* => 0.5){(((core::num*) →* void) →* core::num*) →* void}; + c.{self::C::method9}(((core::double) → void f) → core::double => 0.5){(((core::num) → void) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method10}(((core::double*) →* core::num* f) → Null {}){(((core::num*) →* core::num*) →* void) →* void}; + c.{self::C::method10}(((core::double) → core::num f) → void {}){(((core::num) → core::num) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method11}(((core::double*) →* core::num* f) → core::double* => 0.5){(((core::num*) →* core::num*) →* core::num*) →* void}; + c.{self::C::method11}(((core::double) → core::num f) → core::double => 0.5){(((core::num) → core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method12}(() → Null => null){(() →* S*) →* void}; + c.{self::C::method12}(() → Never => throw ""){(() → S) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method13}((S* s) → Null {}){((S*) →* void) →* void}; + c.{self::C::method13}((S s) → void {}){((S) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method14}((S* s) → S* => s){((S*) →* S*) →* void}; + c.{self::C::method14}((S s) → S => s){((S) → S) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method15}((() →* S* f) → Null {}){((() →* S*) →* void) →* void}; + c.{self::C::method15}((() → S f) → void {}){((() → S) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } } diff --git a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.modular.expect b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.modular.expect index 5f06498b837..f80ffa16cec 100644 --- a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.modular.expect @@ -1,493 +1,483 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class C extends core::Object { - covariant-by-class field self::C::T* field1; - covariant-by-class field () →* self::C::T* field2; - field (self::C::T*) →* void field3; - covariant-by-class field (self::C::T*) →* self::C::T* field4; - covariant-by-class field () →* () →* self::C::T* field5; - field (() →* self::C::T*) →* void field6; - covariant-by-class field (() →* self::C::T*) →* self::C::T* field7; - covariant-by-class field ((self::C::T*) →* void) →* void field8; - covariant-by-class field ((self::C::T*) →* void) →* self::C::T* field9; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* void field10; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* self::C::T* field11; - covariant-by-class field () →* S* field12; - covariant-by-class field (S*) →* void field13; - covariant-by-class field (S*) →* S* field14; - covariant-by-class field (() →* S*) →* void field15; - constructor •(self::C::T* field1) → self::C* - : self::C::field1 = field1, self::C::field2 = () → self::C::T* => field1, self::C::field3 = (self::C::T* t) → Null {}, self::C::field4 = (self::C::T* t) → self::C::T* => t, self::C::field5 = () → () →* self::C::T* => () → self::C::T* => field1, self::C::field6 = (() →* self::C::T* f) → Null {}, self::C::field7 = (() →* self::C::T* f) → self::C::T* => field1, self::C::field8 = ((self::C::T*) →* void f) → Null {}, self::C::field9 = ((self::C::T*) →* void f) → self::C::T* => field1, self::C::field10 = ((self::C::T*) →* self::C::T* f) → Null {}, self::C::field11 = ((self::C::T*) →* self::C::T* f) → self::C::T* => field1, self::C::field12 = () → Null => null, self::C::field13 = (S* s) → Null {}, self::C::field14 = (S* s) → S* => s, self::C::field15 = (() →* S* f) → Null {}, super core::Object::•() +class C extends core::Object { + covariant-by-class field self::C::T% field1; + covariant-by-class field () → self::C::T% field2; + field (self::C::T%) → void field3; + covariant-by-class field (self::C::T%) → self::C::T% field4; + covariant-by-class field () → () → self::C::T% field5; + field (() → self::C::T%) → void field6; + covariant-by-class field (() → self::C::T%) → self::C::T% field7; + covariant-by-class field ((self::C::T%) → void) → void field8; + covariant-by-class field ((self::C::T%) → void) → self::C::T% field9; + covariant-by-class field ((self::C::T%) → self::C::T%) → void field10; + covariant-by-class field ((self::C::T%) → self::C::T%) → self::C::T% field11; + covariant-by-class field () → S% field12; + covariant-by-class field (S%) → void field13; + covariant-by-class field (S%) → S% field14; + covariant-by-class field (() → S%) → void field15; + constructor •(self::C::T% field1) → self::C + : self::C::field1 = field1, self::C::field2 = () → self::C::T% => field1, self::C::field3 = (self::C::T% t) → void {}, self::C::field4 = (self::C::T% t) → self::C::T% => t, self::C::field5 = () → () → self::C::T% => () → self::C::T% => field1, self::C::field6 = (() → self::C::T% f) → void {}, self::C::field7 = (() → self::C::T% f) → self::C::T% => field1, self::C::field8 = ((self::C::T%) → void f) → void {}, self::C::field9 = ((self::C::T%) → void f) → self::C::T% => field1, self::C::field10 = ((self::C::T%) → self::C::T% f) → void {}, self::C::field11 = ((self::C::T%) → self::C::T% f) → self::C::T% => field1, self::C::field12 = () → Never => throw "", self::C::field13 = (S% s) → void {}, self::C::field14 = (S% s) → S% => s, self::C::field15 = (() → S% f) → void {}, super core::Object::•() ; - get getter1() → self::C::T* - return this.{self::C::field1}{self::C::T*}; - get getter2() → () →* self::C::T* - return this.{self::C::field2}{() →* self::C::T*}; - get getter3() → (self::C::T*) →* void - return this.{self::C::field3}{(self::C::T*) →* void}; - get getter4() → (self::C::T*) →* self::C::T* - return this.{self::C::field4}{(self::C::T*) →* self::C::T*}; - get getter5() → () →* () →* self::C::T* - return this.{self::C::field5}{() →* () →* self::C::T*}; - get getter6() → (() →* self::C::T*) →* void - return this.{self::C::field6}{(() →* self::C::T*) →* void}; - get getter7() → (() →* self::C::T*) →* self::C::T* - return this.{self::C::field7}{(() →* self::C::T*) →* self::C::T*}; - get getter8() → ((self::C::T*) →* void) →* void - return this.{self::C::field8}{((self::C::T*) →* void) →* void}; - get getter9() → ((self::C::T*) →* void) →* self::C::T* - return this.{self::C::field9}{((self::C::T*) →* void) →* self::C::T*}; - get getter10() → ((self::C::T*) →* self::C::T*) →* void - return this.{self::C::field10}{((self::C::T*) →* self::C::T*) →* void}; - get getter11() → ((self::C::T*) →* self::C::T*) →* self::C::T* - return this.{self::C::field11}{((self::C::T*) →* self::C::T*) →* self::C::T*}; - get getter12() → () →* S* - return this.{self::C::field12}{() →* S*}; - get getter13() → (S*) →* void - return this.{self::C::field13}{(S*) →* void}; - get getter14() → (S*) →* S* - return this.{self::C::field14}{(S*) →* S*}; - get getter15() → (() →* S*) →* void - return this.{self::C::field15}{(() →* S*) →* void}; - set setter1(covariant-by-class self::C::T* value) → void { + get getter1() → self::C::T% + return this.{self::C::field1}{self::C::T%}; + get getter2() → () → self::C::T% + return this.{self::C::field2}{() → self::C::T%}; + get getter3() → (self::C::T%) → void + return this.{self::C::field3}{(self::C::T%) → void}; + get getter4() → (self::C::T%) → self::C::T% + return this.{self::C::field4}{(self::C::T%) → self::C::T%}; + get getter5() → () → () → self::C::T% + return this.{self::C::field5}{() → () → self::C::T%}; + get getter6() → (() → self::C::T%) → void + return this.{self::C::field6}{(() → self::C::T%) → void}; + get getter7() → (() → self::C::T%) → self::C::T% + return this.{self::C::field7}{(() → self::C::T%) → self::C::T%}; + get getter8() → ((self::C::T%) → void) → void + return this.{self::C::field8}{((self::C::T%) → void) → void}; + get getter9() → ((self::C::T%) → void) → self::C::T% + return this.{self::C::field9}{((self::C::T%) → void) → self::C::T%}; + get getter10() → ((self::C::T%) → self::C::T%) → void + return this.{self::C::field10}{((self::C::T%) → self::C::T%) → void}; + get getter11() → ((self::C::T%) → self::C::T%) → self::C::T% + return this.{self::C::field11}{((self::C::T%) → self::C::T%) → self::C::T%}; + get getter12() → () → S% + return this.{self::C::field12}{() → S%}; + get getter13() → (S%) → void + return this.{self::C::field13}{(S%) → void}; + get getter14() → (S%) → S% + return this.{self::C::field14}{(S%) → S%}; + get getter15() → (() → S%) → void + return this.{self::C::field15}{(() → S%) → void}; + set setter1(covariant-by-class self::C::T% value) → void { this.{self::C::field1} = value; } - set setter2(covariant-by-class () →* self::C::T* value) → void { + set setter2(covariant-by-class () → self::C::T% value) → void { this.{self::C::field2} = value; } - set setter3((self::C::T*) →* void value) → void { + set setter3((self::C::T%) → void value) → void { this.{self::C::field3} = value; } - set setter4(covariant-by-class (self::C::T*) →* self::C::T* value) → void { + set setter4(covariant-by-class (self::C::T%) → self::C::T% value) → void { this.{self::C::field4} = value; } - set setter5(covariant-by-class () →* () →* self::C::T* value) → void { + set setter5(covariant-by-class () → () → self::C::T% value) → void { this.{self::C::field5} = value; } - set setter6((() →* self::C::T*) →* void value) → void { + set setter6((() → self::C::T%) → void value) → void { this.{self::C::field6} = value; } - set setter7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void { + set setter7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void { this.{self::C::field7} = value; } - set setter8(covariant-by-class ((self::C::T*) →* void) →* void value) → void { + set setter8(covariant-by-class ((self::C::T%) → void) → void value) → void { this.{self::C::field8} = value; } - set setter9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void { + set setter9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void { this.{self::C::field9} = value; } - set setter10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void { + set setter10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void { this.{self::C::field10} = value; } - set setter11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void { + set setter11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void { this.{self::C::field11} = value; } - set setter12(covariant-by-class () →* S* value) → void { + set setter12(covariant-by-class () → S% value) → void { this.{self::C::field12} = value; } - set setter13(covariant-by-class (S*) →* void value) → void { + set setter13(covariant-by-class (S%) → void value) → void { this.{self::C::field13} = value; } - set setter14(covariant-by-class (S*) →* S* value) → void { + set setter14(covariant-by-class (S%) → S% value) → void { this.{self::C::field14} = value; } - set setter15(covariant-by-class (() →* S*) →* void value) → void { + set setter15(covariant-by-class (() → S%) → void value) → void { this.{self::C::field15} = value; } - method method1(covariant-by-class self::C::T* value) → void { + method method1(covariant-by-class self::C::T% value) → void { this.{self::C::field1} = value; } - method method2(covariant-by-class () →* self::C::T* value) → void { + method method2(covariant-by-class () → self::C::T% value) → void { this.{self::C::field2} = value; } - method method3((self::C::T*) →* void value) → void { + method method3((self::C::T%) → void value) → void { this.{self::C::field3} = value; } - method method4(covariant-by-class (self::C::T*) →* self::C::T* value) → void { + method method4(covariant-by-class (self::C::T%) → self::C::T% value) → void { this.{self::C::field4} = value; } - method method5(covariant-by-class () →* () →* self::C::T* value) → void { + method method5(covariant-by-class () → () → self::C::T% value) → void { this.{self::C::field5} = value; } - method method6((() →* self::C::T*) →* void value) → void { + method method6((() → self::C::T%) → void value) → void { this.{self::C::field6} = value; } - method method7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void { + method method7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void { this.{self::C::field7} = value; } - method method8(covariant-by-class ((self::C::T*) →* void) →* void value) → void { + method method8(covariant-by-class ((self::C::T%) → void) → void value) → void { this.{self::C::field8} = value; } - method method9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void { + method method9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void { this.{self::C::field9} = value; } - method method10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void { + method method10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void { this.{self::C::field10} = value; } - method method11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void { + method method11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void { this.{self::C::field11} = value; } - method method12(covariant-by-class () →* S* value) → void { + method method12(covariant-by-class () → S% value) → void { this.{self::C::field12} = value; } - method method13(covariant-by-class (S*) →* void value) → void { + method method13(covariant-by-class (S%) → void value) → void { this.{self::C::field13} = value; } - method method14(covariant-by-class (S*) →* S* value) → void { + method method14(covariant-by-class (S%) → S% value) → void { this.{self::C::field14} = value; } - method method15(covariant-by-class (() →* S*) →* void value) → void { + method method15(covariant-by-class (() → S%) → void value) → void { this.{self::C::field15} = value; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - self::C* c = new self::C::•(0); - c.{self::C::field1}{core::num*}; - c.{self::C::field2}{() →* core::num*}; + self::C c = new self::C::•(0); + c.{self::C::field1}{core::num}; + c.{self::C::field2}{() → core::num}; try { - c.{self::C::field3}{(core::num*) →* void} as{TypeError,CovarianceCheck} (core::num*) →* void; + c.{self::C::field3}{(core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field4}{(core::num*) →* core::num*} as{TypeError,CovarianceCheck} (core::num*) →* core::num*; + c.{self::C::field4}{(core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::field5}{() →* () →* core::num*}; + c.{self::C::field5}{() → () → core::num}; try { - c.{self::C::field6}{(() →* core::num*) →* void} as{TypeError,CovarianceCheck} (() →* core::num*) →* void; + c.{self::C::field6}{(() → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field7}{(() →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*; + c.{self::C::field7}{(() → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::field8}{((core::num*) →* void) →* void}; - c.{self::C::field9}{((core::num*) →* void) →* core::num*}; + c.{self::C::field8}{((core::num) → void) → void}; + c.{self::C::field9}{((core::num) → void) → core::num}; try { - c.{self::C::field10}{((core::num*) →* core::num*) →* void} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void; + c.{self::C::field10}{((core::num) → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field11}{((core::num*) →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*; + c.{self::C::field11}{((core::num) → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field12}{() →* S*} as{TypeError,CovarianceCheck} () →* S*; + c.{self::C::field12}{() → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} () → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field13}{(S*) →* void} as{TypeError,CovarianceCheck} (S*) →* void; + c.{self::C::field13}{(S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field14}{(S*) →* S*} as{TypeError,CovarianceCheck} (S*) →* S*; + c.{self::C::field14}{(S) → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field15}{(() →* S*) →* void} as{TypeError,CovarianceCheck} (() →* S*) →* void; + c.{self::C::field15}{(() → S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter1}{core::num*}; - c.{self::C::getter2}{() →* core::num*}; + c.{self::C::getter1}{core::num}; + c.{self::C::getter2}{() → core::num}; try { - c.{self::C::getter3}{(core::num*) →* void} as{TypeError,CovarianceCheck} (core::num*) →* void; + c.{self::C::getter3}{(core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter4}{(core::num*) →* core::num*} as{TypeError,CovarianceCheck} (core::num*) →* core::num*; + c.{self::C::getter4}{(core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter5}{() →* () →* core::num*}; + c.{self::C::getter5}{() → () → core::num}; try { - c.{self::C::getter6}{(() →* core::num*) →* void} as{TypeError,CovarianceCheck} (() →* core::num*) →* void; + c.{self::C::getter6}{(() → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter7}{(() →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*; + c.{self::C::getter7}{(() → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter8}{((core::num*) →* void) →* void}; - c.{self::C::getter9}{((core::num*) →* void) →* core::num*}; + c.{self::C::getter8}{((core::num) → void) → void}; + c.{self::C::getter9}{((core::num) → void) → core::num}; try { - c.{self::C::getter10}{((core::num*) →* core::num*) →* void} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void; + c.{self::C::getter10}{((core::num) → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter11}{((core::num*) →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*; + c.{self::C::getter11}{((core::num) → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter12}{() →* S*} as{TypeError,CovarianceCheck} () →* S*; + c.{self::C::getter12}{() → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} () → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter13}{(S*) →* void} as{TypeError,CovarianceCheck} (S*) →* void; + c.{self::C::getter13}{(S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter14}{(S*) →* S*} as{TypeError,CovarianceCheck} (S*) →* S*; + c.{self::C::getter14}{(S) → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter15}{(() →* S*) →* void} as{TypeError,CovarianceCheck} (() →* S*) →* void; + c.{self::C::getter15}{(() → S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { c.{self::C::setter1} = 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter2} = () → core::double* => 0.5; + c.{self::C::setter2} = () → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::setter3} = (core::num* n) → Null {}; + c.{self::C::setter3} = (core::num n) → void {}; try { - c.{self::C::setter4} = (core::num* n) → core::double* => 0.5; + c.{self::C::setter4} = (core::num n) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter5} = () → () →* core::double* => () → core::double* => 0.5; + c.{self::C::setter5} = () → () → core::double => () → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::setter6} = (() →* core::num* f) → Null {}; + c.{self::C::setter6} = (() → core::num f) → void {}; try { - c.{self::C::setter7} = (() →* core::num* f) → core::double* => 0.5; + c.{self::C::setter7} = (() → core::num f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter8} = ((core::double*) →* void f) → Null {}; + c.{self::C::setter8} = ((core::double) → void f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter9} = ((core::double*) →* void f) → core::double* => 0.5; + c.{self::C::setter9} = ((core::double) → void f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter10} = ((core::double*) →* core::num* f) → Null {}; + c.{self::C::setter10} = ((core::double) → core::num f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter11} = ((core::double*) →* core::num* f) → core::double* => 0.5; + c.{self::C::setter11} = ((core::double) → core::num f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter12} = () → Null => null; + c.{self::C::setter12} = () → Never => throw ""; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter13} = (S* s) → Null {}; + c.{self::C::setter13} = (S s) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter14} = (S* s) → S* => s; + c.{self::C::setter14} = (S s) → S => s; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter15} = (() →* S* f) → Null {}; + c.{self::C::setter15} = (() → S f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method1}(0.5){(core::num*) →* void}; + c.{self::C::method1}(0.5){(core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method2}(() → core::double* => 0.5){(() →* core::num*) →* void}; + c.{self::C::method2}(() → core::double => 0.5){(() → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::method3}((core::num* n) → Null {}){((core::num*) →* void) →* void}; + c.{self::C::method3}((core::num n) → void {}){((core::num) → void) → void}; try { - c.{self::C::method4}((core::num* n) → core::double* => 0.5){((core::num*) →* core::num*) →* void}; + c.{self::C::method4}((core::num n) → core::double => 0.5){((core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method5}(() → () →* core::double* => () → core::double* => 0.5){(() →* () →* core::num*) →* void}; + c.{self::C::method5}(() → () → core::double => () → core::double => 0.5){(() → () → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::method6}((() →* core::num* f) → Null {}){((() →* core::num*) →* void) →* void}; + c.{self::C::method6}((() → core::num f) → void {}){((() → core::num) → void) → void}; try { - c.{self::C::method7}((() →* core::num* f) → core::double* => 0.5){((() →* core::num*) →* core::num*) →* void}; + c.{self::C::method7}((() → core::num f) → core::double => 0.5){((() → core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method8}(((core::double*) →* void f) → Null {}){(((core::num*) →* void) →* void) →* void}; + c.{self::C::method8}(((core::double) → void f) → void {}){(((core::num) → void) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method9}(((core::double*) →* void f) → core::double* => 0.5){(((core::num*) →* void) →* core::num*) →* void}; + c.{self::C::method9}(((core::double) → void f) → core::double => 0.5){(((core::num) → void) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method10}(((core::double*) →* core::num* f) → Null {}){(((core::num*) →* core::num*) →* void) →* void}; + c.{self::C::method10}(((core::double) → core::num f) → void {}){(((core::num) → core::num) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method11}(((core::double*) →* core::num* f) → core::double* => 0.5){(((core::num*) →* core::num*) →* core::num*) →* void}; + c.{self::C::method11}(((core::double) → core::num f) → core::double => 0.5){(((core::num) → core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method12}(() → Null => null){(() →* S*) →* void}; + c.{self::C::method12}(() → Never => throw ""){(() → S) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method13}((S* s) → Null {}){((S*) →* void) →* void}; + c.{self::C::method13}((S s) → void {}){((S) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method14}((S* s) → S* => s){((S*) →* S*) →* void}; + c.{self::C::method14}((S s) → S => s){((S) → S) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method15}((() →* S* f) → Null {}){((() →* S*) →* void) →* void}; + c.{self::C::method15}((() → S f) → void {}){((() → S) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } } diff --git a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.outline.expect b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.outline.expect index 0280a2699a8..f9f7a84c67e 100644 --- a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.outline.expect @@ -1,125 +1,115 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class C extends core::Object { - covariant-by-class field self::C::T* field1; - covariant-by-class field () →* self::C::T* field2; - field (self::C::T*) →* void field3; - covariant-by-class field (self::C::T*) →* self::C::T* field4; - covariant-by-class field () →* () →* self::C::T* field5; - field (() →* self::C::T*) →* void field6; - covariant-by-class field (() →* self::C::T*) →* self::C::T* field7; - covariant-by-class field ((self::C::T*) →* void) →* void field8; - covariant-by-class field ((self::C::T*) →* void) →* self::C::T* field9; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* void field10; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* self::C::T* field11; - covariant-by-class field () →* S* field12; - covariant-by-class field (S*) →* void field13; - covariant-by-class field (S*) →* S* field14; - covariant-by-class field (() →* S*) →* void field15; - constructor •(self::C::T* field1) → self::C* +class C extends core::Object { + covariant-by-class field self::C::T% field1; + covariant-by-class field () → self::C::T% field2; + field (self::C::T%) → void field3; + covariant-by-class field (self::C::T%) → self::C::T% field4; + covariant-by-class field () → () → self::C::T% field5; + field (() → self::C::T%) → void field6; + covariant-by-class field (() → self::C::T%) → self::C::T% field7; + covariant-by-class field ((self::C::T%) → void) → void field8; + covariant-by-class field ((self::C::T%) → void) → self::C::T% field9; + covariant-by-class field ((self::C::T%) → self::C::T%) → void field10; + covariant-by-class field ((self::C::T%) → self::C::T%) → self::C::T% field11; + covariant-by-class field () → S% field12; + covariant-by-class field (S%) → void field13; + covariant-by-class field (S%) → S% field14; + covariant-by-class field (() → S%) → void field15; + constructor •(self::C::T% field1) → self::C ; - get getter1() → self::C::T* + get getter1() → self::C::T% ; - get getter2() → () →* self::C::T* + get getter2() → () → self::C::T% ; - get getter3() → (self::C::T*) →* void + get getter3() → (self::C::T%) → void ; - get getter4() → (self::C::T*) →* self::C::T* + get getter4() → (self::C::T%) → self::C::T% ; - get getter5() → () →* () →* self::C::T* + get getter5() → () → () → self::C::T% ; - get getter6() → (() →* self::C::T*) →* void + get getter6() → (() → self::C::T%) → void ; - get getter7() → (() →* self::C::T*) →* self::C::T* + get getter7() → (() → self::C::T%) → self::C::T% ; - get getter8() → ((self::C::T*) →* void) →* void + get getter8() → ((self::C::T%) → void) → void ; - get getter9() → ((self::C::T*) →* void) →* self::C::T* + get getter9() → ((self::C::T%) → void) → self::C::T% ; - get getter10() → ((self::C::T*) →* self::C::T*) →* void + get getter10() → ((self::C::T%) → self::C::T%) → void ; - get getter11() → ((self::C::T*) →* self::C::T*) →* self::C::T* + get getter11() → ((self::C::T%) → self::C::T%) → self::C::T% ; - get getter12() → () →* S* + get getter12() → () → S% ; - get getter13() → (S*) →* void + get getter13() → (S%) → void ; - get getter14() → (S*) →* S* + get getter14() → (S%) → S% ; - get getter15() → (() →* S*) →* void + get getter15() → (() → S%) → void ; - set setter1(covariant-by-class self::C::T* value) → void + set setter1(covariant-by-class self::C::T% value) → void ; - set setter2(covariant-by-class () →* self::C::T* value) → void + set setter2(covariant-by-class () → self::C::T% value) → void ; - set setter3((self::C::T*) →* void value) → void + set setter3((self::C::T%) → void value) → void ; - set setter4(covariant-by-class (self::C::T*) →* self::C::T* value) → void + set setter4(covariant-by-class (self::C::T%) → self::C::T% value) → void ; - set setter5(covariant-by-class () →* () →* self::C::T* value) → void + set setter5(covariant-by-class () → () → self::C::T% value) → void ; - set setter6((() →* self::C::T*) →* void value) → void + set setter6((() → self::C::T%) → void value) → void ; - set setter7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void + set setter7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void ; - set setter8(covariant-by-class ((self::C::T*) →* void) →* void value) → void + set setter8(covariant-by-class ((self::C::T%) → void) → void value) → void ; - set setter9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void + set setter9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void ; - set setter10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void + set setter10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void ; - set setter11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void + set setter11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void ; - set setter12(covariant-by-class () →* S* value) → void + set setter12(covariant-by-class () → S% value) → void ; - set setter13(covariant-by-class (S*) →* void value) → void + set setter13(covariant-by-class (S%) → void value) → void ; - set setter14(covariant-by-class (S*) →* S* value) → void + set setter14(covariant-by-class (S%) → S% value) → void ; - set setter15(covariant-by-class (() →* S*) →* void value) → void + set setter15(covariant-by-class (() → S%) → void value) → void ; - method method1(covariant-by-class self::C::T* value) → void + method method1(covariant-by-class self::C::T% value) → void ; - method method2(covariant-by-class () →* self::C::T* value) → void + method method2(covariant-by-class () → self::C::T% value) → void ; - method method3((self::C::T*) →* void value) → void + method method3((self::C::T%) → void value) → void ; - method method4(covariant-by-class (self::C::T*) →* self::C::T* value) → void + method method4(covariant-by-class (self::C::T%) → self::C::T% value) → void ; - method method5(covariant-by-class () →* () →* self::C::T* value) → void + method method5(covariant-by-class () → () → self::C::T% value) → void ; - method method6((() →* self::C::T*) →* void value) → void + method method6((() → self::C::T%) → void value) → void ; - method method7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void + method method7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void ; - method method8(covariant-by-class ((self::C::T*) →* void) →* void value) → void + method method8(covariant-by-class ((self::C::T%) → void) → void value) → void ; - method method9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void + method method9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void ; - method method10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void + method method10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void ; - method method11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void + method method11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void ; - method method12(covariant-by-class () →* S* value) → void + method method12(covariant-by-class () → S% value) → void ; - method method13(covariant-by-class (S*) →* void value) → void + method method13(covariant-by-class (S%) → void value) → void ; - method method14(covariant-by-class (S*) →* S* value) → void + method method14(covariant-by-class (S%) → S% value) → void ; - method method15(covariant-by-class (() →* S*) →* void value) → void + method method15(covariant-by-class (() → S%) → void value) → void ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.transformed.expect b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.transformed.expect index 5f06498b837..f80ffa16cec 100644 --- a/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/non_covariant_checks.dart.weak.transformed.expect @@ -1,493 +1,483 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; -class C extends core::Object { - covariant-by-class field self::C::T* field1; - covariant-by-class field () →* self::C::T* field2; - field (self::C::T*) →* void field3; - covariant-by-class field (self::C::T*) →* self::C::T* field4; - covariant-by-class field () →* () →* self::C::T* field5; - field (() →* self::C::T*) →* void field6; - covariant-by-class field (() →* self::C::T*) →* self::C::T* field7; - covariant-by-class field ((self::C::T*) →* void) →* void field8; - covariant-by-class field ((self::C::T*) →* void) →* self::C::T* field9; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* void field10; - covariant-by-class field ((self::C::T*) →* self::C::T*) →* self::C::T* field11; - covariant-by-class field () →* S* field12; - covariant-by-class field (S*) →* void field13; - covariant-by-class field (S*) →* S* field14; - covariant-by-class field (() →* S*) →* void field15; - constructor •(self::C::T* field1) → self::C* - : self::C::field1 = field1, self::C::field2 = () → self::C::T* => field1, self::C::field3 = (self::C::T* t) → Null {}, self::C::field4 = (self::C::T* t) → self::C::T* => t, self::C::field5 = () → () →* self::C::T* => () → self::C::T* => field1, self::C::field6 = (() →* self::C::T* f) → Null {}, self::C::field7 = (() →* self::C::T* f) → self::C::T* => field1, self::C::field8 = ((self::C::T*) →* void f) → Null {}, self::C::field9 = ((self::C::T*) →* void f) → self::C::T* => field1, self::C::field10 = ((self::C::T*) →* self::C::T* f) → Null {}, self::C::field11 = ((self::C::T*) →* self::C::T* f) → self::C::T* => field1, self::C::field12 = () → Null => null, self::C::field13 = (S* s) → Null {}, self::C::field14 = (S* s) → S* => s, self::C::field15 = (() →* S* f) → Null {}, super core::Object::•() +class C extends core::Object { + covariant-by-class field self::C::T% field1; + covariant-by-class field () → self::C::T% field2; + field (self::C::T%) → void field3; + covariant-by-class field (self::C::T%) → self::C::T% field4; + covariant-by-class field () → () → self::C::T% field5; + field (() → self::C::T%) → void field6; + covariant-by-class field (() → self::C::T%) → self::C::T% field7; + covariant-by-class field ((self::C::T%) → void) → void field8; + covariant-by-class field ((self::C::T%) → void) → self::C::T% field9; + covariant-by-class field ((self::C::T%) → self::C::T%) → void field10; + covariant-by-class field ((self::C::T%) → self::C::T%) → self::C::T% field11; + covariant-by-class field () → S% field12; + covariant-by-class field (S%) → void field13; + covariant-by-class field (S%) → S% field14; + covariant-by-class field (() → S%) → void field15; + constructor •(self::C::T% field1) → self::C + : self::C::field1 = field1, self::C::field2 = () → self::C::T% => field1, self::C::field3 = (self::C::T% t) → void {}, self::C::field4 = (self::C::T% t) → self::C::T% => t, self::C::field5 = () → () → self::C::T% => () → self::C::T% => field1, self::C::field6 = (() → self::C::T% f) → void {}, self::C::field7 = (() → self::C::T% f) → self::C::T% => field1, self::C::field8 = ((self::C::T%) → void f) → void {}, self::C::field9 = ((self::C::T%) → void f) → self::C::T% => field1, self::C::field10 = ((self::C::T%) → self::C::T% f) → void {}, self::C::field11 = ((self::C::T%) → self::C::T% f) → self::C::T% => field1, self::C::field12 = () → Never => throw "", self::C::field13 = (S% s) → void {}, self::C::field14 = (S% s) → S% => s, self::C::field15 = (() → S% f) → void {}, super core::Object::•() ; - get getter1() → self::C::T* - return this.{self::C::field1}{self::C::T*}; - get getter2() → () →* self::C::T* - return this.{self::C::field2}{() →* self::C::T*}; - get getter3() → (self::C::T*) →* void - return this.{self::C::field3}{(self::C::T*) →* void}; - get getter4() → (self::C::T*) →* self::C::T* - return this.{self::C::field4}{(self::C::T*) →* self::C::T*}; - get getter5() → () →* () →* self::C::T* - return this.{self::C::field5}{() →* () →* self::C::T*}; - get getter6() → (() →* self::C::T*) →* void - return this.{self::C::field6}{(() →* self::C::T*) →* void}; - get getter7() → (() →* self::C::T*) →* self::C::T* - return this.{self::C::field7}{(() →* self::C::T*) →* self::C::T*}; - get getter8() → ((self::C::T*) →* void) →* void - return this.{self::C::field8}{((self::C::T*) →* void) →* void}; - get getter9() → ((self::C::T*) →* void) →* self::C::T* - return this.{self::C::field9}{((self::C::T*) →* void) →* self::C::T*}; - get getter10() → ((self::C::T*) →* self::C::T*) →* void - return this.{self::C::field10}{((self::C::T*) →* self::C::T*) →* void}; - get getter11() → ((self::C::T*) →* self::C::T*) →* self::C::T* - return this.{self::C::field11}{((self::C::T*) →* self::C::T*) →* self::C::T*}; - get getter12() → () →* S* - return this.{self::C::field12}{() →* S*}; - get getter13() → (S*) →* void - return this.{self::C::field13}{(S*) →* void}; - get getter14() → (S*) →* S* - return this.{self::C::field14}{(S*) →* S*}; - get getter15() → (() →* S*) →* void - return this.{self::C::field15}{(() →* S*) →* void}; - set setter1(covariant-by-class self::C::T* value) → void { + get getter1() → self::C::T% + return this.{self::C::field1}{self::C::T%}; + get getter2() → () → self::C::T% + return this.{self::C::field2}{() → self::C::T%}; + get getter3() → (self::C::T%) → void + return this.{self::C::field3}{(self::C::T%) → void}; + get getter4() → (self::C::T%) → self::C::T% + return this.{self::C::field4}{(self::C::T%) → self::C::T%}; + get getter5() → () → () → self::C::T% + return this.{self::C::field5}{() → () → self::C::T%}; + get getter6() → (() → self::C::T%) → void + return this.{self::C::field6}{(() → self::C::T%) → void}; + get getter7() → (() → self::C::T%) → self::C::T% + return this.{self::C::field7}{(() → self::C::T%) → self::C::T%}; + get getter8() → ((self::C::T%) → void) → void + return this.{self::C::field8}{((self::C::T%) → void) → void}; + get getter9() → ((self::C::T%) → void) → self::C::T% + return this.{self::C::field9}{((self::C::T%) → void) → self::C::T%}; + get getter10() → ((self::C::T%) → self::C::T%) → void + return this.{self::C::field10}{((self::C::T%) → self::C::T%) → void}; + get getter11() → ((self::C::T%) → self::C::T%) → self::C::T% + return this.{self::C::field11}{((self::C::T%) → self::C::T%) → self::C::T%}; + get getter12() → () → S% + return this.{self::C::field12}{() → S%}; + get getter13() → (S%) → void + return this.{self::C::field13}{(S%) → void}; + get getter14() → (S%) → S% + return this.{self::C::field14}{(S%) → S%}; + get getter15() → (() → S%) → void + return this.{self::C::field15}{(() → S%) → void}; + set setter1(covariant-by-class self::C::T% value) → void { this.{self::C::field1} = value; } - set setter2(covariant-by-class () →* self::C::T* value) → void { + set setter2(covariant-by-class () → self::C::T% value) → void { this.{self::C::field2} = value; } - set setter3((self::C::T*) →* void value) → void { + set setter3((self::C::T%) → void value) → void { this.{self::C::field3} = value; } - set setter4(covariant-by-class (self::C::T*) →* self::C::T* value) → void { + set setter4(covariant-by-class (self::C::T%) → self::C::T% value) → void { this.{self::C::field4} = value; } - set setter5(covariant-by-class () →* () →* self::C::T* value) → void { + set setter5(covariant-by-class () → () → self::C::T% value) → void { this.{self::C::field5} = value; } - set setter6((() →* self::C::T*) →* void value) → void { + set setter6((() → self::C::T%) → void value) → void { this.{self::C::field6} = value; } - set setter7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void { + set setter7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void { this.{self::C::field7} = value; } - set setter8(covariant-by-class ((self::C::T*) →* void) →* void value) → void { + set setter8(covariant-by-class ((self::C::T%) → void) → void value) → void { this.{self::C::field8} = value; } - set setter9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void { + set setter9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void { this.{self::C::field9} = value; } - set setter10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void { + set setter10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void { this.{self::C::field10} = value; } - set setter11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void { + set setter11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void { this.{self::C::field11} = value; } - set setter12(covariant-by-class () →* S* value) → void { + set setter12(covariant-by-class () → S% value) → void { this.{self::C::field12} = value; } - set setter13(covariant-by-class (S*) →* void value) → void { + set setter13(covariant-by-class (S%) → void value) → void { this.{self::C::field13} = value; } - set setter14(covariant-by-class (S*) →* S* value) → void { + set setter14(covariant-by-class (S%) → S% value) → void { this.{self::C::field14} = value; } - set setter15(covariant-by-class (() →* S*) →* void value) → void { + set setter15(covariant-by-class (() → S%) → void value) → void { this.{self::C::field15} = value; } - method method1(covariant-by-class self::C::T* value) → void { + method method1(covariant-by-class self::C::T% value) → void { this.{self::C::field1} = value; } - method method2(covariant-by-class () →* self::C::T* value) → void { + method method2(covariant-by-class () → self::C::T% value) → void { this.{self::C::field2} = value; } - method method3((self::C::T*) →* void value) → void { + method method3((self::C::T%) → void value) → void { this.{self::C::field3} = value; } - method method4(covariant-by-class (self::C::T*) →* self::C::T* value) → void { + method method4(covariant-by-class (self::C::T%) → self::C::T% value) → void { this.{self::C::field4} = value; } - method method5(covariant-by-class () →* () →* self::C::T* value) → void { + method method5(covariant-by-class () → () → self::C::T% value) → void { this.{self::C::field5} = value; } - method method6((() →* self::C::T*) →* void value) → void { + method method6((() → self::C::T%) → void value) → void { this.{self::C::field6} = value; } - method method7(covariant-by-class (() →* self::C::T*) →* self::C::T* value) → void { + method method7(covariant-by-class (() → self::C::T%) → self::C::T% value) → void { this.{self::C::field7} = value; } - method method8(covariant-by-class ((self::C::T*) →* void) →* void value) → void { + method method8(covariant-by-class ((self::C::T%) → void) → void value) → void { this.{self::C::field8} = value; } - method method9(covariant-by-class ((self::C::T*) →* void) →* self::C::T* value) → void { + method method9(covariant-by-class ((self::C::T%) → void) → self::C::T% value) → void { this.{self::C::field9} = value; } - method method10(covariant-by-class ((self::C::T*) →* self::C::T*) →* void value) → void { + method method10(covariant-by-class ((self::C::T%) → self::C::T%) → void value) → void { this.{self::C::field10} = value; } - method method11(covariant-by-class ((self::C::T*) →* self::C::T*) →* self::C::T* value) → void { + method method11(covariant-by-class ((self::C::T%) → self::C::T%) → self::C::T% value) → void { this.{self::C::field11} = value; } - method method12(covariant-by-class () →* S* value) → void { + method method12(covariant-by-class () → S% value) → void { this.{self::C::field12} = value; } - method method13(covariant-by-class (S*) →* void value) → void { + method method13(covariant-by-class (S%) → void value) → void { this.{self::C::field13} = value; } - method method14(covariant-by-class (S*) →* S* value) → void { + method method14(covariant-by-class (S%) → S% value) → void { this.{self::C::field14} = value; } - method method15(covariant-by-class (() →* S*) →* void value) → void { + method method15(covariant-by-class (() → S%) → void value) → void { this.{self::C::field15} = value; } - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { - self::C* c = new self::C::•(0); - c.{self::C::field1}{core::num*}; - c.{self::C::field2}{() →* core::num*}; + self::C c = new self::C::•(0); + c.{self::C::field1}{core::num}; + c.{self::C::field2}{() → core::num}; try { - c.{self::C::field3}{(core::num*) →* void} as{TypeError,CovarianceCheck} (core::num*) →* void; + c.{self::C::field3}{(core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field4}{(core::num*) →* core::num*} as{TypeError,CovarianceCheck} (core::num*) →* core::num*; + c.{self::C::field4}{(core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::field5}{() →* () →* core::num*}; + c.{self::C::field5}{() → () → core::num}; try { - c.{self::C::field6}{(() →* core::num*) →* void} as{TypeError,CovarianceCheck} (() →* core::num*) →* void; + c.{self::C::field6}{(() → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field7}{(() →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*; + c.{self::C::field7}{(() → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::field8}{((core::num*) →* void) →* void}; - c.{self::C::field9}{((core::num*) →* void) →* core::num*}; + c.{self::C::field8}{((core::num) → void) → void}; + c.{self::C::field9}{((core::num) → void) → core::num}; try { - c.{self::C::field10}{((core::num*) →* core::num*) →* void} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void; + c.{self::C::field10}{((core::num) → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field11}{((core::num*) →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*; + c.{self::C::field11}{((core::num) → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field12}{() →* S*} as{TypeError,CovarianceCheck} () →* S*; + c.{self::C::field12}{() → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} () → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field13}{(S*) →* void} as{TypeError,CovarianceCheck} (S*) →* void; + c.{self::C::field13}{(S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field14}{(S*) →* S*} as{TypeError,CovarianceCheck} (S*) →* S*; + c.{self::C::field14}{(S) → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::field15}{(() →* S*) →* void} as{TypeError,CovarianceCheck} (() →* S*) →* void; + c.{self::C::field15}{(() → S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter1}{core::num*}; - c.{self::C::getter2}{() →* core::num*}; + c.{self::C::getter1}{core::num}; + c.{self::C::getter2}{() → core::num}; try { - c.{self::C::getter3}{(core::num*) →* void} as{TypeError,CovarianceCheck} (core::num*) →* void; + c.{self::C::getter3}{(core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter4}{(core::num*) →* core::num*} as{TypeError,CovarianceCheck} (core::num*) →* core::num*; + c.{self::C::getter4}{(core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter5}{() →* () →* core::num*}; + c.{self::C::getter5}{() → () → core::num}; try { - c.{self::C::getter6}{(() →* core::num*) →* void} as{TypeError,CovarianceCheck} (() →* core::num*) →* void; + c.{self::C::getter6}{(() → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter7}{(() →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} (() →* core::num*) →* core::num*; + c.{self::C::getter7}{(() → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::getter8}{((core::num*) →* void) →* void}; - c.{self::C::getter9}{((core::num*) →* void) →* core::num*}; + c.{self::C::getter8}{((core::num) → void) → void}; + c.{self::C::getter9}{((core::num) → void) → core::num}; try { - c.{self::C::getter10}{((core::num*) →* core::num*) →* void} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* void; + c.{self::C::getter10}{((core::num) → core::num) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter11}{((core::num*) →* core::num*) →* core::num*} as{TypeError,CovarianceCheck} ((core::num*) →* core::num*) →* core::num*; + c.{self::C::getter11}{((core::num) → core::num) → core::num} as{TypeError,CovarianceCheck,ForNonNullableByDefault} ((core::num) → core::num) → core::num; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter12}{() →* S*} as{TypeError,CovarianceCheck} () →* S*; + c.{self::C::getter12}{() → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} () → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter13}{(S*) →* void} as{TypeError,CovarianceCheck} (S*) →* void; + c.{self::C::getter13}{(S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter14}{(S*) →* S*} as{TypeError,CovarianceCheck} (S*) →* S*; + c.{self::C::getter14}{(S) → S} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (S) → S; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::getter15}{(() →* S*) →* void} as{TypeError,CovarianceCheck} (() →* S*) →* void; + c.{self::C::getter15}{(() → S) → void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} (() → S) → void; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { c.{self::C::setter1} = 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter2} = () → core::double* => 0.5; + c.{self::C::setter2} = () → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::setter3} = (core::num* n) → Null {}; + c.{self::C::setter3} = (core::num n) → void {}; try { - c.{self::C::setter4} = (core::num* n) → core::double* => 0.5; + c.{self::C::setter4} = (core::num n) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter5} = () → () →* core::double* => () → core::double* => 0.5; + c.{self::C::setter5} = () → () → core::double => () → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::setter6} = (() →* core::num* f) → Null {}; + c.{self::C::setter6} = (() → core::num f) → void {}; try { - c.{self::C::setter7} = (() →* core::num* f) → core::double* => 0.5; + c.{self::C::setter7} = (() → core::num f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter8} = ((core::double*) →* void f) → Null {}; + c.{self::C::setter8} = ((core::double) → void f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter9} = ((core::double*) →* void f) → core::double* => 0.5; + c.{self::C::setter9} = ((core::double) → void f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter10} = ((core::double*) →* core::num* f) → Null {}; + c.{self::C::setter10} = ((core::double) → core::num f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter11} = ((core::double*) →* core::num* f) → core::double* => 0.5; + c.{self::C::setter11} = ((core::double) → core::num f) → core::double => 0.5; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter12} = () → Null => null; + c.{self::C::setter12} = () → Never => throw ""; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter13} = (S* s) → Null {}; + c.{self::C::setter13} = (S s) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter14} = (S* s) → S* => s; + c.{self::C::setter14} = (S s) → S => s; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::setter15} = (() →* S* f) → Null {}; + c.{self::C::setter15} = (() → S f) → void {}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method1}(0.5){(core::num*) →* void}; + c.{self::C::method1}(0.5){(core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method2}(() → core::double* => 0.5){(() →* core::num*) →* void}; + c.{self::C::method2}(() → core::double => 0.5){(() → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::method3}((core::num* n) → Null {}){((core::num*) →* void) →* void}; + c.{self::C::method3}((core::num n) → void {}){((core::num) → void) → void}; try { - c.{self::C::method4}((core::num* n) → core::double* => 0.5){((core::num*) →* core::num*) →* void}; + c.{self::C::method4}((core::num n) → core::double => 0.5){((core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method5}(() → () →* core::double* => () → core::double* => 0.5){(() →* () →* core::num*) →* void}; + c.{self::C::method5}(() → () → core::double => () → core::double => 0.5){(() → () → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } - c.{self::C::method6}((() →* core::num* f) → Null {}){((() →* core::num*) →* void) →* void}; + c.{self::C::method6}((() → core::num f) → void {}){((() → core::num) → void) → void}; try { - c.{self::C::method7}((() →* core::num* f) → core::double* => 0.5){((() →* core::num*) →* core::num*) →* void}; + c.{self::C::method7}((() → core::num f) → core::double => 0.5){((() → core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method8}(((core::double*) →* void f) → Null {}){(((core::num*) →* void) →* void) →* void}; + c.{self::C::method8}(((core::double) → void f) → void {}){(((core::num) → void) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method9}(((core::double*) →* void f) → core::double* => 0.5){(((core::num*) →* void) →* core::num*) →* void}; + c.{self::C::method9}(((core::double) → void f) → core::double => 0.5){(((core::num) → void) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method10}(((core::double*) →* core::num* f) → Null {}){(((core::num*) →* core::num*) →* void) →* void}; + c.{self::C::method10}(((core::double) → core::num f) → void {}){(((core::num) → core::num) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method11}(((core::double*) →* core::num* f) → core::double* => 0.5){(((core::num*) →* core::num*) →* core::num*) →* void}; + c.{self::C::method11}(((core::double) → core::num f) → core::double => 0.5){(((core::num) → core::num) → core::num) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method12}(() → Null => null){(() →* S*) →* void}; + c.{self::C::method12}(() → Never => throw ""){(() → S) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method13}((S* s) → Null {}){((S*) →* void) →* void}; + c.{self::C::method13}((S s) → void {}){((S) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method14}((S* s) → S* => s){((S*) →* S*) →* void}; + c.{self::C::method14}((S s) → S => s){((S) → S) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } try { - c.{self::C::method15}((() →* S* f) → Null {}){((() →* S*) →* void) →* void}; + c.{self::C::method15}((() → S f) → void {}){((() → S) → void) → void}; throw "TypeError expected"; } - on core::TypeError* catch(final core::TypeError* e) { + on core::TypeError catch(final core::TypeError e) { core::print(e); } } diff --git a/pkg/front_end/testcases/general/nsm_covariance.dart b/pkg/front_end/testcases/general/nsm_covariance.dart index 15b27f762a0..3ee3063f25e 100644 --- a/pkg/front_end/testcases/general/nsm_covariance.dart +++ b/pkg/front_end/testcases/general/nsm_covariance.dart @@ -2,8 +2,6 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 - import 'nsm_covariance_lib.dart'; abstract class D1 implements A, B {} diff --git a/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline.expect b/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline.expect index fb21efedd6c..9419fb3e2b2 100644 --- a/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import 'nsm_covariance_lib.dart'; abstract class D1 implements A, B {} diff --git a/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline_modelled.expect index fb21efedd6c..9419fb3e2b2 100644 --- a/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/nsm_covariance.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 import 'nsm_covariance_lib.dart'; abstract class D1 implements A, B {} diff --git a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.expect b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.expect index ac4c6e4c924..5fc16060863 100644 --- a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.expect +++ b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.expect @@ -1,229 +1,133 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "nsm_covariance_lib.dart" as nsm; import "org-dartlang-testcase:///nsm_covariance_lib.dart"; -abstract class D1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D1* +abstract class D1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -abstract class D2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D2* +abstract class D2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -class D3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D3* +class D3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D3 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } -class D4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D4* +class D4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D4 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } static method main() → dynamic {} -library; +library /*isNonNullableByDefault*/; import self as nsm; import "dart:core" as core; -abstract class A extends core::Object { - synthetic constructor •() → nsm::A* +abstract class A extends core::Object { + synthetic constructor •() → nsm::A : super core::Object::•() ; - abstract method _method1(core::int* a, core::int* b, covariant-by-class nsm::A::T* c, covariant-by-class nsm::A::T* d) → void; - abstract method _method2({core::int* a = #C1, core::int* b = #C1, covariant-by-class nsm::A::T* c = #C1, covariant-by-class nsm::A::T* d = #C1}) → void; - abstract method _method3(core::int* a, covariant-by-class nsm::A::T* b) → void; - abstract method _method4({core::int* a = #C1, covariant-by-class nsm::A::T* b = #C1}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int a, core::int b, covariant-by-class nsm::A::T% c, covariant-by-class nsm::A::T% d) → void; + abstract method _method2({core::int a = #C1, core::int b = #C1, covariant-by-class nsm::A::T% c = #C1, covariant-by-class nsm::A::T% d = #C1}) → void; + abstract method _method3(core::int a, covariant-by-class nsm::A::T% b) → void; + abstract method _method4({core::int a = #C1, covariant-by-class nsm::A::T% b = #C1}) → void; } abstract class B extends core::Object { - synthetic constructor •() → nsm::B* + synthetic constructor •() → nsm::B : super core::Object::•() ; - abstract method _method1(core::int* x, covariant-by-declaration core::int* y, core::int* z, covariant-by-declaration core::int* w) → void; - abstract method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, core::int* c = #C1, covariant-by-declaration core::int* d = #C1}) → void; - abstract method _method3(covariant-by-declaration core::int* x, core::int* y) → void; - abstract method _method4({covariant-by-declaration core::int* a = #C1, core::int* b = #C1}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int x, covariant-by-declaration core::int y, core::int z, covariant-by-declaration core::int w) → void; + abstract method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, core::int c = #C1, covariant-by-declaration core::int d = #C1}) → void; + abstract method _method3(covariant-by-declaration core::int x, core::int y) → void; + abstract method _method4({covariant-by-declaration core::int a = #C1, core::int b = #C1}) → void; } -abstract class C1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C1* +abstract class C1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -abstract class C2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C2* +abstract class C2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -class C3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C3* +class C3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C3 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } -class C4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C4* +class C4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C4 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } constants { diff --git a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.modular.expect b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.modular.expect index ac4c6e4c924..5fc16060863 100644 --- a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.modular.expect @@ -1,229 +1,133 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "nsm_covariance_lib.dart" as nsm; import "org-dartlang-testcase:///nsm_covariance_lib.dart"; -abstract class D1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D1* +abstract class D1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -abstract class D2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D2* +abstract class D2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -class D3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D3* +class D3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D3 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } -class D4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D4* +class D4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D4 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } static method main() → dynamic {} -library; +library /*isNonNullableByDefault*/; import self as nsm; import "dart:core" as core; -abstract class A extends core::Object { - synthetic constructor •() → nsm::A* +abstract class A extends core::Object { + synthetic constructor •() → nsm::A : super core::Object::•() ; - abstract method _method1(core::int* a, core::int* b, covariant-by-class nsm::A::T* c, covariant-by-class nsm::A::T* d) → void; - abstract method _method2({core::int* a = #C1, core::int* b = #C1, covariant-by-class nsm::A::T* c = #C1, covariant-by-class nsm::A::T* d = #C1}) → void; - abstract method _method3(core::int* a, covariant-by-class nsm::A::T* b) → void; - abstract method _method4({core::int* a = #C1, covariant-by-class nsm::A::T* b = #C1}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int a, core::int b, covariant-by-class nsm::A::T% c, covariant-by-class nsm::A::T% d) → void; + abstract method _method2({core::int a = #C1, core::int b = #C1, covariant-by-class nsm::A::T% c = #C1, covariant-by-class nsm::A::T% d = #C1}) → void; + abstract method _method3(core::int a, covariant-by-class nsm::A::T% b) → void; + abstract method _method4({core::int a = #C1, covariant-by-class nsm::A::T% b = #C1}) → void; } abstract class B extends core::Object { - synthetic constructor •() → nsm::B* + synthetic constructor •() → nsm::B : super core::Object::•() ; - abstract method _method1(core::int* x, covariant-by-declaration core::int* y, core::int* z, covariant-by-declaration core::int* w) → void; - abstract method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, core::int* c = #C1, covariant-by-declaration core::int* d = #C1}) → void; - abstract method _method3(covariant-by-declaration core::int* x, core::int* y) → void; - abstract method _method4({covariant-by-declaration core::int* a = #C1, core::int* b = #C1}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int x, covariant-by-declaration core::int y, core::int z, covariant-by-declaration core::int w) → void; + abstract method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, core::int c = #C1, covariant-by-declaration core::int d = #C1}) → void; + abstract method _method3(covariant-by-declaration core::int x, core::int y) → void; + abstract method _method4({covariant-by-declaration core::int a = #C1, core::int b = #C1}) → void; } -abstract class C1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C1* +abstract class C1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -abstract class C2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C2* +abstract class C2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -class C3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C3* +class C3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C3 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([a, b]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } -class C4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C4* +class C4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C4 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable([x, y]), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } constants { diff --git a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.outline.expect b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.outline.expect index 6352cee6de9..6ab71bf4cea 100644 --- a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.outline.expect @@ -1,262 +1,166 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "nsm_covariance_lib.dart" as nsm; import "org-dartlang-testcase:///nsm_covariance_lib.dart"; -abstract class D1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D1* +abstract class D1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D1 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void; } -abstract class D2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D2* +abstract class D2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D2 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void; } -class D3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D3* +class D3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D3 ; @core::override - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([a, b]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([a, b]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation) → dynamic}; } -class D4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D4* +class D4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D4 ; @core::override - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([x, y]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([x, y]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation) → dynamic}; } static method main() → dynamic ; -library; +library /*isNonNullableByDefault*/; import self as nsm; import "dart:core" as core; -abstract class A extends core::Object { - synthetic constructor •() → nsm::A* +abstract class A extends core::Object { + synthetic constructor •() → nsm::A ; - abstract method _method1(core::int* a, core::int* b, covariant-by-class nsm::A::T* c, covariant-by-class nsm::A::T* d) → void; - abstract method _method2({core::int* a, core::int* b, covariant-by-class nsm::A::T* c, covariant-by-class nsm::A::T* d}) → void; - abstract method _method3(core::int* a, covariant-by-class nsm::A::T* b) → void; - abstract method _method4({core::int* a, covariant-by-class nsm::A::T* b}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int a, core::int b, covariant-by-class nsm::A::T% c, covariant-by-class nsm::A::T% d) → void; + abstract method _method2({core::int a, core::int b, covariant-by-class nsm::A::T% c, covariant-by-class nsm::A::T% d}) → void; + abstract method _method3(core::int a, covariant-by-class nsm::A::T% b) → void; + abstract method _method4({core::int a, covariant-by-class nsm::A::T% b}) → void; } abstract class B extends core::Object { - synthetic constructor •() → nsm::B* + synthetic constructor •() → nsm::B ; - abstract method _method1(core::int* x, covariant-by-declaration core::int* y, core::int* z, covariant-by-declaration core::int* w) → void; - abstract method _method2({core::int* a, covariant-by-declaration core::int* b, core::int* c, covariant-by-declaration core::int* d}) → void; - abstract method _method3(covariant-by-declaration core::int* x, core::int* y) → void; - abstract method _method4({covariant-by-declaration core::int* a, core::int* b}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int x, covariant-by-declaration core::int y, core::int z, covariant-by-declaration core::int w) → void; + abstract method _method2({core::int a, covariant-by-declaration core::int b, core::int c, covariant-by-declaration core::int d}) → void; + abstract method _method3(covariant-by-declaration core::int x, core::int y) → void; + abstract method _method4({covariant-by-declaration core::int a, core::int b}) → void; } -abstract class C1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C1* +abstract class C1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C1 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void; } -abstract class C2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C2* +abstract class C2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C2 ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void; } -class C3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C3* +class C3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C3 ; @core::override - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([a, b]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([a, b, c, d]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([a, b]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation) → dynamic}; } -class C4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C4* +class C4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C4 ; @core::override - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([x, y]), core::Map::unmodifiable(const {}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a, covariant-by-class core::int* b}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method1, 0, const [], core::List::unmodifiable([x, y, z, w]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method2, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b, #c: c, #d: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method3, 0, const [], core::List::unmodifiable([x, y]), core::Map::unmodifiable(const {}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a, covariant-by-class core::int b}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#_method4, 0, const [], const [], core::Map::unmodifiable({#a: a, #b: b}))){(core::Invocation) → dynamic}; } Extra constant evaluation status: -Evaluated: StaticGet @ org-dartlang-testcase:///nsm_covariance.dart:14:4 -> InstanceConstant(const _Override{}) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#_method1) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> ListConstant(const []) -Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> MapConstant(const {}) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#_method2) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> ListConstant(const []) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> ListConstant(const []) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#a) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#b) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#c) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#d) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#_method3) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> ListConstant(const []) -Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> MapConstant(const {}) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#_method4) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> ListConstant(const []) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> ListConstant(const []) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#a) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:13:7 -> SymbolConstant(#b) -Evaluated: StaticGet @ org-dartlang-testcase:///nsm_covariance.dart:19:4 -> InstanceConstant(const _Override{}) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#_method1) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> ListConstant(const []) -Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> MapConstant(const {}) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#_method2) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> ListConstant(const []) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> ListConstant(const []) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#a) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#b) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#c) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#d) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#_method3) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> ListConstant(const []) -Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> MapConstant(const {}) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#_method4) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> ListConstant(const []) -Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> ListConstant(const []) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#a) -Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:18:7 -> SymbolConstant(#b) +Evaluated: StaticGet @ org-dartlang-testcase:///nsm_covariance.dart:12:4 -> InstanceConstant(const _Override{}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#_method1) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> ListConstant(const []) +Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> MapConstant(const {}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#_method2) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> ListConstant(const []) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> ListConstant(const []) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#a) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#b) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#c) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#d) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#_method3) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> ListConstant(const []) +Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> MapConstant(const {}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#_method4) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> ListConstant(const []) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> ListConstant(const []) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#a) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:11:7 -> SymbolConstant(#b) +Evaluated: StaticGet @ org-dartlang-testcase:///nsm_covariance.dart:17:4 -> InstanceConstant(const _Override{}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#_method1) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> ListConstant(const []) +Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> MapConstant(const {}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#_method2) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> ListConstant(const []) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> ListConstant(const []) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#a) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#b) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#c) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#d) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#_method3) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> ListConstant(const []) +Evaluated: MapLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> MapConstant(const {}) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#_method4) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> ListConstant(const []) +Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> ListConstant(const []) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#a) +Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance.dart:16:7 -> SymbolConstant(#b) Evaluated: StaticGet @ org-dartlang-testcase:///nsm_covariance_lib.dart:24:4 -> InstanceConstant(const _Override{}) Evaluated: SymbolLiteral @ org-dartlang-testcase:///nsm_covariance_lib.dart:23:7 -> SymbolConstant(#_method1) Evaluated: ListLiteral @ org-dartlang-testcase:///nsm_covariance_lib.dart:23:7 -> ListConstant(const []) diff --git a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.transformed.expect b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.transformed.expect index 60a05353e59..7e269dc5a6a 100644 --- a/pkg/front_end/testcases/general/nsm_covariance.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/nsm_covariance.dart.weak.transformed.expect @@ -1,229 +1,133 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; import "nsm_covariance_lib.dart" as nsm; import "org-dartlang-testcase:///nsm_covariance_lib.dart"; -abstract class D1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D1* +abstract class D1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -abstract class D2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D2* +abstract class D2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -class D3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → self::D3* +class D3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → self::D3 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(a, b, c, d)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(a, b)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(a, b, c, d)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(a, b)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{self::D3::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } -class D4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → self::D4* +class D4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → self::D4 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(x, y, z, w)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(x, y)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C3, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(x, y, z, w)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C6, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C12, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(x, y)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{self::D4::noSuchMethod}(new core::_InvocationMirror::_withType(#C13, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } static method main() → dynamic {} -library; +library /*isNonNullableByDefault*/; import self as nsm; import "dart:core" as core; -abstract class A extends core::Object { - synthetic constructor •() → nsm::A* +abstract class A extends core::Object { + synthetic constructor •() → nsm::A : super core::Object::•() ; - abstract method _method1(core::int* a, core::int* b, covariant-by-class nsm::A::T* c, covariant-by-class nsm::A::T* d) → void; - abstract method _method2({core::int* a = #C1, core::int* b = #C1, covariant-by-class nsm::A::T* c = #C1, covariant-by-class nsm::A::T* d = #C1}) → void; - abstract method _method3(core::int* a, covariant-by-class nsm::A::T* b) → void; - abstract method _method4({core::int* a = #C1, covariant-by-class nsm::A::T* b = #C1}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int a, core::int b, covariant-by-class nsm::A::T% c, covariant-by-class nsm::A::T% d) → void; + abstract method _method2({core::int a = #C1, core::int b = #C1, covariant-by-class nsm::A::T% c = #C1, covariant-by-class nsm::A::T% d = #C1}) → void; + abstract method _method3(core::int a, covariant-by-class nsm::A::T% b) → void; + abstract method _method4({core::int a = #C1, covariant-by-class nsm::A::T% b = #C1}) → void; } abstract class B extends core::Object { - synthetic constructor •() → nsm::B* + synthetic constructor •() → nsm::B : super core::Object::•() ; - abstract method _method1(core::int* x, covariant-by-declaration core::int* y, core::int* z, covariant-by-declaration core::int* w) → void; - abstract method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, core::int* c = #C1, covariant-by-declaration core::int* d = #C1}) → void; - abstract method _method3(covariant-by-declaration core::int* x, core::int* y) → void; - abstract method _method4({covariant-by-declaration core::int* a = #C1, core::int* b = #C1}) → void; - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType + abstract method _method1(core::int x, covariant-by-declaration core::int y, core::int z, covariant-by-declaration core::int w) → void; + abstract method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, core::int c = #C1, covariant-by-declaration core::int d = #C1}) → void; + abstract method _method3(covariant-by-declaration core::int x, core::int y) → void; + abstract method _method4({covariant-by-declaration core::int a = #C1, core::int b = #C1}) → void; } -abstract class C1 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C1* +abstract class C1 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C1 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -abstract class C2 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C2* +abstract class C2 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C2 : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - abstract forwarding-stub method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void; - abstract forwarding-stub method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void; - abstract forwarding-stub method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void; - abstract forwarding-stub method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void; + abstract forwarding-stub method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void; + abstract forwarding-stub method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void; + abstract forwarding-stub method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void; + abstract forwarding-stub method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void; } -class C3 extends core::Object implements nsm::A, nsm::B { - synthetic constructor •() → nsm::C3* +class C3 extends core::Object implements nsm::A, nsm::B { + synthetic constructor •() → nsm::C3 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* a, covariant-by-declaration core::int* b, covariant-by-class core::int* c, covariant-by-declaration covariant-by-class core::int* d) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(a, b, c, d)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* a, covariant-by-class core::int* b) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(a, b)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int a, covariant-by-declaration core::int b, covariant-by-class core::int c, covariant-by-declaration covariant-by-class core::int d) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(a, b, c, d)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int a, covariant-by-class core::int b) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(a, b)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{nsm::C3::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } -class C4 extends core::Object implements nsm::B, nsm::A { - synthetic constructor •() → nsm::C4* +class C4 extends core::Object implements nsm::B, nsm::A { + synthetic constructor •() → nsm::C4 : super core::Object::•() ; @#C2 - method noSuchMethod(core::Invocation* invocation) → dynamic + method noSuchMethod(core::Invocation invocation) → dynamic return null; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType - no-such-method-forwarder method _method1(core::int* x, covariant-by-declaration core::int* y, covariant-by-class core::int* z, covariant-by-declaration covariant-by-class core::int* w) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(x, y, z, w)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method2({core::int* a = #C1, covariant-by-declaration core::int* b = #C1, covariant-by-class core::int* c = #C1, covariant-by-declaration covariant-by-class core::int* d = #C1}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method3(covariant-by-declaration core::int* x, covariant-by-class core::int* y) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(x, y)), core::Map::unmodifiable(#C5))){(core::Invocation*) →* dynamic}; - no-such-method-forwarder method _method4({covariant-by-declaration core::int* a = #C1, covariant-by-class core::int* b = #C1}) → void - return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation*) →* dynamic}; + no-such-method-forwarder method _method1(core::int x, covariant-by-declaration core::int y, covariant-by-class core::int z, covariant-by-declaration covariant-by-class core::int w) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C14, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal4(x, y, z, w)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method2({core::int a = #C1, covariant-by-declaration core::int b = #C1, covariant-by-class core::int c = #C1, covariant-by-declaration covariant-by-class core::int d = #C1}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C15, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b, #C10: c, #C11: d}))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method3(covariant-by-declaration core::int x, covariant-by-class core::int y) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C16, 0, #C4, core::List::unmodifiable(core::_GrowableList::_literal2(x, y)), core::Map::unmodifiable(#C5))){(core::Invocation) → dynamic}; + no-such-method-forwarder method _method4({covariant-by-declaration core::int a = #C1, covariant-by-class core::int b = #C1}) → void + return this.{nsm::C4::noSuchMethod}(new core::_InvocationMirror::_withType(#C17, 0, #C4, #C7, core::Map::unmodifiable({#C8: a, #C9: b}))){(core::Invocation) → dynamic}; } constants { diff --git a/pkg/front_end/testcases/general/nsm_covariance_lib.dart b/pkg/front_end/testcases/general/nsm_covariance_lib.dart index 9f7f193794c..1afd545c6b4 100644 --- a/pkg/front_end/testcases/general/nsm_covariance_lib.dart +++ b/pkg/front_end/testcases/general/nsm_covariance_lib.dart @@ -1,7 +1,7 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + abstract class A { void _method1(int a, int b, T c, T d); void _method2({int a, int b, T c, T d}); diff --git a/pkg/front_end/testcases/general/null_aware.dart b/pkg/front_end/testcases/general/null_aware.dart index 68064d02fb7..332c09ba734 100644 --- a/pkg/front_end/testcases/general/null_aware.dart +++ b/pkg/front_end/testcases/general/null_aware.dart @@ -1,7 +1,9 @@ // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + class Foo { int field; static int staticField; diff --git a/pkg/front_end/testcases/general/null_aware2.dart b/pkg/front_end/testcases/general/null_aware2.dart new file mode 100644 index 00000000000..466502d0270 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware2.dart @@ -0,0 +1,23 @@ +// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +class Foo { + int field; + static int staticField; +} + +test() { + Foo foo = new Foo(); + foo?.field = 5; + Foo?.staticField = 5; + foo.field ??= 5; + Foo.staticField ??= 5; + foo?.field ??= 5; + Foo?.staticField ??= 5; + + int intValue = foo.field ?? 6; + num numValue = foo.field ?? 4.5; +} + +main() {} diff --git a/pkg/front_end/testcases/general/null_aware2.dart.textual_outline.expect b/pkg/front_end/testcases/general/null_aware2.dart.textual_outline.expect new file mode 100644 index 00000000000..a379924113f --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware2.dart.textual_outline.expect @@ -0,0 +1,7 @@ +class Foo { + int field; + static int staticField; +} + +test() {} +main() {} diff --git a/pkg/front_end/testcases/general/null_aware2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/null_aware2.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..677ce23c848 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware2.dart.textual_outline_modelled.expect @@ -0,0 +1,7 @@ +class Foo { + int field; + static int staticField; +} + +main() {} +test() {} diff --git a/pkg/front_end/testcases/general/null_aware2.dart.weak.expect b/pkg/front_end/testcases/general/null_aware2.dart.weak.expect new file mode 100644 index 00000000000..6e6083c2edc --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware2.dart.weak.expect @@ -0,0 +1,74 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/null_aware2.dart:7:14: Error: Field 'staticField' should be initialized because its type 'int' doesn't allow null. +// static int staticField; +// ^^^^^^^^^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:13:3: Warning: The class 'Foo' cannot be null. +// Try replacing '?.' with '.' +// Foo?.staticField = 5; +// ^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:17:3: Warning: The class 'Foo' cannot be null. +// Try replacing '?.' with '.' +// Foo?.staticField ??= 5; +// ^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:12:3: Warning: Operand of null-aware operation '?.' has type 'Foo' which excludes null. +// - 'Foo' is from 'pkg/front_end/testcases/general/null_aware2.dart'. +// foo?.field = 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:14:7: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// foo.field ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:15:7: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// Foo.staticField ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:16:3: Warning: Operand of null-aware operation '?.' has type 'Foo' which excludes null. +// - 'Foo' is from 'pkg/front_end/testcases/general/null_aware2.dart'. +// foo?.field ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:17:8: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// Foo?.staticField ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:19:22: Warning: Operand of null-aware operation '??' has type 'int' which excludes null. +// int intValue = foo.field ?? 6; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:20:22: Warning: Operand of null-aware operation '??' has type 'int' which excludes null. +// num numValue = foo.field ?? 4.5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:6:7: Error: Field 'field' should be initialized because its type 'int' doesn't allow null. +// int field; +// ^^^^^ +// +import self as self; +import "dart:core" as core; + +class Foo extends core::Object { + field core::int field = null; + static field core::int staticField = null; + synthetic constructor •() → self::Foo + : super core::Object::•() + ; +} +static method test() → dynamic { + self::Foo foo = new self::Foo::•(); + let final self::Foo #t1 = foo in #t1 == null ?{core::int?} null : #t1.{self::Foo::field} = 5; + self::Foo::staticField = 5; + let final self::Foo #t2 = foo in #t2.{self::Foo::field}{core::int} == null ?{core::int} #t2.{self::Foo::field} = 5 : null; + self::Foo::staticField == null ?{core::int} self::Foo::staticField = 5 : null; + let final self::Foo #t3 = foo in #t3 == null ?{core::int?} null : #t3.{self::Foo::field}{core::int} == null ?{core::int} #t3.{self::Foo::field} = 5 : null; + self::Foo::staticField == null ?{core::int} self::Foo::staticField = 5 : null; + core::int intValue = let final core::int #t4 = foo.{self::Foo::field}{core::int} in #t4 == null ?{core::int} 6 : #t4; + core::num numValue = let final core::int #t5 = foo.{self::Foo::field}{core::int} in #t5 == null ?{core::num} 4.5 : #t5; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/null_aware2.dart.weak.modular.expect b/pkg/front_end/testcases/general/null_aware2.dart.weak.modular.expect new file mode 100644 index 00000000000..6e6083c2edc --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware2.dart.weak.modular.expect @@ -0,0 +1,74 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/null_aware2.dart:7:14: Error: Field 'staticField' should be initialized because its type 'int' doesn't allow null. +// static int staticField; +// ^^^^^^^^^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:13:3: Warning: The class 'Foo' cannot be null. +// Try replacing '?.' with '.' +// Foo?.staticField = 5; +// ^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:17:3: Warning: The class 'Foo' cannot be null. +// Try replacing '?.' with '.' +// Foo?.staticField ??= 5; +// ^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:12:3: Warning: Operand of null-aware operation '?.' has type 'Foo' which excludes null. +// - 'Foo' is from 'pkg/front_end/testcases/general/null_aware2.dart'. +// foo?.field = 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:14:7: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// foo.field ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:15:7: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// Foo.staticField ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:16:3: Warning: Operand of null-aware operation '?.' has type 'Foo' which excludes null. +// - 'Foo' is from 'pkg/front_end/testcases/general/null_aware2.dart'. +// foo?.field ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:17:8: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// Foo?.staticField ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:19:22: Warning: Operand of null-aware operation '??' has type 'int' which excludes null. +// int intValue = foo.field ?? 6; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:20:22: Warning: Operand of null-aware operation '??' has type 'int' which excludes null. +// num numValue = foo.field ?? 4.5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:6:7: Error: Field 'field' should be initialized because its type 'int' doesn't allow null. +// int field; +// ^^^^^ +// +import self as self; +import "dart:core" as core; + +class Foo extends core::Object { + field core::int field = null; + static field core::int staticField = null; + synthetic constructor •() → self::Foo + : super core::Object::•() + ; +} +static method test() → dynamic { + self::Foo foo = new self::Foo::•(); + let final self::Foo #t1 = foo in #t1 == null ?{core::int?} null : #t1.{self::Foo::field} = 5; + self::Foo::staticField = 5; + let final self::Foo #t2 = foo in #t2.{self::Foo::field}{core::int} == null ?{core::int} #t2.{self::Foo::field} = 5 : null; + self::Foo::staticField == null ?{core::int} self::Foo::staticField = 5 : null; + let final self::Foo #t3 = foo in #t3 == null ?{core::int?} null : #t3.{self::Foo::field}{core::int} == null ?{core::int} #t3.{self::Foo::field} = 5 : null; + self::Foo::staticField == null ?{core::int} self::Foo::staticField = 5 : null; + core::int intValue = let final core::int #t4 = foo.{self::Foo::field}{core::int} in #t4 == null ?{core::int} 6 : #t4; + core::num numValue = let final core::int #t5 = foo.{self::Foo::field}{core::int} in #t5 == null ?{core::num} 4.5 : #t5; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/null_aware2.dart.weak.outline.expect b/pkg/front_end/testcases/general/null_aware2.dart.weak.outline.expect new file mode 100644 index 00000000000..4d37babda5b --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware2.dart.weak.outline.expect @@ -0,0 +1,21 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/null_aware2.dart:7:14: Error: Field 'staticField' should be initialized because its type 'int' doesn't allow null. +// static int staticField; +// ^^^^^^^^^^^ +// +import self as self; +import "dart:core" as core; + +class Foo extends core::Object { + field core::int field; + static field core::int staticField; + synthetic constructor •() → self::Foo + ; +} +static method test() → dynamic + ; +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/null_aware2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/null_aware2.dart.weak.transformed.expect new file mode 100644 index 00000000000..6e6083c2edc --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware2.dart.weak.transformed.expect @@ -0,0 +1,74 @@ +library /*isNonNullableByDefault*/; +// +// Problems in library: +// +// pkg/front_end/testcases/general/null_aware2.dart:7:14: Error: Field 'staticField' should be initialized because its type 'int' doesn't allow null. +// static int staticField; +// ^^^^^^^^^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:13:3: Warning: The class 'Foo' cannot be null. +// Try replacing '?.' with '.' +// Foo?.staticField = 5; +// ^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:17:3: Warning: The class 'Foo' cannot be null. +// Try replacing '?.' with '.' +// Foo?.staticField ??= 5; +// ^^^ +// +// pkg/front_end/testcases/general/null_aware2.dart:12:3: Warning: Operand of null-aware operation '?.' has type 'Foo' which excludes null. +// - 'Foo' is from 'pkg/front_end/testcases/general/null_aware2.dart'. +// foo?.field = 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:14:7: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// foo.field ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:15:7: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// Foo.staticField ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:16:3: Warning: Operand of null-aware operation '?.' has type 'Foo' which excludes null. +// - 'Foo' is from 'pkg/front_end/testcases/general/null_aware2.dart'. +// foo?.field ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:17:8: Warning: Operand of null-aware operation '??=' has type 'int' which excludes null. +// Foo?.staticField ??= 5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:19:22: Warning: Operand of null-aware operation '??' has type 'int' which excludes null. +// int intValue = foo.field ?? 6; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:20:22: Warning: Operand of null-aware operation '??' has type 'int' which excludes null. +// num numValue = foo.field ?? 4.5; +// ^ +// +// pkg/front_end/testcases/general/null_aware2.dart:6:7: Error: Field 'field' should be initialized because its type 'int' doesn't allow null. +// int field; +// ^^^^^ +// +import self as self; +import "dart:core" as core; + +class Foo extends core::Object { + field core::int field = null; + static field core::int staticField = null; + synthetic constructor •() → self::Foo + : super core::Object::•() + ; +} +static method test() → dynamic { + self::Foo foo = new self::Foo::•(); + let final self::Foo #t1 = foo in #t1 == null ?{core::int?} null : #t1.{self::Foo::field} = 5; + self::Foo::staticField = 5; + let final self::Foo #t2 = foo in #t2.{self::Foo::field}{core::int} == null ?{core::int} #t2.{self::Foo::field} = 5 : null; + self::Foo::staticField == null ?{core::int} self::Foo::staticField = 5 : null; + let final self::Foo #t3 = foo in #t3 == null ?{core::int?} null : #t3.{self::Foo::field}{core::int} == null ?{core::int} #t3.{self::Foo::field} = 5 : null; + self::Foo::staticField == null ?{core::int} self::Foo::staticField = 5 : null; + core::int intValue = let final core::int #t4 = foo.{self::Foo::field}{core::int} in #t4 == null ?{core::int} 6 : #t4; + core::num numValue = let final core::int #t5 = foo.{self::Foo::field}{core::int} in #t5 == null ?{core::num} 4.5 : #t5; +} +static method main() → dynamic {} diff --git a/pkg/front_end/testcases/general/null_aware_for_in.dart b/pkg/front_end/testcases/general/null_aware_for_in.dart index 73cd74fbd2c..5a93b8edfe6 100644 --- a/pkg/front_end/testcases/general/null_aware_for_in.dart +++ b/pkg/front_end/testcases/general/null_aware_for_in.dart @@ -1,7 +1,7 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. -// @dart=2.9 + class Class {} main() { diff --git a/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline.expect b/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline.expect index 790b6d308c3..52b290ca2a5 100644 --- a/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Class {} main() {} diff --git a/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline_modelled.expect index 790b6d308c3..52b290ca2a5 100644 --- a/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline_modelled.expect +++ b/pkg/front_end/testcases/general/null_aware_for_in.dart.textual_outline_modelled.expect @@ -1,4 +1,3 @@ -// @dart = 2.9 class Class {} main() {} diff --git a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.expect b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.expect index 46f5652cd62..7ca9a24d665 100644 --- a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.expect +++ b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.expect @@ -1,27 +1,17 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Class extends core::Object { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { dynamic o; if(false) { - for (final dynamic #t1 in (let final dynamic #t2 = o in #t2 == null ?{dynamic} null : #t2{dynamic}.iterable) as{TypeError,ForDynamic} core::Iterable*) { - self::Class* c = #t1 as{TypeError,ForDynamic} self::Class*; + for (final dynamic #t1 in (let final dynamic #t2 = o in #t2 == null ?{dynamic} null : #t2{dynamic}.iterable) as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable) { + self::Class c = #t1 as{TypeError,ForDynamic,ForNonNullableByDefault} self::Class; } } } diff --git a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.modular.expect b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.modular.expect index 46f5652cd62..7ca9a24d665 100644 --- a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.modular.expect @@ -1,27 +1,17 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Class extends core::Object { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { dynamic o; if(false) { - for (final dynamic #t1 in (let final dynamic #t2 = o in #t2 == null ?{dynamic} null : #t2{dynamic}.iterable) as{TypeError,ForDynamic} core::Iterable*) { - self::Class* c = #t1 as{TypeError,ForDynamic} self::Class*; + for (final dynamic #t1 in (let final dynamic #t2 = o in #t2 == null ?{dynamic} null : #t2{dynamic}.iterable) as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable) { + self::Class c = #t1 as{TypeError,ForDynamic,ForNonNullableByDefault} self::Class; } } } diff --git a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.outline.expect b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.outline.expect index 7ea32381ffa..3e20e89e35f 100644 --- a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.outline.expect @@ -1,20 +1,10 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Class extends core::Object { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic ; diff --git a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.transformed.expect b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.transformed.expect index eef17d5bedf..b8db0af2489 100644 --- a/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/null_aware_for_in.dart.weak.transformed.expect @@ -1,31 +1,21 @@ -library; +library /*isNonNullableByDefault*/; import self as self; import "dart:core" as core; class Class extends core::Object { - synthetic constructor •() → self::Class* + synthetic constructor •() → self::Class : super core::Object::•() ; - abstract member-signature get _identityHashCode() → core::int*; -> core::Object::_identityHashCode - abstract member-signature method _instanceOf(dynamic instantiatorTypeArguments, dynamic functionTypeArguments, dynamic type) → core::bool*; -> core::Object::_instanceOf - abstract member-signature method _simpleInstanceOf(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOf - abstract member-signature method _simpleInstanceOfTrue(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfTrue - abstract member-signature method _simpleInstanceOfFalse(dynamic type) → core::bool*; -> core::Object::_simpleInstanceOfFalse - abstract member-signature operator ==(dynamic other) → core::bool*; -> core::Object::== - abstract member-signature get hashCode() → core::int*; -> core::Object::hashCode - abstract member-signature method toString() → core::String*; -> core::Object::toString - abstract member-signature method noSuchMethod(core::Invocation* invocation) → dynamic; -> core::Object::noSuchMethod - abstract member-signature get runtimeType() → core::Type*; -> core::Object::runtimeType } static method main() → dynamic { dynamic o; if(false) { { - core::Iterator* :sync-for-iterator = ((let final dynamic #t1 = o in #t1 == null ?{dynamic} null : #t1{dynamic}.iterable) as{TypeError,ForDynamic} core::Iterable*).{core::Iterable::iterator}{core::Iterator*}; + core::Iterator :sync-for-iterator = ((let final dynamic #t1 = o in #t1 == null ?{dynamic} null : #t1{dynamic}.iterable) as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable).{core::Iterable::iterator}{core::Iterator}; for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { final dynamic #t2 = :sync-for-iterator.{core::Iterator::current}{dynamic}; { - self::Class* c = #t2 as{TypeError,ForDynamic} self::Class*; + self::Class c = #t2 as{TypeError,ForDynamic,ForNonNullableByDefault} self::Class; } } } diff --git a/pkg/front_end/testcases/general/null_aware_postfix.dart b/pkg/front_end/testcases/general/null_aware_postfix.dart index 0f527473cfb..8479a5e289e 100644 --- a/pkg/front_end/testcases/general/null_aware_postfix.dart +++ b/pkg/front_end/testcases/general/null_aware_postfix.dart @@ -1,7 +1,9 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + class A { B b; } diff --git a/pkg/front_end/testcases/general/null_aware_postfix2.dart b/pkg/front_end/testcases/general/null_aware_postfix2.dart new file mode 100644 index 00000000000..0c98c37f0d8 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_postfix2.dart @@ -0,0 +1,21 @@ +// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +class A { + B b; + + A(this.b); +} + +class B { + C operator +(int i) => new C(); +} + +class C extends B {} + +main() { + A? a; + a?.b++; + B? c = a?.b++; +} diff --git a/pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline.expect b/pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline.expect new file mode 100644 index 00000000000..bcb8bc4cdea --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline.expect @@ -0,0 +1,12 @@ +class A { + B b; + A(this.b); +} + +class B { + C operator +(int i) => new C(); +} + +class C extends B {} + +main() {} diff --git a/pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..a045743f5c9 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_postfix2.dart.textual_outline_modelled.expect @@ -0,0 +1,12 @@ +class A { + A(this.b); + B b; +} + +class B { + C operator +(int i) => new C(); +} + +class C extends B {} + +main() {} diff --git a/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.expect b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.expect new file mode 100644 index 00000000000..bc5d8621e8a --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.expect @@ -0,0 +1,27 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + field self::B b; + constructor •(self::B b) → self::A + : self::A::b = b, super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; + operator +(core::int i) → self::C + return new self::C::•(); +} +class C extends self::B { + synthetic constructor •() → self::C + : super self::B::•() + ; +} +static method main() → dynamic { + self::A? a; + let final self::A? #t1 = a in #t1 == null ?{self::B?} null : #t1.{self::A::b} = #t1.{self::A::b}{self::B}.{self::B::+}(1){(core::int) → self::C}; + self::B? c = let final self::A? #t2 = a in #t2 == null ?{self::B?} null : let final self::B #t3 = #t2.{self::A::b}{self::B} in let final void #t4 = #t2.{self::A::b} = #t3.{self::B::+}(1){(core::int) → self::C} in #t3; +} diff --git a/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.modular.expect b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.modular.expect new file mode 100644 index 00000000000..bc5d8621e8a --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.modular.expect @@ -0,0 +1,27 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + field self::B b; + constructor •(self::B b) → self::A + : self::A::b = b, super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; + operator +(core::int i) → self::C + return new self::C::•(); +} +class C extends self::B { + synthetic constructor •() → self::C + : super self::B::•() + ; +} +static method main() → dynamic { + self::A? a; + let final self::A? #t1 = a in #t1 == null ?{self::B?} null : #t1.{self::A::b} = #t1.{self::A::b}{self::B}.{self::B::+}(1){(core::int) → self::C}; + self::B? c = let final self::A? #t2 = a in #t2 == null ?{self::B?} null : let final self::B #t3 = #t2.{self::A::b}{self::B} in let final void #t4 = #t2.{self::A::b} = #t3.{self::B::+}(1){(core::int) → self::C} in #t3; +} diff --git a/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.outline.expect b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.outline.expect new file mode 100644 index 00000000000..5e14f93a065 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.outline.expect @@ -0,0 +1,21 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + field self::B b; + constructor •(self::B b) → self::A + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + ; + operator +(core::int i) → self::C + ; +} +class C extends self::B { + synthetic constructor •() → self::C + ; +} +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.transformed.expect new file mode 100644 index 00000000000..bc5d8621e8a --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_postfix2.dart.weak.transformed.expect @@ -0,0 +1,27 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +class A extends core::Object { + field self::B b; + constructor •(self::B b) → self::A + : self::A::b = b, super core::Object::•() + ; +} +class B extends core::Object { + synthetic constructor •() → self::B + : super core::Object::•() + ; + operator +(core::int i) → self::C + return new self::C::•(); +} +class C extends self::B { + synthetic constructor •() → self::C + : super self::B::•() + ; +} +static method main() → dynamic { + self::A? a; + let final self::A? #t1 = a in #t1 == null ?{self::B?} null : #t1.{self::A::b} = #t1.{self::A::b}{self::B}.{self::B::+}(1){(core::int) → self::C}; + self::B? c = let final self::A? #t2 = a in #t2 == null ?{self::B?} null : let final self::B #t3 = #t2.{self::A::b}{self::B} in let final void #t4 = #t2.{self::A::b} = #t3.{self::B::+}(1){(core::int) → self::C} in #t3; +} diff --git a/pkg/front_end/testcases/general/null_aware_spread.dart b/pkg/front_end/testcases/general/null_aware_spread.dart index 09070318aaa..d6ec2966bff 100644 --- a/pkg/front_end/testcases/general/null_aware_spread.dart +++ b/pkg/front_end/testcases/general/null_aware_spread.dart @@ -1,7 +1,9 @@ // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + nullAwareListSpread(List list) { list = ['foo', ...?list]; } diff --git a/pkg/front_end/testcases/general/null_aware_spread2.dart b/pkg/front_end/testcases/general/null_aware_spread2.dart new file mode 100644 index 00000000000..10c442659a2 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_spread2.dart @@ -0,0 +1,21 @@ +// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file +// for details. All rights reserved. Use of this source code is governed by a +// BSD-style license that can be found in the LICENSE file. + +nullAwareListSpread(List? list) { + list = ['foo', ...?list]; +} + +nullAwareSetSpread(Set? set) { + set = {'foo', ...?set}; +} + +nullAwareMapSpread(Map? map) { + map = {0: 'foo', ...?map}; +} + +main() { + nullAwareListSpread(null); + nullAwareSetSpread(null); + nullAwareMapSpread(null); +} diff --git a/pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline.expect b/pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline.expect new file mode 100644 index 00000000000..b0017a7f03a --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline.expect @@ -0,0 +1,4 @@ +nullAwareListSpread(List? list) {} +nullAwareSetSpread(Set? set) {} +nullAwareMapSpread(Map? map) {} +main() {} diff --git a/pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline_modelled.expect b/pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline_modelled.expect new file mode 100644 index 00000000000..618d2d10c50 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_spread2.dart.textual_outline_modelled.expect @@ -0,0 +1,4 @@ +main() {} +nullAwareListSpread(List? list) {} +nullAwareMapSpread(Map? map) {} +nullAwareSetSpread(Set? set) {} diff --git a/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.expect b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.expect new file mode 100644 index 00000000000..0eaed6c8989 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.expect @@ -0,0 +1,37 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; +import "dart:collection" as col; + +static method nullAwareListSpread(core::List? list) → dynamic { + list = block { + final core::List #t1 = ["foo"]; + final core::Iterable? #t2 = list; + if(!(#t2 == null)) + #t1.{core::List::addAll}{Invariant}(#t2{core::Iterable}){(core::Iterable) → void}; + } =>#t1; +} +static method nullAwareSetSpread(core::Set? set) → dynamic { + set = block { + final core::Set #t3 = col::LinkedHashSet::•(); + #t3.{core::Set::add}{Invariant}("foo"){(core::String) → core::bool}; + final core::Iterable? #t4 = set; + if(!(#t4 == null)) + #t3.{core::Set::addAll}{Invariant}(#t4{core::Iterable}){(core::Iterable) → void}; + } =>#t3; +} +static method nullAwareMapSpread(core::Map? map) → dynamic { + map = block { + final core::Map #t5 = {}; + #t5.{core::Map::[]=}{Invariant}(0, "foo"){(core::int, core::String) → void}; + final core::Map? #t6 = map; + if(!(#t6 == null)) + for (final core::MapEntry #t7 in #t6{core::Map}.{core::Map::entries}{core::Iterable>}) + #t5.{core::Map::[]=}{Invariant}(#t7.{core::MapEntry::key}{core::int}, #t7.{core::MapEntry::value}{core::String}){(core::int, core::String) → void}; + } =>#t5; +} +static method main() → dynamic { + self::nullAwareListSpread(null); + self::nullAwareSetSpread(null); + self::nullAwareMapSpread(null); +} diff --git a/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.modular.expect b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.modular.expect new file mode 100644 index 00000000000..0eaed6c8989 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.modular.expect @@ -0,0 +1,37 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; +import "dart:collection" as col; + +static method nullAwareListSpread(core::List? list) → dynamic { + list = block { + final core::List #t1 = ["foo"]; + final core::Iterable? #t2 = list; + if(!(#t2 == null)) + #t1.{core::List::addAll}{Invariant}(#t2{core::Iterable}){(core::Iterable) → void}; + } =>#t1; +} +static method nullAwareSetSpread(core::Set? set) → dynamic { + set = block { + final core::Set #t3 = col::LinkedHashSet::•(); + #t3.{core::Set::add}{Invariant}("foo"){(core::String) → core::bool}; + final core::Iterable? #t4 = set; + if(!(#t4 == null)) + #t3.{core::Set::addAll}{Invariant}(#t4{core::Iterable}){(core::Iterable) → void}; + } =>#t3; +} +static method nullAwareMapSpread(core::Map? map) → dynamic { + map = block { + final core::Map #t5 = {}; + #t5.{core::Map::[]=}{Invariant}(0, "foo"){(core::int, core::String) → void}; + final core::Map? #t6 = map; + if(!(#t6 == null)) + for (final core::MapEntry #t7 in #t6{core::Map}.{core::Map::entries}{core::Iterable>}) + #t5.{core::Map::[]=}{Invariant}(#t7.{core::MapEntry::key}{core::int}, #t7.{core::MapEntry::value}{core::String}){(core::int, core::String) → void}; + } =>#t5; +} +static method main() → dynamic { + self::nullAwareListSpread(null); + self::nullAwareSetSpread(null); + self::nullAwareMapSpread(null); +} diff --git a/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.outline.expect b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.outline.expect new file mode 100644 index 00000000000..2e3c9c59829 --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.outline.expect @@ -0,0 +1,12 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; + +static method nullAwareListSpread(core::List? list) → dynamic + ; +static method nullAwareSetSpread(core::Set? set) → dynamic + ; +static method nullAwareMapSpread(core::Map? map) → dynamic + ; +static method main() → dynamic + ; diff --git a/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.transformed.expect b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.transformed.expect new file mode 100644 index 00000000000..57a3fe5f2da --- /dev/null +++ b/pkg/front_end/testcases/general/null_aware_spread2.dart.weak.transformed.expect @@ -0,0 +1,41 @@ +library /*isNonNullableByDefault*/; +import self as self; +import "dart:core" as core; +import "dart:collection" as col; + +static method nullAwareListSpread(core::List? list) → dynamic { + list = block { + final core::List #t1 = core::_GrowableList::_literal1("foo"); + final core::Iterable? #t2 = list; + if(!(#t2 == null)) + #t1.{core::List::addAll}{Invariant}(#t2{core::Iterable}){(core::Iterable) → void}; + } =>#t1; +} +static method nullAwareSetSpread(core::Set? set) → dynamic { + set = block { + final core::Set #t3 = new col::_CompactLinkedHashSet::•(); + #t3.{core::Set::add}{Invariant}("foo"){(core::String) → core::bool}; + final core::Iterable? #t4 = set; + if(!(#t4 == null)) + #t3.{core::Set::addAll}{Invariant}(#t4{core::Iterable}){(core::Iterable) → void}; + } =>#t3; +} +static method nullAwareMapSpread(core::Map? map) → dynamic { + map = block { + final core::Map #t5 = {}; + #t5.{core::Map::[]=}{Invariant}(0, "foo"){(core::int, core::String) → void}; + final core::Map? #t6 = map; + if(!(#t6 == null)) { + core::Iterator> :sync-for-iterator = #t6{core::Map}.{core::Map::entries}{core::Iterable>}.{core::Iterable::iterator}{core::Iterator>}; + for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { + final core::MapEntry #t7 = :sync-for-iterator.{core::Iterator::current}{core::MapEntry}; + #t5.{core::Map::[]=}{Invariant}(#t7.{core::MapEntry::key}{core::int}, #t7.{core::MapEntry::value}{core::String}){(core::int, core::String) → void}; + } + } + } =>#t5; +} +static method main() → dynamic { + self::nullAwareListSpread(null); + self::nullAwareSetSpread(null); + self::nullAwareMapSpread(null); +} diff --git a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart index e766ae0983f..6b48e737abd 100644 --- a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart +++ b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart @@ -1,7 +1,9 @@ // Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. + // @dart=2.9 + int? i; main() {} diff --git a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.expect b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.expect index 9f0d25377d1..b2edbb8b78e 100644 --- a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.expect +++ b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.expect @@ -2,11 +2,11 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:4: Error: Null safety features are disabled for this library. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:7:4: Error: Null safety features are disabled for this library. // Try removing the `@dart=` annotation or setting the language version to 2.12 or higher. // int? i; // ^ -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:4:1: Context: This is the annotation that opts out this library from null safety features. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:1: Context: This is the annotation that opts out this library from null safety features. // // @dart=2.9 // ^^^^^^^^^^^^ // diff --git a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.modular.expect b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.modular.expect index 9f0d25377d1..b2edbb8b78e 100644 --- a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.modular.expect +++ b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.modular.expect @@ -2,11 +2,11 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:4: Error: Null safety features are disabled for this library. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:7:4: Error: Null safety features are disabled for this library. // Try removing the `@dart=` annotation or setting the language version to 2.12 or higher. // int? i; // ^ -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:4:1: Context: This is the annotation that opts out this library from null safety features. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:1: Context: This is the annotation that opts out this library from null safety features. // // @dart=2.9 // ^^^^^^^^^^^^ // diff --git a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.outline.expect b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.outline.expect index f60a7c1d8ef..15ded13b6dd 100644 --- a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.outline.expect +++ b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.outline.expect @@ -2,11 +2,11 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:4: Error: Null safety features are disabled for this library. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:7:4: Error: Null safety features are disabled for this library. // Try removing the `@dart=` annotation or setting the language version to 2.12 or higher. // int? i; // ^ -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:4:1: Context: This is the annotation that opts out this library from null safety features. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:1: Context: This is the annotation that opts out this library from null safety features. // // @dart=2.9 // ^^^^^^^^^^^^ // diff --git a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.transformed.expect b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.transformed.expect index 9f0d25377d1..b2edbb8b78e 100644 --- a/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.transformed.expect +++ b/pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.weak.transformed.expect @@ -2,11 +2,11 @@ library; // // Problems in library: // -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:4: Error: Null safety features are disabled for this library. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:7:4: Error: Null safety features are disabled for this library. // Try removing the `@dart=` annotation or setting the language version to 2.12 or higher. // int? i; // ^ -// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:4:1: Context: This is the annotation that opts out this library from null safety features. +// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:1: Context: This is the annotation that opts out this library from null safety features. // // @dart=2.9 // ^^^^^^^^^^^^ // diff --git a/pkg/front_end/testcases/textual_outline.status b/pkg/front_end/testcases/textual_outline.status index 6b47db97bbd..33aebe0babd 100644 --- a/pkg/front_end/testcases/textual_outline.status +++ b/pkg/front_end/testcases/textual_outline.status @@ -91,7 +91,6 @@ general/issue42997: FormatterCrash general/issue43363: FormatterCrash general/issue45490: FormatterCrash general/issue45700.crash: FormatterCrash -general/issue47495: FormatterCrash general/issue47728_2: FormatterCrash general/issue47728_3: FormatterCrash general/issue47922: FormatterCrash @@ -100,7 +99,9 @@ general/issue48487b: FormatterCrash general/issue_46886: FormatterCrash general/macro_class: FormatterCrash general/many_errors: FormatterCrash +general/many_errors2: FormatterCrash general/missing_prefix_name: FormatterCrash +general/mixin_inherited_setter_for_mixed_in_field2: FormatterCrash general/new_as_selector: FormatterCrash general/null_aware_super: FormatterCrash general/null_safety_invalid_experiment: FormatterCrash