unrestricted_pointer_parameters
WGSL language feature
Specification: WGSL § unrestricted_pointer_parameters
Check navigator.gpu?.wgslLanguageFeatures?.has('unrestricted_pointer_parameters')
before choosing a shader that uses this language feature. It is available automatically
when supported; requires unrestricted_pointer_parameters; documents the dependency
and rejects the shader on unsupported implementations. This language token is not a
requiredFeatures entry for requestDevice(); any additional
device requirements are described below.
Earlier WGSL rules restrict user-defined pointer parameters to the function and private address spaces and require an argument to refer to the entire memory view of its root variable. This extension removes those restrictions, allowing helpers to accept pointers into storage or workgroup data and into elements or members of a larger value.
A compute library can then factor a storage-buffer update or workgroup-array operation into a function without copying the data into a temporary local variable. It also makes shader generation easier when translating algorithms that pass references to substructures.
The name does not mean arbitrary pointer arithmetic or unrestricted aliasing: type, access-mode, lifetime, and alias-analysis rules still apply. Direct syntax such as p.member is covered separately by pointer_composite_access. A fallback can pass indices into module-scope resources, pass values explicitly, or inline the affected helper.
Availability by month
| Month | With feature | Eligible reports | Availability |
|---|---|---|---|
| 2026-08 | 70 | 106 | 66.0% |
| 2026-09 | 28 | 36 | 77.8% |
By browser (last 30 days)
| Browser | Availability | n |
|---|---|---|
| chrome | 100.0% | 90 |
| edge | 100.0% | 8 |
| firefox | 0.0% | 44 |
Availability = share of first-party, non-quarantined reports with WebGPU on a hardware
(non-fallback) adapter
whose browser reports this token in navigator.gpu.wgslLanguageFeatures.
This measures language support in the browser, not a GPU hardware capability.
Developer-leaning sample.
Full methodology.