v8/test/unittests
Michael Lippautz 143e6a74d8 cppgc: Check for correct base class inheritance
The only valid way to define a GCed type T is by inheriting from
GarbageCollected<T>. Since this is prone to typos (see tests), add a
simple check that covers most interesting use cases.

The static assert covers
  A -> B -> GarbageCollected<C>

The static assert does not cover
 A -> B -> C -> GarbageCollected<B>

(In order to do so, we would need __direct_bases() support which is
not yet available for C++.)

Bug: pdfium:1670, chromium:1056170
Change-Id: I494de48992f8ba9a1f0f9daad60584d828717403
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2810415
Reviewed-by: Omer Katz <omerkatz@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#73854}
2021-04-08 09:23:57 +00:00
..
api Reland "[no-wasm] Exclude src/wasm from compilation" 2021-03-11 14:29:26 +00:00
asmjs [Respect] Prefer inclusive terms 2020-06-22 18:11:23 +00:00
assembler Add RISC-V backend 2021-02-09 17:06:36 +00:00
base [logging] Fix printing of single-byte enums 2021-03-12 15:43:12 +00:00
codegen Reland "Reland "Reland "[compiler][wasm] Align Frame slots to value size""" 2021-03-05 19:49:19 +00:00
compiler [compiler][arm64] fabs(fsub(x, y)) to fabd(x, y) 2021-04-01 09:57:33 +00:00
compiler-dispatcher [cleanup] Pass Isolate to Compiler::Compile* 2021-02-16 11:34:17 +00:00
date Reland "[d8] Remove maximum workers limitation" 2019-07-30 07:56:17 +00:00
diagnostics Move unittest files 2019-05-27 08:52:23 +00:00
execution [cleanup] Remove DISALLOW_COPY_AND_ASSIGN in test/{common,unittests} 2020-11-06 06:07:54 +00:00
heap cppgc: Check for correct base class inheritance 2021-04-08 09:23:57 +00:00
interpreter [cleanup][csa] Remove unused using compiler::Node* occurences 2021-03-03 13:58:42 +00:00
libplatform [Jobs API]: Cleanup migration of missing Jobs pieces. 2020-09-02 20:51:29 +00:00
logging [heap] Fix GcTracer scopes for GC jobs 2021-01-14 15:40:42 +00:00
numbers Reland "[no-wasm] Exclude src/wasm from compilation" 2021-03-11 14:29:26 +00:00
objects [cleanup] Remove redundant macro list 2021-03-12 19:24:57 +00:00
parser [cleanup] Remove DISALLOW_COPY_AND_ASSIGN in test/{common,unittests} 2020-11-06 06:07:54 +00:00
profiler [cpu-profiler] Implement basic refcounting of CodeEntry strings 2020-12-22 02:39:09 +00:00
regress [runtime] Use release/acquire for JSGlobalObject's global dictionary 2020-11-13 16:12:39 +00:00
strings Fix some issues caught by _LIBCPP_DEBUG=0 2019-11-21 12:17:03 +00:00
tasks [test] Skip parallel compile tasks tests under off-thread 2020-11-16 15:50:20 +00:00
torque [torque] Add LazyNode support 2021-02-23 16:51:53 +00:00
utils [wasm] Add templatized methods for static bounds checks 2020-06-24 03:41:28 +00:00
wasm [wasm][eh] Make delegating to an unwind block invalid 2021-03-30 11:54:22 +00:00
zone [zone] Final cleanup of zone allocations 2020-07-16 17:47:46 +00:00
BUILD.gn [Jobs]: Delete item-parallel-job. 2021-04-07 15:59:16 +00:00
DEPS Move unit tests to test/unittests. 2014-10-01 08:34:25 +00:00
run-all-unittests.cc cppgc: Avoid initializing cppgc platform through V8 2021-02-09 08:26:11 +00:00
test-helpers.cc [compile] Add an UnoptimizedCompileState class 2020-04-23 07:08:28 +00:00
test-helpers.h [cleanup] Remove DISALLOW_COPY_AND_ASSIGN in test/{common,unittests} 2020-11-06 06:07:54 +00:00
test-utils.cc [ptr-cmpr] Remove runtime Isolate allocation flag 2020-10-01 15:34:13 +00:00
test-utils.h [config] Add V8_NODISCARD for Scope classes 2020-11-26 11:08:45 +00:00
testcfg.py [unittests] initialize the loop variable 2020-06-05 12:24:10 +00:00
unittests.status [test] Skip flaky tests 2021-02-23 13:16:53 +00:00