mirror of
https://github.com/dart-lang/sdk
synced 2024-11-02 10:49:00 +00:00
8e2539d24c
Marks `Function` as an extensible type so that DDC knows to use the symbolized version of the equals operator. The `Function` class at runtime already has its equals method attached as the "symbolized" version. Consider `a == b`. When DDC knows `a` is statically a raw `Function` and non-nullable (more likely with sound null safety) the generated code should call the symbolized equals member ex: `a[$_equals](b)`. Without this change the generated code would be `a.equals(b)` and fail at runtime because the method does not exist. With this change co19_2/LibTest/core/Function/operator_eq_A01_t01 starts passing. Change-Id: I80dd2abbbb04f1b7ab7e21dd14561a45f6e81459 Fixes: https://github.com/dart-lang/sdk/issues/45601 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/194204 Commit-Queue: Nicholas Shahan <nshahan@google.com> Reviewed-by: Sigmund Cherem <sigmund@google.com> |
||
---|---|---|
.. | ||
co19 | ||
co19_2 | ||
corelib | ||
corelib_2 | ||
dartdevc | ||
dartdevc_2 | ||
ffi | ||
ffi_2 | ||
language | ||
language_2 | ||
lib | ||
lib_2 | ||
modular | ||
standalone | ||
standalone_2 | ||
web | ||
web_2 | ||
legacy_status_dart2js.csv | ||
README.md |
This directory contains tests of the language and core library implementations. For more information, see https://github.com/dart-lang/sdk/wiki/Testing.