Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: d4af38db11471f708621121528888e92ffed9443
      
https://github.com/WebKit/WebKit/commit/d4af38db11471f708621121528888e92ffed9443
  Author: Alexey Shvayka <ashva...@apple.com>
  Date:   2024-02-28 (Wed, 28 Feb 2024)

  Changed paths:
    M JSTests/ChakraCore/test/Array/array_splice.js
    M JSTests/ChakraCore/test/Array/array_splice_double.js
    M JSTests/stress/dfg-get-private-name-by-id-generic.js
    M JSTests/stress/dfg-get-private-name-by-id-osr-bad-identifier.js
    M JSTests/stress/dfg-get-private-name-by-offset-osr-bad-identifier.js
    M JSTests/stress/dfg-get-private-name-by-offset-osr-bad-structure.js
    M JSTests/stress/dfg-get-private-name-by-val-generic.js
    M JSTests/stress/dfg-put-private-name-check-barrier-insertion.js
    M JSTests/stress/dfg-put-private-name-compiled-as-put-by-id-direct.js
    M JSTests/stress/dfg-put-private-name-compiled-as-put-private-name-by-id.js
    M JSTests/stress/get-private-name-with-primitive.js
    M JSTests/stress/invalidate-array-iterator-prototype-next.js
    M JSTests/stress/private-method-and-field-named-constructor.js
    M JSTests/stress/private-method-check-structure-miss.js
    M JSTests/stress/private-method-invalid-multiple-brand-installation.js
    M JSTests/stress/private-method-invalidate-compiled-with-constant-symbol.js
    M JSTests/stress/private-method-polymorphic-with-constant-symbol.js
    M JSTests/stress/private-method-untyped-use.js
    M 
JSTests/stress/put-private-name-by-id-set-do-not-add-structure-trasition.js
    M JSTests/stress/put-private-name-invalid-define.js
    M JSTests/stress/put-private-name-invalid-store.js
    M 
JSTests/stress/put-private-name-invalidate-compiled-with-constant-symbol.js
    M JSTests/stress/put-private-name-untyped-use.js
    M JSTests/stress/put-private-name-with-primitive.js
    M JSTests/stress/regexp-with-runtime-syntax-errors.js
    M JSTests/stress/spread-calling.js

  Log Message:
  -----------
  [JSC] Stress tests have bogus asserts due to incorrectly negating 
`instanceof` operator
https://bugs.webkit.org/show_bug.cgi?id=261815
<rdar://problem/116114756>

Reviewed by Mark Lam.

Relational operators in JavaScript, including `instanceof`, have lower 
precedence than
logical negation, meaning `!err instanceof TypeError` evaluates as `false 
instanceof TypeError`
if `err` is an object.

This change fixes asserts in our tests to actually validate error constructors, 
which exposed
that one test had wrong expectation of `TypeError` instead of `ReferenceError`: 
JSC, V8, and
SpiderMonkey all throw `ReferenceError` for that code.

* JSTests/ChakraCore/test/Array/array_splice.js:
* JSTests/ChakraCore/test/Array/array_splice_double.js:
* JSTests/stress/dfg-get-private-name-by-id-generic.js:
* JSTests/stress/dfg-get-private-name-by-id-osr-bad-identifier.js:
* JSTests/stress/dfg-get-private-name-by-offset-osr-bad-identifier.js:
* JSTests/stress/dfg-get-private-name-by-offset-osr-bad-structure.js:
* JSTests/stress/dfg-get-private-name-by-val-generic.js:
* JSTests/stress/dfg-put-private-name-check-barrier-insertion.js:
* JSTests/stress/dfg-put-private-name-compiled-as-put-by-id-direct.js:
* JSTests/stress/dfg-put-private-name-compiled-as-put-private-name-by-id.js:
* JSTests/stress/get-private-name-with-primitive.js:
* JSTests/stress/invalidate-array-iterator-prototype-next.js:
* JSTests/stress/private-method-and-field-named-constructor.js:
* JSTests/stress/private-method-check-structure-miss.js:
* JSTests/stress/private-method-invalid-multiple-brand-installation.js:
* JSTests/stress/private-method-invalidate-compiled-with-constant-symbol.js:
* JSTests/stress/private-method-polymorphic-with-constant-symbol.js:
* JSTests/stress/private-method-untyped-use.js:
* JSTests/stress/put-private-name-by-id-set-do-not-add-structure-trasition.js:
* JSTests/stress/put-private-name-invalid-define.js:
* JSTests/stress/put-private-name-invalid-store.js:
* JSTests/stress/put-private-name-invalidate-compiled-with-constant-symbol.js:
* JSTests/stress/put-private-name-untyped-use.js:
* JSTests/stress/put-private-name-with-primitive.js:
* JSTests/stress/regexp-with-runtime-syntax-errors.js:
* JSTests/stress/spread-calling.js:

Canonical link: https://commits.webkit.org/275433@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to