Use the validating constructor when creating a Symbol.

Change-Id: Iae150ad036f8a72dcc853b86ecd01c569d28bd0b
Reviewed-on: https://dart-review.googlesource.com/11963
Reviewed-by: Sigmund Cherem <sigmund@google.com>
This commit is contained in:
Harry Terkelsen 2017-10-06 19:54:47 +00:00
parent f679610364
commit f690f6225e
3 changed files with 7 additions and 18 deletions

View file

@ -3366,6 +3366,9 @@ class KernelSsaGraphBuilder extends ir.Visitor
List<HInstruction> arguments =
_visitArgumentsForStaticTarget(target.function, invocation.arguments);
ConstructorEntity constructor = _elementMap.getConstructor(target);
if (commonElements.isSymbolConstructor(constructor)) {
constructor = commonElements.symbolValidatedConstructor;
}
ClassEntity cls = constructor.enclosingClass;
if (closedWorld.rtiNeed.classNeedsRti(cls)) {
_addTypeArguments(arguments, invocation.arguments);

View file

@ -319,16 +319,12 @@ queue_test: RuntimeError
regexp/regexp_kde_test: RuntimeError
regress_r21715_test: RuntimeError
string_base_vm_test: RuntimeError
symbol_operator_test/03: RuntimeError # Issue 27394
symbol_reserved_word_test/04: MissingCompileTimeError
symbol_reserved_word_test/06: RuntimeError # Issue 27394
symbol_reserved_word_test/07: MissingCompileTimeError
symbol_reserved_word_test/09: RuntimeError # Issue 27394
symbol_reserved_word_test/10: MissingCompileTimeError
symbol_reserved_word_test/12: RuntimeError # Issue 27394
symbol_test/02: MissingCompileTimeError
symbol_test/03: MissingCompileTimeError
symbol_test/none: RuntimeError # Issue 27394
symbol_reserved_word_test/03: RuntimeError
[ $compiler == dart2js && $dart2js_with_kernel && $minified ]
apply3_test: RuntimeError
@ -372,12 +368,9 @@ string_base_vm_test: RuntimeError
symbol_operator_test/03: RuntimeError # Issue 27394
symbol_operator_test/none: RuntimeError
symbol_reserved_word_test/04: MissingCompileTimeError
symbol_reserved_word_test/06: RuntimeError # Issue 27394
symbol_reserved_word_test/07: MissingCompileTimeError
symbol_reserved_word_test/09: RuntimeError # Issue 27394
symbol_reserved_word_test/10: MissingCompileTimeError
symbol_reserved_word_test/12: RuntimeError # Issue 27394
symbol_test/02: MissingCompileTimeError
symbol_test/03: MissingCompileTimeError
symbol_test/none: RuntimeError # Issue 27394
symbol_reserved_word_test/03: RuntimeError

View file

@ -517,17 +517,13 @@ regexp/regexp_kde_test: RuntimeError
splay_tree_from_iterable_test: Crash # 'file:*/pkg/compiler/lib/src/ssa/type_builder.dart': Failed assertion: line 141 pos 12: 'member.isInstanceMember': is not true.
splay_tree_test/01: Crash # 'file:*/pkg/compiler/lib/src/ssa/type_builder.dart': Failed assertion: line 141 pos 12: 'member.isInstanceMember': is not true.
splay_tree_test/02: Crash # 'file:*/pkg/compiler/lib/src/ssa/type_builder.dart': Failed assertion: line 141 pos 12: 'member.isInstanceMember': is not true.
symbol_operator_test/03: RuntimeError
symbol_reserved_word_test/04: MissingCompileTimeError
symbol_reserved_word_test/05: MissingCompileTimeError
symbol_reserved_word_test/06: RuntimeError
symbol_reserved_word_test/07: MissingCompileTimeError
symbol_reserved_word_test/09: RuntimeError
symbol_reserved_word_test/10: MissingCompileTimeError
symbol_reserved_word_test/12: RuntimeError
symbol_test/02: MissingCompileTimeError
symbol_test/03: MissingCompileTimeError
symbol_test/none: RuntimeError
symbol_reserved_word_test/03: RuntimeError
uri_base_test: Crash # RangeError (index): Invalid value: Valid value range is empty: 0
[ $compiler == dart2js && $dart2js_with_kernel && $minified ]
@ -554,14 +550,11 @@ symbol_operator_test/03: RuntimeError
symbol_operator_test/none: RuntimeError
symbol_reserved_word_test/04: MissingCompileTimeError
symbol_reserved_word_test/05: MissingCompileTimeError
symbol_reserved_word_test/06: RuntimeError
symbol_reserved_word_test/07: MissingCompileTimeError
symbol_reserved_word_test/09: RuntimeError
symbol_reserved_word_test/10: MissingCompileTimeError
symbol_reserved_word_test/12: RuntimeError
symbol_test/02: MissingCompileTimeError
symbol_test/03: MissingCompileTimeError
symbol_test/none: RuntimeError
symbol_reserved_word_test/03: RuntimeError
uri_base_test: Crash # RangeError (index): Invalid value: Valid value range is empty: 0
[$arch == simdbc || $arch == simdbc64]