| Summary: | Invalid call chained with optional access | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Kanguk Lee <p51lee> |
| Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | CC: | mark.lam, ross.kirsling, webkit-bug-importer, ysuzuki |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Local Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Marking as duplicate as both cases will be addressed with one patch. *** This bug has been marked as a duplicate of bug 247431 *** |
// input.js ( { } . x ( ) ?. x ) ; __________________ Hello, Executing the input.js using JSC, it is terminated normally. However, it is expected to throw TypeError since `{ } . x` is not a function. Running the input.js with JSC gives --- $ jsc input.js // no error --- while other engines behave like --- # V8 $ node input.js input.js:1: TypeError: {}.x is not a function ( { } . x ( ) ?. x ) ; ^ TypeError: {}.x is not a function at input.js:1:9 # GraalJS $ js input.js TypeError: (intermediate value).x is not a function at <js> :program(input.js:1:2-12) --- WebKit version: 615.1.10