[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:array_length:*]
  expected:
    if os == "linux" and debug: [OK, CRASH]
    if os == "mac": [OK, SKIP]
  [:]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:atomic_ptr_to_element:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:address_space="storage"]

  [:address_space="workgroup"]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:mixed_ptr_parameters:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_full_object:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:address_space="function";call_indirection=0;type="array"]

  [:address_space="function";call_indirection=0;type="struct"]

  [:address_space="function";call_indirection=0;type="vec4i"]

  [:address_space="function";call_indirection=1;type="array"]

  [:address_space="function";call_indirection=1;type="struct"]

  [:address_space="function";call_indirection=1;type="vec4i"]

  [:address_space="function";call_indirection=2;type="array"]

  [:address_space="function";call_indirection=2;type="struct"]

  [:address_space="function";call_indirection=2;type="vec4i"]

  [:address_space="private";call_indirection=0;type="array"]

  [:address_space="private";call_indirection=0;type="struct"]

  [:address_space="private";call_indirection=0;type="vec4i"]

  [:address_space="private";call_indirection=1;type="array"]

  [:address_space="private";call_indirection=1;type="struct"]

  [:address_space="private";call_indirection=1;type="vec4i"]

  [:address_space="private";call_indirection=2;type="array"]

  [:address_space="private";call_indirection=2;type="struct"]

  [:address_space="private";call_indirection=2;type="vec4i"]

  [:address_space="storage";call_indirection=0;type="array"]

  [:address_space="storage";call_indirection=0;type="struct"]

  [:address_space="storage";call_indirection=0;type="vec4i"]

  [:address_space="storage";call_indirection=1;type="array"]

  [:address_space="storage";call_indirection=1;type="struct"]

  [:address_space="storage";call_indirection=1;type="vec4i"]

  [:address_space="storage";call_indirection=2;type="array"]

  [:address_space="storage";call_indirection=2;type="struct"]

  [:address_space="storage";call_indirection=2;type="vec4i"]

  [:address_space="uniform";call_indirection=0;type="array"]

  [:address_space="uniform";call_indirection=0;type="struct"]

  [:address_space="uniform";call_indirection=0;type="vec4i"]

  [:address_space="uniform";call_indirection=1;type="array"]

  [:address_space="uniform";call_indirection=1;type="struct"]

  [:address_space="uniform";call_indirection=1;type="vec4i"]

  [:address_space="uniform";call_indirection=2;type="array"]

  [:address_space="uniform";call_indirection=2;type="struct"]

  [:address_space="uniform";call_indirection=2;type="vec4i"]

  [:address_space="workgroup";call_indirection=0;type="array"]

  [:address_space="workgroup";call_indirection=0;type="struct"]

  [:address_space="workgroup";call_indirection=0;type="vec4i"]

  [:address_space="workgroup";call_indirection=1;type="array"]

  [:address_space="workgroup";call_indirection=1;type="struct"]

  [:address_space="workgroup";call_indirection=1;type="vec4i"]

  [:address_space="workgroup";call_indirection=2;type="array"]

  [:address_space="workgroup";call_indirection=2;type="struct"]

  [:address_space="workgroup";call_indirection=2;type="vec4i"]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_element:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:address_space="function"]

  [:address_space="private"]

  [:address_space="storage"]

  [:address_space="uniform"]

  [:address_space="workgroup"]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:read_ptr_to_member:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:address_space="function"]

  [:address_space="private"]

  [:address_space="storage"]

  [:address_space="uniform"]

  [:address_space="workgroup"]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_full_object:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:address_space="function";call_indirection=0;type="array"]

  [:address_space="function";call_indirection=0;type="struct"]

  [:address_space="function";call_indirection=0;type="vec4i"]

  [:address_space="function";call_indirection=1;type="array"]

  [:address_space="function";call_indirection=1;type="struct"]

  [:address_space="function";call_indirection=1;type="vec4i"]

  [:address_space="function";call_indirection=2;type="array"]

  [:address_space="function";call_indirection=2;type="struct"]

  [:address_space="function";call_indirection=2;type="vec4i"]

  [:address_space="private";call_indirection=0;type="array"]

  [:address_space="private";call_indirection=0;type="struct"]

  [:address_space="private";call_indirection=0;type="vec4i"]

  [:address_space="private";call_indirection=1;type="array"]

  [:address_space="private";call_indirection=1;type="struct"]

  [:address_space="private";call_indirection=1;type="vec4i"]

  [:address_space="private";call_indirection=2;type="array"]

  [:address_space="private";call_indirection=2;type="struct"]

  [:address_space="private";call_indirection=2;type="vec4i"]

  [:address_space="storage";call_indirection=0;type="array"]

  [:address_space="storage";call_indirection=0;type="struct"]

  [:address_space="storage";call_indirection=0;type="vec4i"]

  [:address_space="storage";call_indirection=1;type="array"]

  [:address_space="storage";call_indirection=1;type="struct"]

  [:address_space="storage";call_indirection=1;type="vec4i"]

  [:address_space="storage";call_indirection=2;type="array"]

  [:address_space="storage";call_indirection=2;type="struct"]

  [:address_space="storage";call_indirection=2;type="vec4i"]

  [:address_space="workgroup";call_indirection=0;type="array"]

  [:address_space="workgroup";call_indirection=0;type="struct"]

  [:address_space="workgroup";call_indirection=0;type="vec4i"]

  [:address_space="workgroup";call_indirection=1;type="array"]

  [:address_space="workgroup";call_indirection=1;type="struct"]

  [:address_space="workgroup";call_indirection=1;type="vec4i"]

  [:address_space="workgroup";call_indirection=2;type="array"]

  [:address_space="workgroup";call_indirection=2;type="struct"]

  [:address_space="workgroup";call_indirection=2;type="vec4i"]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_element:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:address_space="function"]

  [:address_space="private"]

  [:address_space="storage"]

  [:address_space="workgroup"]


[cts.https.html?q=webgpu:shader,execution,expression,call,user,ptr_params:write_ptr_to_member:*]
  expected:
    if os == "mac": [OK, SKIP]
  [:address_space="function"]

  [:address_space="private"]

  [:address_space="storage"]

  [:address_space="workgroup"]
