[webkit-changes] [WebKit/WebKit] 0d5651: [WGSL] no matching overload for operator >>(i32, u32)

Tadeu Zagallo noreply at github.com
Wed Nov 1 09:33:11 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0d565178df9de649c1f8ab419a6e393d216ef2dc
      https://github.com/WebKit/WebKit/commit/0d565178df9de649c1f8ab419a6e393d216ef2dc
  Author: Tadeu Zagallo <tzagallo at apple.com>
  Date:   2023-11-01 (Wed, 01 Nov 2023)

  Changed paths:
    M Source/WebGPU/WGSL/ConstantFunctions.h
    M Source/WebGPU/WGSL/TypeDeclarations.rb
    M Source/WebGPU/WGSL/tests/valid/overload.wgsl

  Log Message:
  -----------
  [WGSL] no matching overload for operator >>(i32, u32)
https://bugs.webkit.org/show_bug.cgi?id=263947
rdar://117720916

Reviewed by Mike Wyrzykowski.

The type declaration for `<<` and `>>` was wrong: it specified that both lhs and
rhs, should have the same type, either i32, u32 or a vector of either. However,
the spec[1] specifies that rhs must always be u32, and only lhs can be i32 (or u32).
This also required changed the constant function, as the BINARY_OPERATOR macro assumes
that both arguments will have the same type.

* Source/WebGPU/WGSL/ConstantFunctions.h:
(WGSL::constantBitwiseShiftLeft):
(WGSL::constantBitwiseShiftRight):
* Source/WebGPU/WGSL/TypeDeclarations.rb:
* Source/WebGPU/WGSL/tests/valid/overload.wgsl:

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




More information about the webkit-changes mailing list