diff --git a/pkg/compiler/lib/src/ssa/builder_kernel.dart b/pkg/compiler/lib/src/ssa/builder_kernel.dart index 75547da496d..4a52308b1f9 100644 --- a/pkg/compiler/lib/src/ssa/builder_kernel.dart +++ b/pkg/compiler/lib/src/ssa/builder_kernel.dart @@ -719,15 +719,70 @@ class KernelSsaGraphBuilder extends ir.Visitor /// Builds a SSA graph for FunctionNodes of external methods. void buildExternalFunctionNode(ir.FunctionNode functionNode) { + assert(functionNode.body == null); openFunction(functionNode); ir.TreeNode parent = functionNode.parent; if (parent is ir.Procedure && parent.kind == ir.ProcedureKind.Factory) { _addClassTypeVariablesIfNeeded(parent); } - // TODO(sra): Generate conversion of Function typed arguments to JavaScript - // functions. - // TODO(sra): Invoke native method. - assert(functionNode.body == null); + + if (closedWorld.nativeData.isNativeMember(targetElement)) { + String nativeName; + if (closedWorld.nativeData.hasFixedBackendName(targetElement)) { + nativeName = closedWorld.nativeData.getFixedBackendName(targetElement); + } else { + nativeName = targetElement.name; + } + + String templateReceiver = ''; + List templateArguments = []; + List inputs = []; + if (targetElement.isInstanceMember) { + templateReceiver = '#.'; + inputs.add(localsHandler.readThis()); + } + + for (ir.VariableDeclaration param in functionNode.positionalParameters) { + templateArguments.add('#'); + Local local = localsMap.getLocalVariable(param); + // Convert Dart function to JavaScript function. + HInstruction argument = localsHandler.readLocal(local); + ir.DartType type = param.type; + if (type is ir.FunctionType) { + int arity = type.positionalParameters.length; + _pushStaticInvocation( + _commonElements.closureConverter, + [argument, graph.addConstantInt(arity, closedWorld)], + commonMasks.dynamicType); + argument = pop(); + } + inputs.add(argument); + } + + String arguments = templateArguments.join(','); + + // TODO(sra): Use declared type or NativeBehavior type. + TypeMask typeMask = commonMasks.dynamicType; + String template; + if (targetElement.isGetter) { + template = '${templateReceiver}$nativeName'; + } else if (targetElement.isSetter) { + template = '${templateReceiver}$nativeName = ${arguments}'; + } else { + template = '${templateReceiver}$nativeName(${arguments})'; + } + + push(new HForeignCode( + js.js.uncachedExpressionTemplate(template), typeMask, inputs, + effects: new SideEffects())); + // TODO(johnniwinther): Provide source information. + HInstruction value = pop(); + if (targetElement.isSetter) { + value = graph.addConstantNull(closedWorld); + } + close(new HReturn(value, null)).addSuccessor(graph.exit); + } + // TODO(sra): Handle JS-interop methods. closeFunction(); } diff --git a/tests/compiler/dart2js_native/dart2js_native.status b/tests/compiler/dart2js_native/dart2js_native.status index 986ff3c02f9..8dc5cb2fd6e 100644 --- a/tests/compiler/dart2js_native/dart2js_native.status +++ b/tests/compiler/dart2js_native/dart2js_native.status @@ -133,206 +133,107 @@ native_class_inheritance3_frog_test: Crash # Issue 27394 native_wrapping_function3_frog_test: Crash # Issue 27394 [ $compiler == dart2js && $dart2js_with_kernel && $host_checked ] -abstract_class_test: RuntimeError bound_closure_super_test: Crash bound_closure_test: Crash -browser_compat_1_prepatched_test: RuntimeError -browser_compat_1_unpatched_test: RuntimeError -browser_compat_2_test: RuntimeError compute_this_script_test: Crash core_type_check_native_test: RuntimeError -dispatch_property_initialization_test: RuntimeError -downcast_test: RuntimeError -error_safeToString_test: RuntimeError event_loop_test: Crash fake_thing_test: RuntimeError -field_type2_test: RuntimeError -field_type_test: RuntimeError -fixup_get_tag_test: RuntimeError -hash_code_test: RuntimeError -inference_of_helper_methods_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(main#value) is stored in a closure field. +inference_of_helper_methods_test: Crash internal_library_test: Crash is_check_test: CompileTimeError -issue9182_test: RuntimeError -jsobject_test: RuntimeError load_elim_refinement_test: CompileTimeError mirror_intercepted_field_test: CompileTimeError native_call_arity1_frog_test: Crash native_call_arity2_frog_test: Crash native_call_arity3_frog_test: Crash -native_checked_arguments1_frog_test: RuntimeError -native_checked_fields_frog_test: RuntimeError -native_class_avoids_hidden_name_frog_test: RuntimeError -native_class_fields_2_test: RuntimeError -native_class_fields_3_test: RuntimeError -native_class_fields_test: RuntimeError native_class_inheritance1_frog_test: Crash native_class_inheritance2_frog_test: Crash native_class_inheritance3_frog_test: Crash native_class_inheritance4_frog_test: Crash -native_class_is_check1_frog_test: RuntimeError -native_class_is_check3_frog_test: RuntimeError native_class_with_dart_methods_frog_test: Crash native_closure_identity_frog_test: Crash -native_constructor_name_test: RuntimeError -native_equals_frog_test: RuntimeError -native_exception2_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(main#previous) is stored in a closure field. -native_exception_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(main#previous) is stored in a closure field. +native_exception2_test: Crash +native_exception_test: Crash native_exceptions1_frog_test: Crash -native_field_invocation2_test: RuntimeError -native_field_invocation3_test: RuntimeError -native_field_invocation5_test: RuntimeError native_field_invocation6_test: Crash -native_field_invocation_test: RuntimeError -native_field_name_test: RuntimeError native_field_optimization_test: Crash native_field_rename_1_frog_test: Crash native_field_rename_2_frog_test: Crash native_library_same_name_used_frog_test: CompileTimeError native_method_inlining_test: Crash native_method_rename1_frog_test: Crash -native_method_rename2_frog_test: RuntimeError -native_method_rename3_frog_test: RuntimeError -native_method_with_keyword_name_test: RuntimeError native_mirror_test: Crash native_mixin_field_test: RuntimeError -native_mixin_multiple2_test: RuntimeError native_mixin_multiple3_test: Crash -native_mixin_multiple_test: RuntimeError -native_mixin_test: RuntimeError native_mixin_with_plain_test: Crash native_named_constructors2_frog_test: CompileTimeError native_named_constructors3_frog_test: CompileTimeError -native_no_such_method_exception2_frog_test: RuntimeError native_no_such_method_exception3_frog_test: Crash native_no_such_method_exception4_frog_test: Crash native_no_such_method_exception5_frog_test: Crash -native_no_such_method_exception_frog_test: RuntimeError native_novel_html_test: Crash -native_null_closure_frog_test: RuntimeError native_null_frog_test: Crash native_property_frog_test: CompileTimeError -native_to_string_frog_test: RuntimeError -native_use_native_name_in_table_frog_test: RuntimeError native_wrapping_function3_frog_test: Crash native_wrapping_function_frog_test: Crash -oddly_named_fields_test: RuntimeError optimization_hints_test: Crash rti_only_native_test: Crash runtimetype_test: CompileTimeError -static_methods_test: RuntimeError -subclassing_1_test: RuntimeError -subclassing_2_test: RuntimeError -subclassing_3_test: RuntimeError -subclassing_4_test: RuntimeError -subclassing_5_test: RuntimeError subclassing_constructor_1_test: Crash subclassing_constructor_2_test: RuntimeError subclassing_super_call_test: RuntimeError subclassing_super_field_1_test: RuntimeError subclassing_super_field_2_test: RuntimeError -subclassing_type_test: RuntimeError -super_call_test: RuntimeError -super_property_test: RuntimeError [ $compiler == dart2js && $dart2js_with_kernel && $minified ] -abstract_class_test: RuntimeError bound_closure_super_test: RuntimeError bound_closure_test: RuntimeError -browser_compat_1_prepatched_test: RuntimeError -browser_compat_1_unpatched_test: RuntimeError -browser_compat_2_test: RuntimeError core_type_check_native_test: RuntimeError -dispatch_property_initialization_test: RuntimeError -downcast_test: RuntimeError -error_safeToString_test: RuntimeError event_loop_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. fake_thing_test: RuntimeError -field_type2_test: RuntimeError -field_type_test: RuntimeError -fixup_get_tag_test: RuntimeError -hash_code_test: RuntimeError internal_library_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. is_check_test: CompileTimeError -issue9182_test: RuntimeError -jsobject_test: RuntimeError load_elim_refinement_test: CompileTimeError mirror_intercepted_field_test: CompileTimeError native_call_arity1_frog_test: Crash # NoSuchMethodError: Class 'JMethod' has no instance getter 'type'. -native_call_arity2_frog_test: RuntimeError native_call_arity3_frog_test: Crash # NoSuchMethodError: Class 'JMethod' has no instance getter 'type'. -native_checked_arguments1_frog_test: RuntimeError -native_checked_fields_frog_test: RuntimeError -native_class_avoids_hidden_name_frog_test: RuntimeError -native_class_fields_2_test: RuntimeError -native_class_fields_3_test: RuntimeError -native_class_fields_test: RuntimeError native_class_inheritance1_frog_test: RuntimeError native_class_inheritance2_frog_test: RuntimeError native_class_inheritance3_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_class_inheritance4_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. -native_class_is_check1_frog_test: RuntimeError -native_class_is_check3_frog_test: RuntimeError native_class_with_dart_methods_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_closure_identity_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. -native_constructor_name_test: RuntimeError -native_equals_frog_test: RuntimeError native_exception2_test: RuntimeError native_exception_test: RuntimeError native_exceptions1_frog_test: CompileTimeError -native_field_invocation2_test: RuntimeError -native_field_invocation3_test: RuntimeError -native_field_invocation5_test: RuntimeError native_field_invocation6_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. -native_field_invocation_test: RuntimeError -native_field_name_test: RuntimeError native_field_optimization_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_field_rename_1_frog_test: Crash # NoSuchMethodError: Class 'JMethod' has no instance getter 'type'. native_field_rename_2_frog_test: Crash # NoSuchMethodError: Class 'JMethod' has no instance getter 'type'. native_library_same_name_used_frog_test: CompileTimeError native_method_inlining_test: Crash # NoSuchMethodError: The method 'accept' was called on null. native_method_rename1_frog_test: Crash # NoSuchMethodError: Class 'JMethod' has no instance getter 'type'. -native_method_rename2_frog_test: RuntimeError -native_method_rename3_frog_test: RuntimeError -native_method_with_keyword_name_test: RuntimeError native_mirror_test: Crash # Assertion failure: Cannot find value local(Maps_mapToString_closure.call#first) in (local(Maps_mapToString_closure.call#k), local(Maps_mapToString_closure.call#v), local(Maps.mapToString#)) for j:closure_call(Maps_mapToString_closure.call). native_mixin_field_test: RuntimeError -native_mixin_multiple2_test: RuntimeError native_mixin_multiple3_test: Crash # Assertion failure: Super constructor for k:constructor(D.) not found. -native_mixin_multiple_test: RuntimeError -native_mixin_test: RuntimeError native_mixin_with_plain_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_named_constructors2_frog_test: CompileTimeError native_named_constructors3_frog_test: CompileTimeError -native_no_such_method_exception2_frog_test: RuntimeError native_no_such_method_exception3_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_no_such_method_exception4_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_no_such_method_exception5_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. -native_no_such_method_exception_frog_test: RuntimeError native_novel_html_test: Crash # Assertion failure: Tag 'HTMLElement' already in use by 'Element' -native_null_closure_frog_test: RuntimeError native_null_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_property_frog_test: CompileTimeError -native_to_string_frog_test: RuntimeError -native_use_native_name_in_table_frog_test: RuntimeError native_wrapping_function3_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. native_wrapping_function_frog_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. -oddly_named_fields_test: RuntimeError optimization_hints_test: Crash # NoSuchMethodError: The getter 'enclosingClass' was called on null. rti_only_native_test: Crash # Assertion failure: Cannot find value local(Maps_mapToString_closure.call#first) in (local(Maps_mapToString_closure.call#k), local(Maps_mapToString_closure.call#v), local(Maps.mapToString#)) for j:closure_call(Maps_mapToString_closure.call). runtimetype_test: CompileTimeError -static_methods_test: RuntimeError -subclassing_1_test: RuntimeError -subclassing_2_test: RuntimeError -subclassing_3_test: RuntimeError -subclassing_4_test: RuntimeError -subclassing_5_test: RuntimeError subclassing_constructor_1_test: Crash # NoSuchMethodError: The getter 'memberIndex' was called on null. subclassing_constructor_2_test: RuntimeError subclassing_super_call_test: RuntimeError subclassing_super_field_1_test: RuntimeError subclassing_super_field_2_test: RuntimeError -subclassing_type_test: RuntimeError -super_call_test: RuntimeError -super_property_test: RuntimeError diff --git a/tests/language/language_dart2js.status b/tests/language/language_dart2js.status index 6848cc22ce7..704e0046e7d 100644 --- a/tests/language/language_dart2js.status +++ b/tests/language/language_dart2js.status @@ -587,10 +587,19 @@ closure_in_field_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo3/s compile_time_constant_a_test: Crash compile_time_constant_b_test: Crash compile_time_constant_c_test/02: Crash +compile_time_constant_k_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +compile_time_constant_k_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +compile_time_constant_k_test/03: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +compile_time_constant_k_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. compile_time_constant_m_test: RuntimeError +compile_time_constant_o_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +compile_time_constant_o_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +compile_time_constant_o_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. compile_time_constant_p_test/01: Crash +compile_time_constant_r_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. conditional_import_string_test: CompileTimeError conditional_import_test: CompileTimeError +conditional_rewrite_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. config_import_corelib_test: RuntimeError config_import_test: RuntimeError const_conditional_test/08: MissingCompileTimeError @@ -603,9 +612,16 @@ const_error_multiply_initialized_test/04: Crash const_evaluation_test/01: Crash const_factory_with_body_test/01: MissingCompileTimeError const_instance_field_test/01: MissingCompileTimeError +const_map2_test/00: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. const_map2_test/00: MissingCompileTimeError +const_map2_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +const_map3_test/00: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. const_map3_test/00: MissingCompileTimeError +const_map3_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +const_map4_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. const_map_test: Crash +const_objects_are_immutable_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. +const_objects_are_immutable_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. const_optional_args_negative_test: Crash const_switch2_test/01: MissingCompileTimeError const_switch_test/02: RuntimeError @@ -698,6 +714,7 @@ deferred_mixin_test: CompileTimeError deferred_no_prefix_test/01: MissingCompileTimeError deferred_no_such_method_test: CompileTimeError deferred_not_loaded_check_test: Crash +deferred_not_loaded_check_test: RuntimeError deferred_only_constant_test: CompileTimeError deferred_optimized_test: CompileTimeError deferred_redirecting_factory_test: CompileTimeError @@ -722,14 +739,25 @@ duplicate_implements_test/04: MissingCompileTimeError dynamic_prefix_core_test/01: RuntimeError dynamic_prefix_core_test/none: RuntimeError efficient_length_warning_test: Crash +emit_const_fields_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_duplicate_test/01: Crash +enum_duplicate_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_duplicate_test/02: RuntimeError +enum_duplicate_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_duplicate_test/none: RuntimeError +enum_index_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_mirror_test: Crash +enum_private_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_private_test/01: RuntimeError +enum_private_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_private_test/02: RuntimeError +enum_private_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_private_test/none: RuntimeError +enum_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. enum_test: RuntimeError +example_constructor_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/builder_kernel.dart': Failed assertion: line 513 pos 16: 'false': ir.LocalInitializer not handled +execute_finally7_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Helper.f1#k) is stored in a closure field. +exhaustive_for_test: Crash # RangeError (index): Invalid value: Valid value range is empty: 0 expect_test: RuntimeError export_double_same_main_test: CompileTimeError export_main_test: CompileTimeError @@ -753,6 +781,7 @@ fauxverride_test/03: MissingCompileTimeError fauxverride_test/05: MissingCompileTimeError field_increment_bailout_test: Crash field_initialization_order_test: RuntimeError +field_override2_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. field_override3_test/00: MissingCompileTimeError field_override3_test/01: MissingCompileTimeError field_override3_test/02: MissingCompileTimeError @@ -776,6 +805,7 @@ first_class_types_literals_test/10: Crash first_class_types_literals_test/11: Crash first_class_types_literals_test/12: Crash first_class_types_literals_test/none: Crash +first_class_types_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. flatten_test/01: Crash flatten_test/02: Crash flatten_test/03: Crash @@ -796,36 +826,6 @@ full_stacktrace1_test: Crash full_stacktrace2_test: Crash full_stacktrace3_test: Crash function_literals2_test: Crash -compile_time_constant_k_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -compile_time_constant_k_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -compile_time_constant_k_test/03: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -compile_time_constant_k_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -compile_time_constant_o_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -compile_time_constant_o_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -compile_time_constant_o_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -compile_time_constant_r_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -conditional_rewrite_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -const_map2_test/00: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -const_map2_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -const_map3_test/00: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -const_map3_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -const_map4_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -const_objects_are_immutable_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -const_objects_are_immutable_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -deferred_not_loaded_check_test: RuntimeError -emit_const_fields_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -enum_duplicate_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -enum_duplicate_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -enum_index_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -enum_private_test/01: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -enum_private_test/02: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -enum_private_test/none: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -enum_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -example_constructor_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/builder_kernel.dart': Failed assertion: line 513 pos 16: 'false': ir.LocalInitializer not handled -execute_finally7_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Helper.f1#k) is stored in a closure field. -exhaustive_for_test: Crash # RangeError (index): Invalid value: Valid value range is empty: 0 -field_override2_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. -first_class_types_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(Maps.mapToString#first) is stored in a closure field. function_malformed_result_type_test: Crash function_propagation_test: Crash # 'file:///usr/local/google/home/efortuna/dart/sdk/pkg/compiler/lib/src/js_model/closure.dart': Failed assertion: line 192 pos 9: 'closure != null': Corresponding closure class not found for j:method(A.call). Closures found for (j:closure_call(Closure_fromTearOff_closure.call), local(Closure.fromTearOff#), j:closure_call(Maps_mapToString_closure.call), local(Maps.mapToString#)) function_subtype3_test: Crash @@ -1379,6 +1379,12 @@ syncstar_yieldstar_test: Crash syntax_test/02: Crash syntax_test/03: Crash syntax_test/27: Crash +syntax_test/28: Crash # 'package:front_end/src/fasta/kernel/kernel_class_builder.dart': Failed assertion: line 83 pos 12: 'arguments == null || cls.typeParameters.length == arguments.length': is not true. +syntax_test/29: Crash # 'package:front_end/src/fasta/kernel/kernel_class_builder.dart': Failed assertion: line 83 pos 12: 'arguments == null || cls.typeParameters.length == arguments.length': is not true. +syntax_test/30: Crash # 'package:front_end/src/fasta/kernel/kernel_class_builder.dart': Failed assertion: line 83 pos 12: 'arguments == null || cls.typeParameters.length == arguments.length': is not true. +syntax_test/31: Crash # 'package:front_end/src/fasta/kernel/kernel_class_builder.dart': Failed assertion: line 83 pos 12: 'arguments == null || cls.typeParameters.length == arguments.length': is not true. +syntax_test/32: Crash # 'package:front_end/src/fasta/kernel/kernel_class_builder.dart': Failed assertion: line 83 pos 12: 'arguments == null || cls.typeParameters.length == arguments.length': is not true. +syntax_test/33: Crash # 'package:front_end/src/fasta/kernel/kernel_class_builder.dart': Failed assertion: line 83 pos 12: 'arguments == null || cls.typeParameters.length == arguments.length': is not true. syntax_test/49: Crash syntax_test/54: Crash syntax_test/59: Crash diff --git a/tests/language_2/language_2_dart2js.status b/tests/language_2/language_2_dart2js.status index 4ed241a5d53..88bf25caa7a 100644 --- a/tests/language_2/language_2_dart2js.status +++ b/tests/language_2/language_2_dart2js.status @@ -390,8 +390,7 @@ bit_operations_test/04: Crash bit_operations_test/none: Crash bool_check_test: RuntimeError bool_condition_check_test: RuntimeError -bool_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(BoolTest.testLogicalOp#falseCount) is stored in a closure field. -bool_test: RuntimeError +bool_test: Crash # 'file:///usr/local/google/home/sra/Dart2/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(BoolTest.testLogicalOp#falseCount) is stored in a closure field. bound_closure_equality_test: Crash bound_closure_primitives_test: Crash branch_canonicalization_test: RuntimeError @@ -473,11 +472,9 @@ closure_in_field_initializer_test: Crash # 'file:///c:/Users/johnniwinther/dart- closure_in_initializer2_test: Crash closure_in_initializer_test: Crash closure_internals_test: Crash -closure_parameter_types_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(main#invokeCount) is stored in a closure field. -closure_parameter_types_test: RuntimeError +closure_parameter_types_test: Crash # 'file:///usr/local/google/home/sra/Dart2/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(main#invokeCount) is stored in a closure field. closure_self_reference_test: Crash -closure_shared_state_test: Crash # 'file:///c:/Users/johnniwinther/dart-repo1/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(setupNestedLoop#j) is stored in a closure field. -closure_shared_state_test: RuntimeError +closure_shared_state_test: Crash # 'file:///usr/local/google/home/sra/Dart2/sdk/pkg/compiler/lib/src/ssa/locals_handler.dart': Failed assertion: line 425 pos 12: '!isStoredInClosureField(local)': Local local(setupNestedLoop#j) is stored in a closure field. closure_type_variable_test: Crash # NoSuchMethodError: The getter 'typeArguments' was called on null. closure_type_variables_test: Crash # 'file:///usr/local/google/home/efortuna/dart/sdk/pkg/compiler/lib/src/js_model/closure.dart': Failed assertion: line 192 pos 9: 'closure != null': Corresponding closure class not found for local(A.bar#g). Closures found for (j:closure_call(Closure_fromTearOff_closure.call), local(Closure.fromTearOff#), j:closure_call(Maps_mapToString_closure.call), ..., j:closure_call(A$bar_A$bar_closure.call), local(A.bar#g)) closure_with_super_field_test: Crash # Assertion failure: Cannot find value Instance of 'ThisLocal' in (local(B.returnSuperInClosure#)) for j:closure_call(B_returnSuperInClosure_closure.call).