dart-sdk/tests
Regis Crelier f8d1d003c9 Reland "[VM/runtime] Fix computation of the hash of recursive types."
This is a reland of a528b19d2c

Updating the hash of the empty type argument vector in write-protected memory caused a crash in precomp mode.
The fix is to correctly initialize the hash so it does not need an update.

Original change's description:
> [VM/runtime] Fix computation of the hash of recursive types.
>
> When computing the hash of a type, only include the hashes of the type arguments corresponding to the type parameters of the type's class and not of the whole type argument vector, otherwise, the variable location of TypeRefs in the base class type arguments may result in different hashes.
>
> Add a regression test (this test was not failing in all configurations, since the issue becomes visible depending on the order in which types are loaded and finalized).
>
> This fixes issue https://github.com/dart-lang/sdk/issues/42954
>
> Small improvement: pick hash value 1 for a vector of dynamic types, so it can be cached and not recomputed repeatedly, which was the case with value 0.
>
> Change-Id: I3468952cbf61944a82cf8e00efbf4952bd831fbe
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157563
> Reviewed-by: Alexander Markov <alexmarkov@google.com>
> Commit-Queue: Régis Crelier <regis@google.com>

Change-Id: I538b4538c69472e09b7bd745c6bd41023e1f154f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/157781
Commit-Queue: Régis Crelier <regis@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
2020-08-07 21:13:35 +00:00
..
co19 [co19] LibTest/core tests enabled 2020-08-05 11:10:33 +00:00
co19_2 [co19] Re-enable tests skipped due to breaking change #40674 2020-05-12 14:51:19 +00:00
corelib Move codes from StaticTypeWarningCode into CompileTimeErrorCode. 2020-07-27 16:44:15 +00:00
corelib_2 [vm] Reland "Remove non-covariant checks from closure bodies (part 1)" 2020-07-21 10:00:41 +00:00
dart2js [package:js] Add errors for missing @JS on class 2020-08-07 17:09:23 +00:00
dart2js_2 [package:js] Add errors for missing @JS on class 2020-08-07 17:09:23 +00:00
dartdevc [ddc] Migrate tests in dartdevc suite 2020-07-15 00:16:03 +00:00
dartdevc_2 [ddc] Migrate tests in dartdevc suite 2020-07-15 00:16:03 +00:00
ffi [vm/ffi] Clarify DynamicLibrary.open behavior 2020-07-31 15:15:20 +00:00
ffi_2 [vm/ffi] Clarify DynamicLibrary.open behavior 2020-07-31 15:15:20 +00:00
kernel [VM] Fixes bad reuse/typing of temps in async transform invocations. 2020-03-06 12:20:45 +00:00
language Reland "[VM/runtime] Fix computation of the hash of recursive types." 2020-08-07 21:13:35 +00:00
language_2 Reland "[VM/runtime] Fix computation of the hash of recursive types." 2020-08-07 21:13:35 +00:00
lib [package:js] Add errors for missing @JS on class 2020-08-07 17:09:23 +00:00
lib_2 [dart2js] Skip js interop test on csp config 2020-07-31 19:29:03 +00:00
modular [dart2js] Fix bug in modular_test_suite. 2020-05-28 21:30:36 +00:00
standalone [dart:io] Disable isInsecureConnectionAllowed check as it broken 2020-07-31 16:45:00 +00:00
standalone_2 Reland "[vm] Fix some Fuchsia tests" 2020-08-06 21:29:29 +00:00
legacy_status_dart2js.csv [dart2js] Remove obsolete unittests. 2020-05-12 17:16:39 +00:00
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.