v8/test/inspector
Benedikt Meurer c45a214cb5 [debug] Remove confusing destructuring statement positions.
This change removes the confusing statement positions that were
previously emitted for every binding identifier within both array
and object destructurings. These statement positions were reported as
breakable positions to the debugger front-end, and during stepping, the
debugger would also stop on them. This is confusing and very different
from how other expressions work (we don't emit statement positions
within expressions normally).

Instead we emit expression positions for the binding identifiers, which
are used to construct the source positions for stack traces. As a drive
by we also add the missing position (and test cases) for sub-patterns.

In particular this aligns the stepping and breakpoint behavior around
destructuring expressions with that of Firefox DevTools.

We also remove the original test cases, introduced with
https://codereview.chromium.org/1542813003 and
https://codereview.chromium.org/1533313002, which were written as
debugger tests, with new inspector tests that also ensure that the
call positions are correct.

Fixed: chromium:1368444
Bug: v8:811
Doc: http://go/chrome-devtools:destructuring-breakpoints-design
Change-Id: I4d53ad059b5eede73abd01d9bc9fdf8263c55c9d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3916453
Reviewed-by: Kim-Anh Tran <kimanh@chromium.org>
Commit-Queue: Kim-Anh Tran <kimanh@chromium.org>
Auto-Submit: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/main@{#83455}
2022-09-27 14:19:24 +00:00
..
console [inspector] Rename console.scheduleTask to console.createTask 2022-07-27 06:09:27 +00:00
cpu-profiler [flags] Rename --opt to --turbofan 2022-05-03 12:10:30 +00:00
debugger [debug] Remove confusing destructuring statement positions. 2022-09-27 14:19:24 +00:00
heap-profiler Don't run sampling-heap-profiler-flags with stress-incremental-marking 2022-09-15 12:53:28 +00:00
regress [inspector] Disable [[Scopes]] internal property 2022-09-22 07:12:24 +00:00
runtime [inspector] Disable [[Scopes]] internal property 2022-09-22 07:12:24 +00:00
sessions [inspector] Correct location for inline scripts with sourceURL. 2021-12-29 15:39:22 +00:00
type-profiler [tests] Filter out non-existent methods in inspector tests 2020-01-17 12:21:29 +00:00
BUILD.gn Include test/inspector/regress to swarming 2021-07-29 08:00:47 +00:00
DEPS [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
DIR_METADATA Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
frontend-channel.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
inspector-test.cc [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
inspector.status [debug] Remove confusing destructuring statement positions. 2022-09-27 14:19:24 +00:00
isolate-data.cc [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
isolate-data.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
json-parse-expected.txt [inspector] Refactor protocol-test.js 2017-05-19 00:35:45 +00:00
json-parse.js [inspector] Refactor protocol-test.js 2017-05-19 00:35:45 +00:00
OWNERS Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
print-method-not-found-expected.txt [tests] Filter out non-existent methods in inspector tests 2020-01-17 12:21:29 +00:00
print-method-not-found.js [tests] Filter out non-existent methods in inspector tests 2020-01-17 12:21:29 +00:00
protocol-test.js [wasm-gc][debugger] Fix struct_index retrieval for generic references 2022-08-24 13:25:50 +00:00
task-runner.cc [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
task-runner.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
tasks.cc Fix name collision of v8::internal::IsolateData 2021-08-25 08:45:53 +00:00
tasks.h Fix name collision of v8::internal::IsolateData 2021-08-25 08:45:53 +00:00
testcfg.py [test] Refactor testrunner (4) 2022-07-18 09:52:24 +00:00
utils.cc Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
utils.h [test] Remove some unused includes (2) 2022-07-19 08:55:55 +00:00
wasm-inspector-test.js [wasm-gc] Debugger: Provide type info for structs and arrays in tables 2022-08-26 14:51:20 +00:00