• Patrick Thier's avatar
    Reland "Reland "Improve error messages for property access on null/undefined"" · 819c3ae2
    Patrick Thier authored
    This is a reland of 8b18c5e6
    
    Original change's description:
    > Reland "Improve error messages for property access on null/undefined"
    >
    > This is a reland of 24c626c1
    >
    > Original change's description:
    > > Improve error messages for property access on null/undefined
    > >
    > > Only print the property name when accessing null/undefined if we can
    > > convert it to a string without causing side effects.
    > > If we can't, omit the property name in the error message.
    > > This should avoid confusion when the key is an object with toString().
    > > E.g. undefined[{toString:()=>'a'}] doesn't print 'read property [object
    > > Object]' anymore, which was misleading since the property accessed would
    > > be 'a', but we can't evaluate the key without side effects.
    > >
    > > Bug: v8:11365
    > > Change-Id: If82d1adb42561d4851e2bd2ca297a1c71738aee8
    > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2960211
    > > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    > > Commit-Queue: Patrick Thier <pthier@chromium.org>
    > > Cr-Commit-Position: refs/heads/master@{#75250}
    >
    > Bug: v8:11365
    > Change-Id: Ie2312337f4f1915faa31528a728d90833d80dbd1
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2979599
    > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    > Commit-Queue: Patrick Thier <pthier@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#75571}
    
    Bug: v8:11365
    Change-Id: I90360641ecd870bd93247aa6d91dfb0ad049cfb8
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3008219
    Auto-Submit: Patrick Thier <pthier@chromium.org>
    Commit-Queue: Toon Verwaest <verwaest@chromium.org>
    Reviewed-by: 's avatarToon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#75604}
    819c3ae2
Name
Last commit
Last update
..
fail Loading commit data...
mjsunit Loading commit data...
regress/fail Loading commit data...
BUILD.gn Loading commit data...
README.md Loading commit data...
asm-assignment-undeclared.js Loading commit data...
asm-assignment-undeclared.out Loading commit data...
asm-function-mismatch-def.js Loading commit data...
asm-function-mismatch-def.out Loading commit data...
asm-function-mismatch-use.js Loading commit data...
asm-function-mismatch-use.out Loading commit data...
asm-function-redefined.js Loading commit data...
asm-function-redefined.out Loading commit data...
asm-function-undefined.js Loading commit data...
asm-function-undefined.out Loading commit data...
asm-function-variable-collision.js Loading commit data...
asm-function-variable-collision.out Loading commit data...
asm-import-wrong-annotation.js Loading commit data...
asm-import-wrong-annotation.out Loading commit data...
asm-import-wrong-object.js Loading commit data...
asm-import-wrong-object.out Loading commit data...
asm-linking-bogus-heap.js Loading commit data...
asm-linking-bogus-heap.out Loading commit data...
asm-linking-bogus-stdlib.js Loading commit data...
asm-linking-bogus-stdlib.out Loading commit data...
asm-linking-missing-heap.js Loading commit data...
asm-linking-missing-heap.out Loading commit data...
asm-missing-parameter-annotation.js Loading commit data...
asm-missing-parameter-annotation.out Loading commit data...
asm-missing-return-annotation.js Loading commit data...
asm-missing-return-annotation.out Loading commit data...
asm-table-mismatch-def.js Loading commit data...
asm-table-mismatch-def.out Loading commit data...
asm-table-mismatch-use.js Loading commit data...
asm-table-mismatch-use.out Loading commit data...
asm-table-redefined.js Loading commit data...
asm-table-redefined.out Loading commit data...
asm-table-undefined.js Loading commit data...
asm-table-undefined.out Loading commit data...
asm-table-variable-collision.js Loading commit data...
asm-table-variable-collision.out Loading commit data...
empty.js Loading commit data...
empty.out Loading commit data...
message.status Loading commit data...
non-use-strict-hex-escape.js Loading commit data...
non-use-strict-hex-escape.out Loading commit data...
non-use-strict-octal-escape.js Loading commit data...
non-use-strict-octal-escape.out Loading commit data...
non-use-strict-uhex-escape.js Loading commit data...
non-use-strict-uhex-escape.out Loading commit data...
nonstrict-arguments.js Loading commit data...
nonstrict-arguments.out Loading commit data...
nonstrict-eval.js Loading commit data...
nonstrict-eval.out Loading commit data...
nonstrict-with.js Loading commit data...
nonstrict-with.out Loading commit data...
object-binding-pattern-await-computed-name.js Loading commit data...
object-binding-pattern-await-computed-name.out Loading commit data...
strict-octal-indirect-regexp.js Loading commit data...
strict-octal-indirect-regexp.out Loading commit data...
strict-octal-regexp.js Loading commit data...
strict-octal-regexp.out Loading commit data...
testcfg.py Loading commit data...
try-catch-finally-no-message.js Loading commit data...
try-catch-finally-no-message.out Loading commit data...
try-catch-finally-return-in-finally.js Loading commit data...
try-catch-finally-return-in-finally.out Loading commit data...
try-finally-return-in-finally.js Loading commit data...
try-finally-return-in-finally.out Loading commit data...
wasm-finish-compilation.js Loading commit data...
wasm-finish-compilation.out Loading commit data...
wasm-function-name-async.js Loading commit data...
wasm-function-name-async.out Loading commit data...
wasm-function-name-streaming.js Loading commit data...
wasm-function-name-streaming.out Loading commit data...
wasm-module-and-function-name-async.js Loading commit data...
wasm-module-and-function-name-async.out Loading commit data...
wasm-module-and-function-name-streaming.js Loading commit data...
wasm-module-and-function-name-streaming.out Loading commit data...
wasm-module-name-async.js Loading commit data...
wasm-module-name-async.out Loading commit data...
wasm-module-name-streaming.js Loading commit data...
wasm-module-name-streaming.out Loading commit data...
wasm-no-name-async.js Loading commit data...
wasm-no-name-async.out Loading commit data...
wasm-no-name-streaming.js Loading commit data...
wasm-no-name-streaming.out Loading commit data...
wasm-trace-liftoff.js Loading commit data...
wasm-trace-liftoff.out Loading commit data...
wasm-trace-memory-liftoff.js Loading commit data...
wasm-trace-memory-liftoff.out Loading commit data...
wasm-trace-memory.js Loading commit data...
wasm-trace-memory.out Loading commit data...
wasm-trace-turbofan.js Loading commit data...
wasm-trace-turbofan.out Loading commit data...
weakref-finalizationregistry-error.js Loading commit data...
weakref-finalizationregistry-error.out Loading commit data...