v8/src
Shu-yu Guo 80fd0b3d8a Fix the receiver when calling parenthesized optional chains
Correctly passing the receiver depends on the Call AST node's type.
Calling a parenthesized optional chain expression is parsed as a Call of
an OptionalChain of a Property.  Currently the computation of the type
does not take optional chains of property loads into consideration, so
calls of parenthesized optional chain expressions always get passed an
undefined receiver.

Bug: v8:10024
Change-Id: I904b0eeca2df30160def674fb32adf821403aef9
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1938571
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Commit-Queue: Shu-yu Guo <syg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#65252}
2019-11-29 00:44:06 +00:00
..
api [api] Remove deprecated wasm type and methods 2019-11-28 13:55:15 +00:00
asmjs [asm.js] Fix load type of {Float32Array} and {Float64Array}. 2019-11-25 14:47:08 +00:00
ast Fix the receiver when calling parenthesized optional chains 2019-11-29 00:44:06 +00:00
base [gasm] Strengthen typing 2019-11-28 14:22:26 +00:00
builtins [wasm] Remove obsolete {Builtins::IsWasmRuntimeStub}. 2019-11-28 14:02:15 +00:00
codegen [compiler] Ensure source positions collected when required 2019-11-28 20:14:37 +00:00
common [isolate] Make field getters use a const Isolate* 2019-11-27 12:39:30 +00:00
compiler [ptr-compr][cleanup] Rename RemoveChangeTaggedToCompressed 2019-11-28 18:41:16 +00:00
compiler-dispatcher [compile] Collect RuntimeCallStats for AssembleCode 2019-11-27 19:06:18 +00:00
d8 [builtins] Allow 2Gb TypedArrays on 64-bit architectures 2019-11-11 21:42:56 +00:00
date [cleanup] Split out bit-field.h and bounds.h from utils/utils.h 2019-11-15 13:00:08 +00:00
debug [wasm] Support stepping back to Javascript from Wasm 2019-11-22 17:16:17 +00:00
deoptimizer [compiler] Allow deopts to slightly exceed the stack limit 2019-11-19 06:30:07 +00:00
diagnostics [isolate] Make field getters use a const Isolate* 2019-11-27 12:39:30 +00:00
execution [isolate] Make field getters use a const Isolate* 2019-11-27 12:39:30 +00:00
extensions [api] Deprecate [Shared]ArrayBuffer::Externalize/GetContents and constructors 2019-10-29 22:01:54 +00:00
flags [api] SharedMemoryStatistics now reports RO-Heap stats 2019-11-28 10:40:29 +00:00
handles [heap, perfetto] Emit MinorGC/MajorGC trace events for each GC 2019-11-22 16:59:08 +00:00
heap [heap] Make ConcurrentSweepingState an enum class. 2019-11-28 17:26:17 +00:00
ic Revert "[ic] Load name/context lazily in LdaNamedProperty" 2019-11-27 13:57:21 +00:00
init Revert "[names] Fix some test262 name tests to conform with spec changes" 2019-11-27 16:02:27 +00:00
inspector [DevTools] Roll inspector_protocol (V8) (strtod) 2019-11-27 17:35:47 +00:00
interpreter Fix the receiver when calling parenthesized optional chains 2019-11-29 00:44:06 +00:00
json More LookupIterator fixes after r65078 2019-11-26 15:45:11 +00:00
libplatform [tracing] Fix endianness problem when using booleans 2019-11-08 13:35:41 +00:00
libsampler libsampler fix register calls for FreeBSD 2019-11-28 09:42:39 +00:00
logging [compile] Collect RuntimeCallStats for AssembleCode 2019-11-27 19:06:18 +00:00
numbers
objects [compiler] Ensure source positions collected when required 2019-11-28 20:14:37 +00:00
parsing [parser] Don't verify arrow declaration positions if we're going to fail 2019-11-26 12:50:11 +00:00
profiler [cpu-profiler] Remove deprecated GetCallUid() 2019-11-27 13:56:19 +00:00
protobuf
regexp Reland "[regexp] Re-execute regexp when '.indices' is accessed." 2019-11-21 13:01:48 +00:00
roots [runtime] Creates a global/read-only ScopeInfo for NativeContext 2019-10-24 15:44:30 +00:00
runtime Introduce %IsBeingInterpreted 2019-11-28 14:20:45 +00:00
sanitizer
snapshot Changing checksum implementation to use zlib's adler32 2019-11-25 21:54:30 +00:00
strings Reland "Fixes for size_t LookupIterator" 2019-11-25 22:58:40 +00:00
tasks
third_party Remove yangguo@chromium.org from some OWNERS files 2019-10-31 13:27:20 +00:00
torque [isolate] Make field getters use a const Isolate* 2019-11-27 12:39:30 +00:00
tracing [tracing] Generalize {SetTraceValue} method 2019-11-01 09:59:51 +00:00
trap-handler Introducing trap handler support for FreeBSD x64. 2019-11-08 16:46:05 +00:00
utils [utils] Remove unused MutableCStrVector 2019-11-26 16:55:21 +00:00
wasm [wasm] Remove obsolete {Builtins::IsWasmRuntimeStub}. 2019-11-28 14:02:15 +00:00
zone
DEPS
OWNERS