[cts.https.html?q=webgpu:shader,validation,decl,var:address_space_access_mode:*]
  implementation-status: backlog
  [:address_space="function";access_mode="";trailing_comma=false]
    expected: FAIL

  [:address_space="function";access_mode="";trailing_comma=true]
    expected: FAIL

  [:address_space="function";access_mode="read";trailing_comma=false]

  [:address_space="function";access_mode="read";trailing_comma=true]

  [:address_space="function";access_mode="read_write";trailing_comma=false]

  [:address_space="function";access_mode="read_write";trailing_comma=true]

  [:address_space="function";access_mode="write";trailing_comma=false]

  [:address_space="function";access_mode="write";trailing_comma=true]

  [:address_space="private";access_mode="";trailing_comma=false]

  [:address_space="private";access_mode="";trailing_comma=true]
    expected: FAIL

  [:address_space="private";access_mode="read";trailing_comma=false]

  [:address_space="private";access_mode="read";trailing_comma=true]

  [:address_space="private";access_mode="read_write";trailing_comma=false]

  [:address_space="private";access_mode="read_write";trailing_comma=true]

  [:address_space="private";access_mode="write";trailing_comma=false]

  [:address_space="private";access_mode="write";trailing_comma=true]

  [:address_space="storage";access_mode="";trailing_comma=false]

  [:address_space="storage";access_mode="";trailing_comma=true]
    expected: FAIL

  [:address_space="storage";access_mode="read";trailing_comma=false]

  [:address_space="storage";access_mode="read";trailing_comma=true]
    expected: FAIL

  [:address_space="storage";access_mode="read_write";trailing_comma=false]

  [:address_space="storage";access_mode="read_write";trailing_comma=true]
    expected: FAIL

  [:address_space="storage";access_mode="write";trailing_comma=false]

  [:address_space="storage";access_mode="write";trailing_comma=true]

  [:address_space="uniform";access_mode="";trailing_comma=false]

  [:address_space="uniform";access_mode="";trailing_comma=true]
    expected: FAIL

  [:address_space="uniform";access_mode="read";trailing_comma=false]

  [:address_space="uniform";access_mode="read";trailing_comma=true]

  [:address_space="uniform";access_mode="read_write";trailing_comma=false]

  [:address_space="uniform";access_mode="read_write";trailing_comma=true]

  [:address_space="uniform";access_mode="write";trailing_comma=false]

  [:address_space="uniform";access_mode="write";trailing_comma=true]

  [:address_space="workgroup";access_mode="";trailing_comma=false]

  [:address_space="workgroup";access_mode="";trailing_comma=true]
    expected: FAIL

  [:address_space="workgroup";access_mode="read";trailing_comma=false]

  [:address_space="workgroup";access_mode="read";trailing_comma=true]

  [:address_space="workgroup";access_mode="read_write";trailing_comma=false]

  [:address_space="workgroup";access_mode="read_write";trailing_comma=true]

  [:address_space="workgroup";access_mode="write";trailing_comma=false]

  [:address_space="workgroup";access_mode="write";trailing_comma=true]


[cts.https.html?q=webgpu:shader,validation,decl,var:binding_collision_unused_helper:*]
  [:]


[cts.https.html?q=webgpu:shader,validation,decl,var:binding_collisions:*]
  [:a_group=0;b_group=0;a_binding=0;b_binding=0;b_use="different"]

  [:a_group=0;b_group=0;a_binding=0;b_binding=0;b_use="same"]

  [:a_group=0;b_group=0;a_binding=0;b_binding=1;b_use="different"]

  [:a_group=0;b_group=0;a_binding=0;b_binding=1;b_use="same"]

  [:a_group=0;b_group=0;a_binding=1;b_binding=0;b_use="different"]

  [:a_group=0;b_group=0;a_binding=1;b_binding=0;b_use="same"]

  [:a_group=0;b_group=0;a_binding=1;b_binding=1;b_use="different"]

  [:a_group=0;b_group=0;a_binding=1;b_binding=1;b_use="same"]

  [:a_group=0;b_group=1;a_binding=0;b_binding=0;b_use="different"]

  [:a_group=0;b_group=1;a_binding=0;b_binding=0;b_use="same"]

  [:a_group=0;b_group=1;a_binding=0;b_binding=1;b_use="different"]

  [:a_group=0;b_group=1;a_binding=0;b_binding=1;b_use="same"]

  [:a_group=0;b_group=1;a_binding=1;b_binding=0;b_use="different"]

  [:a_group=0;b_group=1;a_binding=1;b_binding=0;b_use="same"]

  [:a_group=0;b_group=1;a_binding=1;b_binding=1;b_use="different"]

  [:a_group=0;b_group=1;a_binding=1;b_binding=1;b_use="same"]

  [:a_group=1;b_group=0;a_binding=0;b_binding=0;b_use="different"]

  [:a_group=1;b_group=0;a_binding=0;b_binding=0;b_use="same"]

  [:a_group=1;b_group=0;a_binding=0;b_binding=1;b_use="different"]

  [:a_group=1;b_group=0;a_binding=0;b_binding=1;b_use="same"]

  [:a_group=1;b_group=0;a_binding=1;b_binding=0;b_use="different"]

  [:a_group=1;b_group=0;a_binding=1;b_binding=0;b_use="same"]

  [:a_group=1;b_group=0;a_binding=1;b_binding=1;b_use="different"]

  [:a_group=1;b_group=0;a_binding=1;b_binding=1;b_use="same"]

  [:a_group=1;b_group=1;a_binding=0;b_binding=0;b_use="different"]

  [:a_group=1;b_group=1;a_binding=0;b_binding=0;b_use="same"]

  [:a_group=1;b_group=1;a_binding=0;b_binding=1;b_use="different"]

  [:a_group=1;b_group=1;a_binding=0;b_binding=1;b_use="same"]

  [:a_group=1;b_group=1;a_binding=1;b_binding=0;b_use="different"]

  [:a_group=1;b_group=1;a_binding=1;b_binding=0;b_use="same"]

  [:a_group=1;b_group=1;a_binding=1;b_binding=1;b_use="different"]

  [:a_group=1;b_group=1;a_binding=1;b_binding=1;b_use="same"]


[cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_function_var:*]
  [:group="";binding=""]

  [:group="";binding="%40binding(0)"]

  [:group="%40group(0)";binding=""]

  [:group="%40group(0)";binding="%40binding(0)"]


[cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_non_resources:*]
  [:addrspace="private";group="";binding=""]

  [:addrspace="private";group="";binding="%40binding(0)"]

  [:addrspace="private";group="%40group(0)";binding=""]

  [:addrspace="private";group="%40group(0)";binding="%40binding(0)"]

  [:addrspace="workgroup";group="";binding=""]

  [:addrspace="workgroup";group="";binding="%40binding(0)"]

  [:addrspace="workgroup";group="%40group(0)";binding=""]

  [:addrspace="workgroup";group="%40group(0)";binding="%40binding(0)"]


[cts.https.html?q=webgpu:shader,validation,decl,var:binding_point_on_resources:*]
  [:decl="sampler";group="";binding=""]

  [:decl="sampler";group="";binding="%40binding(0)"]

  [:decl="sampler";group="%40group(0)";binding=""]

  [:decl="sampler";group="%40group(0)";binding="%40binding(0)"]

  [:decl="storage";group="";binding=""]

  [:decl="storage";group="";binding="%40binding(0)"]

  [:decl="storage";group="%40group(0)";binding=""]

  [:decl="storage";group="%40group(0)";binding="%40binding(0)"]

  [:decl="texture";group="";binding=""]

  [:decl="texture";group="";binding="%40binding(0)"]

  [:decl="texture";group="%40group(0)";binding=""]

  [:decl="texture";group="%40group(0)";binding="%40binding(0)"]

  [:decl="uniform";group="";binding=""]

  [:decl="uniform";group="";binding="%40binding(0)"]

  [:decl="uniform";group="%40group(0)";binding=""]

  [:decl="uniform";group="%40group(0)";binding="%40binding(0)"]


[cts.https.html?q=webgpu:shader,validation,decl,var:explicit_access_mode:*]
  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="write";stage="compute"]

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="write";stage="compute"]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="write";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="write";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="write";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="write";stage="compute"]


[cts.https.html?q=webgpu:shader,validation,decl,var:function_addrspace_at_module_scope:*]
  [:addrspace="function"]

  [:addrspace="private"]


[cts.https.html?q=webgpu:shader,validation,decl,var:function_scope_types:*]
  [:type="S_S_bool";kind="comment";via_alias=false]

  [:type="S_S_bool";kind="comment";via_alias=true]

  [:type="S_S_bool";kind="var";via_alias=false]

  [:type="S_S_bool";kind="var";via_alias=true]

  [:type="S_array_bool_4";kind="comment";via_alias=false]

  [:type="S_array_bool_4";kind="comment";via_alias=true]

  [:type="S_array_bool_4";kind="var";via_alias=false]

  [:type="S_array_bool_4";kind="var";via_alias=true]

  [:type="S_array_vec4u";kind="comment";via_alias=false]

  [:type="S_array_vec4u";kind="comment";via_alias=true]

  [:type="S_array_vec4u";kind="var";via_alias=false]

  [:type="S_array_vec4u";kind="var";via_alias=true]

  [:type="S_array_vec4u_4";kind="comment";via_alias=false]

  [:type="S_array_vec4u_4";kind="comment";via_alias=true]

  [:type="S_array_vec4u_4";kind="var";via_alias=false]

  [:type="S_array_vec4u_4";kind="var";via_alias=true]

  [:type="S_bool";kind="comment";via_alias=false]

  [:type="S_bool";kind="comment";via_alias=true]

  [:type="S_bool";kind="var";via_alias=false]

  [:type="S_bool";kind="var";via_alias=true]

  [:type="S_u32";kind="comment";via_alias=false]

  [:type="S_u32";kind="comment";via_alias=true]

  [:type="S_u32";kind="var";via_alias=false]

  [:type="S_u32";kind="var";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="var";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="var";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="var";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="var";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="var";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="var";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="var";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="var";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="var";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="var";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="var";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="var";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="comment";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="comment";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="var";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="var";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="comment";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="comment";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="var";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="var";via_alias=true]

  [:type="bool";kind="comment";via_alias=false]

  [:type="bool";kind="comment";via_alias=true]

  [:type="bool";kind="var";via_alias=false]

  [:type="bool";kind="var";via_alias=true]

  [:type="f16";kind="comment";via_alias=false]

  [:type="f16";kind="comment";via_alias=true]

  [:type="f16";kind="var";via_alias=false]

  [:type="f16";kind="var";via_alias=true]

  [:type="f32";kind="comment";via_alias=false]

  [:type="f32";kind="comment";via_alias=true]

  [:type="f32";kind="var";via_alias=false]

  [:type="f32";kind="var";via_alias=true]

  [:type="i32";kind="comment";via_alias=false]

  [:type="i32";kind="comment";via_alias=true]

  [:type="i32";kind="var";via_alias=false]

  [:type="i32";kind="var";via_alias=true]

  [:type="mat2x2f";kind="comment";via_alias=false]

  [:type="mat2x2f";kind="comment";via_alias=true]

  [:type="mat2x2f";kind="var";via_alias=false]

  [:type="mat2x2f";kind="var";via_alias=true]

  [:type="mat3x4h";kind="comment";via_alias=false]

  [:type="mat3x4h";kind="comment";via_alias=true]

  [:type="mat3x4h";kind="var";via_alias=false]

  [:type="mat3x4h";kind="var";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="var";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="var";via_alias=true]

  [:type="sampler";kind="comment";via_alias=false]

  [:type="sampler";kind="comment";via_alias=true]

  [:type="sampler";kind="var";via_alias=false]

  [:type="sampler";kind="var";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="var";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="var";via_alias=true]

  [:type="u32";kind="comment";via_alias=false]

  [:type="u32";kind="comment";via_alias=true]

  [:type="u32";kind="var";via_alias=false]

  [:type="u32";kind="var";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="comment";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="comment";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="var";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="var";via_alias=true]

  [:type="vec2f";kind="comment";via_alias=false]

  [:type="vec2f";kind="comment";via_alias=true]

  [:type="vec2f";kind="var";via_alias=false]

  [:type="vec2f";kind="var";via_alias=true]

  [:type="vec3h";kind="comment";via_alias=false]

  [:type="vec3h";kind="comment";via_alias=true]

  [:type="vec3h";kind="var";via_alias=false]

  [:type="vec3h";kind="var";via_alias=true]

  [:type="vec3i";kind="comment";via_alias=false]

  [:type="vec3i";kind="comment";via_alias=true]

  [:type="vec3i";kind="var";via_alias=false]

  [:type="vec3i";kind="var";via_alias=true]

  [:type="vec4u";kind="comment";via_alias=false]

  [:type="vec4u";kind="comment";via_alias=true]

  [:type="vec4u";kind="var";via_alias=false]

  [:type="vec4u";kind="var";via_alias=true]


[cts.https.html?q=webgpu:shader,validation,decl,var:handle_initializer:*]
  [:initializer=false;type="sampler"]

  [:initializer=false;type="texture_2d%3Cf32%3E"]

  [:initializer=true;type="sampler"]

  [:initializer=true;type="texture_2d%3Cf32%3E"]


[cts.https.html?q=webgpu:shader,validation,decl,var:implicit_access_mode:*]
  implementation-status: backlog
  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]
    expected: FAIL

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]


[cts.https.html?q=webgpu:shader,validation,decl,var:initializer_kind:*]
  [:initializer="42u";addrspace="function"]

  [:initializer="42u";addrspace="private"]

  [:initializer="another_private_var";addrspace="function"]

  [:initializer="another_private_var";addrspace="private"]

  [:initializer="my_const_42u";addrspace="function"]

  [:initializer="my_const_42u";addrspace="private"]

  [:initializer="my_override_42u";addrspace="function"]

  [:initializer="my_override_42u";addrspace="private"]

  [:initializer="u32()";addrspace="function"]

  [:initializer="u32()";addrspace="private"]

  [:initializer="u32(sqrt(42.0))";addrspace="function"]

  [:initializer="u32(sqrt(42.0))";addrspace="private"]

  [:initializer="user_func()";addrspace="function"]

  [:initializer="user_func()";addrspace="private"]

  [:initializer="vec4u(1,%202,%203,%204)[another_private_var%20%2F%2020\]";addrspace="function"]

  [:initializer="vec4u(1,%202,%203,%204)[another_private_var%20%2F%2020\]";addrspace="private"]

  [:initializer="vec4u(1,%202,%203,%204)[my_const_42u%20%2F%2020\]";addrspace="function"]

  [:initializer="vec4u(1,%202,%203,%204)[my_const_42u%20%2F%2020\]";addrspace="private"]

  [:initializer="vec4u(1,%202,%203,%204)[my_override_42u%20%2F%2020\]";addrspace="function"]

  [:initializer="vec4u(1,%202,%203,%204)[my_override_42u%20%2F%2020\]";addrspace="private"]


[cts.https.html?q=webgpu:shader,validation,decl,var:initializer_type:*]
  [:]


[cts.https.html?q=webgpu:shader,validation,decl,var:module_scope_initializers:*]
  [:initializer=false;kind="private"]

  [:initializer=false;kind="storage_ro"]

  [:initializer=false;kind="storage_rw"]

  [:initializer=false;kind="uniform"]

  [:initializer=false;kind="workgroup"]

  [:initializer=true;kind="private"]

  [:initializer=true;kind="storage_ro"]

  [:initializer=true;kind="storage_rw"]

  [:initializer=true;kind="uniform"]

  [:initializer=true;kind="workgroup"]


[cts.https.html?q=webgpu:shader,validation,decl,var:module_scope_types:*]
  implementation-status: backlog
  [:type="S_S_bool";kind="comment";via_alias=false]

  [:type="S_S_bool";kind="comment";via_alias=true]

  [:type="S_S_bool";kind="handle";via_alias=false]

  [:type="S_S_bool";kind="handle";via_alias=true]

  [:type="S_S_bool";kind="private";via_alias=false]

  [:type="S_S_bool";kind="private";via_alias=true]

  [:type="S_S_bool";kind="storage_ro";via_alias=false]

  [:type="S_S_bool";kind="storage_ro";via_alias=true]

  [:type="S_S_bool";kind="storage_rw";via_alias=false]

  [:type="S_S_bool";kind="storage_rw";via_alias=true]

  [:type="S_S_bool";kind="uniform";via_alias=false]

  [:type="S_S_bool";kind="uniform";via_alias=true]

  [:type="S_S_bool";kind="workgroup";via_alias=false]

  [:type="S_S_bool";kind="workgroup";via_alias=true]

  [:type="S_array_bool_4";kind="comment";via_alias=false]

  [:type="S_array_bool_4";kind="comment";via_alias=true]

  [:type="S_array_bool_4";kind="handle";via_alias=false]

  [:type="S_array_bool_4";kind="handle";via_alias=true]

  [:type="S_array_bool_4";kind="private";via_alias=false]

  [:type="S_array_bool_4";kind="private";via_alias=true]

  [:type="S_array_bool_4";kind="storage_ro";via_alias=false]

  [:type="S_array_bool_4";kind="storage_ro";via_alias=true]

  [:type="S_array_bool_4";kind="storage_rw";via_alias=false]

  [:type="S_array_bool_4";kind="storage_rw";via_alias=true]

  [:type="S_array_bool_4";kind="uniform";via_alias=false]

  [:type="S_array_bool_4";kind="uniform";via_alias=true]

  [:type="S_array_bool_4";kind="workgroup";via_alias=false]

  [:type="S_array_bool_4";kind="workgroup";via_alias=true]

  [:type="S_array_vec4u";kind="comment";via_alias=false]

  [:type="S_array_vec4u";kind="comment";via_alias=true]

  [:type="S_array_vec4u";kind="handle";via_alias=false]

  [:type="S_array_vec4u";kind="handle";via_alias=true]

  [:type="S_array_vec4u";kind="private";via_alias=false]

  [:type="S_array_vec4u";kind="private";via_alias=true]

  [:type="S_array_vec4u";kind="storage_ro";via_alias=false]

  [:type="S_array_vec4u";kind="storage_ro";via_alias=true]

  [:type="S_array_vec4u";kind="storage_rw";via_alias=false]

  [:type="S_array_vec4u";kind="storage_rw";via_alias=true]

  [:type="S_array_vec4u";kind="uniform";via_alias=false]

  [:type="S_array_vec4u";kind="uniform";via_alias=true]

  [:type="S_array_vec4u";kind="workgroup";via_alias=false]

  [:type="S_array_vec4u";kind="workgroup";via_alias=true]

  [:type="S_array_vec4u_4";kind="comment";via_alias=false]

  [:type="S_array_vec4u_4";kind="comment";via_alias=true]

  [:type="S_array_vec4u_4";kind="handle";via_alias=false]

  [:type="S_array_vec4u_4";kind="handle";via_alias=true]

  [:type="S_array_vec4u_4";kind="private";via_alias=false]

  [:type="S_array_vec4u_4";kind="private";via_alias=true]

  [:type="S_array_vec4u_4";kind="storage_ro";via_alias=false]

  [:type="S_array_vec4u_4";kind="storage_ro";via_alias=true]

  [:type="S_array_vec4u_4";kind="storage_rw";via_alias=false]

  [:type="S_array_vec4u_4";kind="storage_rw";via_alias=true]

  [:type="S_array_vec4u_4";kind="uniform";via_alias=false]

  [:type="S_array_vec4u_4";kind="uniform";via_alias=true]

  [:type="S_array_vec4u_4";kind="workgroup";via_alias=false]

  [:type="S_array_vec4u_4";kind="workgroup";via_alias=true]

  [:type="S_bool";kind="comment";via_alias=false]

  [:type="S_bool";kind="comment";via_alias=true]

  [:type="S_bool";kind="handle";via_alias=false]

  [:type="S_bool";kind="handle";via_alias=true]

  [:type="S_bool";kind="private";via_alias=false]

  [:type="S_bool";kind="private";via_alias=true]

  [:type="S_bool";kind="storage_ro";via_alias=false]

  [:type="S_bool";kind="storage_ro";via_alias=true]

  [:type="S_bool";kind="storage_rw";via_alias=false]

  [:type="S_bool";kind="storage_rw";via_alias=true]

  [:type="S_bool";kind="uniform";via_alias=false]

  [:type="S_bool";kind="uniform";via_alias=true]

  [:type="S_bool";kind="workgroup";via_alias=false]

  [:type="S_bool";kind="workgroup";via_alias=true]

  [:type="S_u32";kind="comment";via_alias=false]

  [:type="S_u32";kind="comment";via_alias=true]

  [:type="S_u32";kind="handle";via_alias=false]

  [:type="S_u32";kind="handle";via_alias=true]

  [:type="S_u32";kind="private";via_alias=false]

  [:type="S_u32";kind="private";via_alias=true]

  [:type="S_u32";kind="storage_ro";via_alias=false]

  [:type="S_u32";kind="storage_ro";via_alias=true]

  [:type="S_u32";kind="storage_rw";via_alias=false]

  [:type="S_u32";kind="storage_rw";via_alias=true]

  [:type="S_u32";kind="uniform";via_alias=false]

  [:type="S_u32";kind="uniform";via_alias=true]

  [:type="S_u32";kind="workgroup";via_alias=false]

  [:type="S_u32";kind="workgroup";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="handle";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="handle";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="private";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="private";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_ro";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_ro";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_rw";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="storage_rw";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="uniform";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="uniform";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="workgroup";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E%3E";kind="workgroup";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="handle";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="handle";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="private";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="private";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_ro";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_ro";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_rw";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="storage_rw";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="uniform";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="uniform";via_alias=true]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="workgroup";via_alias=false]

  [:type="array%3Cvec4%3Cbool%3E,%204%3E";kind="workgroup";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="handle";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="handle";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="private";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="private";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="storage_ro";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="storage_ro";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="storage_rw";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="storage_rw";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="uniform";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="uniform";via_alias=true]

  [:type="array%3Cvec4u%3E";kind="workgroup";via_alias=false]

  [:type="array%3Cvec4u%3E";kind="workgroup";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="handle";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="handle";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="private";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="private";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="storage_ro";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="storage_ro";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="storage_rw";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="storage_rw";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="uniform";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="uniform";via_alias=true]

  [:type="array%3Cvec4u,%204%3E";kind="workgroup";via_alias=false]

  [:type="array%3Cvec4u,%204%3E";kind="workgroup";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="handle";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="handle";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="private";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="private";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_ro";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_ro";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_rw";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="storage_rw";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="uniform";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="uniform";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="workgroup";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_const%3E";kind="workgroup";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="comment";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="handle";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="handle";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="private";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="private";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_ro";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_ro";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_rw";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="storage_rw";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="uniform";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="uniform";via_alias=true]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="workgroup";via_alias=false]

  [:type="array%3Cvec4u,%20array_size_override%3E";kind="workgroup";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="comment";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="comment";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="handle";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="handle";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="private";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="private";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="storage_ro";via_alias=false]
    expected: FAIL

  [:type="atomic%3Ci32%3E";kind="storage_ro";via_alias=true]
    expected: FAIL

  [:type="atomic%3Ci32%3E";kind="storage_rw";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="storage_rw";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="uniform";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="uniform";via_alias=true]

  [:type="atomic%3Ci32%3E";kind="workgroup";via_alias=false]

  [:type="atomic%3Ci32%3E";kind="workgroup";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="comment";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="comment";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="handle";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="handle";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="private";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="private";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="storage_ro";via_alias=false]
    expected: FAIL

  [:type="atomic%3Cu32%3E";kind="storage_ro";via_alias=true]
    expected: FAIL

  [:type="atomic%3Cu32%3E";kind="storage_rw";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="storage_rw";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="uniform";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="uniform";via_alias=true]

  [:type="atomic%3Cu32%3E";kind="workgroup";via_alias=false]

  [:type="atomic%3Cu32%3E";kind="workgroup";via_alias=true]

  [:type="bool";kind="comment";via_alias=false]

  [:type="bool";kind="comment";via_alias=true]

  [:type="bool";kind="handle";via_alias=false]

  [:type="bool";kind="handle";via_alias=true]

  [:type="bool";kind="private";via_alias=false]

  [:type="bool";kind="private";via_alias=true]

  [:type="bool";kind="storage_ro";via_alias=false]

  [:type="bool";kind="storage_ro";via_alias=true]

  [:type="bool";kind="storage_rw";via_alias=false]

  [:type="bool";kind="storage_rw";via_alias=true]

  [:type="bool";kind="uniform";via_alias=false]

  [:type="bool";kind="uniform";via_alias=true]

  [:type="bool";kind="workgroup";via_alias=false]

  [:type="bool";kind="workgroup";via_alias=true]

  [:type="f16";kind="comment";via_alias=false]

  [:type="f16";kind="comment";via_alias=true]

  [:type="f16";kind="handle";via_alias=false]

  [:type="f16";kind="handle";via_alias=true]

  [:type="f16";kind="private";via_alias=false]

  [:type="f16";kind="private";via_alias=true]

  [:type="f16";kind="storage_ro";via_alias=false]

  [:type="f16";kind="storage_ro";via_alias=true]

  [:type="f16";kind="storage_rw";via_alias=false]

  [:type="f16";kind="storage_rw";via_alias=true]

  [:type="f16";kind="uniform";via_alias=false]

  [:type="f16";kind="uniform";via_alias=true]

  [:type="f16";kind="workgroup";via_alias=false]

  [:type="f16";kind="workgroup";via_alias=true]

  [:type="f32";kind="comment";via_alias=false]

  [:type="f32";kind="comment";via_alias=true]

  [:type="f32";kind="handle";via_alias=false]

  [:type="f32";kind="handle";via_alias=true]

  [:type="f32";kind="private";via_alias=false]

  [:type="f32";kind="private";via_alias=true]

  [:type="f32";kind="storage_ro";via_alias=false]

  [:type="f32";kind="storage_ro";via_alias=true]

  [:type="f32";kind="storage_rw";via_alias=false]

  [:type="f32";kind="storage_rw";via_alias=true]

  [:type="f32";kind="uniform";via_alias=false]

  [:type="f32";kind="uniform";via_alias=true]

  [:type="f32";kind="workgroup";via_alias=false]

  [:type="f32";kind="workgroup";via_alias=true]

  [:type="i32";kind="comment";via_alias=false]

  [:type="i32";kind="comment";via_alias=true]

  [:type="i32";kind="handle";via_alias=false]

  [:type="i32";kind="handle";via_alias=true]

  [:type="i32";kind="private";via_alias=false]

  [:type="i32";kind="private";via_alias=true]

  [:type="i32";kind="storage_ro";via_alias=false]

  [:type="i32";kind="storage_ro";via_alias=true]

  [:type="i32";kind="storage_rw";via_alias=false]

  [:type="i32";kind="storage_rw";via_alias=true]

  [:type="i32";kind="uniform";via_alias=false]

  [:type="i32";kind="uniform";via_alias=true]

  [:type="i32";kind="workgroup";via_alias=false]

  [:type="i32";kind="workgroup";via_alias=true]

  [:type="mat2x2f";kind="comment";via_alias=false]

  [:type="mat2x2f";kind="comment";via_alias=true]

  [:type="mat2x2f";kind="handle";via_alias=false]

  [:type="mat2x2f";kind="handle";via_alias=true]

  [:type="mat2x2f";kind="private";via_alias=false]

  [:type="mat2x2f";kind="private";via_alias=true]

  [:type="mat2x2f";kind="storage_ro";via_alias=false]

  [:type="mat2x2f";kind="storage_ro";via_alias=true]

  [:type="mat2x2f";kind="storage_rw";via_alias=false]

  [:type="mat2x2f";kind="storage_rw";via_alias=true]

  [:type="mat2x2f";kind="uniform";via_alias=false]

  [:type="mat2x2f";kind="uniform";via_alias=true]

  [:type="mat2x2f";kind="workgroup";via_alias=false]

  [:type="mat2x2f";kind="workgroup";via_alias=true]

  [:type="mat3x4h";kind="comment";via_alias=false]

  [:type="mat3x4h";kind="comment";via_alias=true]

  [:type="mat3x4h";kind="handle";via_alias=false]

  [:type="mat3x4h";kind="handle";via_alias=true]

  [:type="mat3x4h";kind="private";via_alias=false]

  [:type="mat3x4h";kind="private";via_alias=true]

  [:type="mat3x4h";kind="storage_ro";via_alias=false]

  [:type="mat3x4h";kind="storage_ro";via_alias=true]

  [:type="mat3x4h";kind="storage_rw";via_alias=false]

  [:type="mat3x4h";kind="storage_rw";via_alias=true]

  [:type="mat3x4h";kind="uniform";via_alias=false]

  [:type="mat3x4h";kind="uniform";via_alias=true]

  [:type="mat3x4h";kind="workgroup";via_alias=false]

  [:type="mat3x4h";kind="workgroup";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="comment";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="handle";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="handle";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="private";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="private";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="storage_ro";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="storage_ro";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="storage_rw";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="storage_rw";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="uniform";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="uniform";via_alias=true]

  [:type="ptr%3Cfunction,%20u32%3E";kind="workgroup";via_alias=false]

  [:type="ptr%3Cfunction,%20u32%3E";kind="workgroup";via_alias=true]

  [:type="sampler";kind="comment";via_alias=false]

  [:type="sampler";kind="comment";via_alias=true]

  [:type="sampler";kind="handle";via_alias=false]

  [:type="sampler";kind="handle";via_alias=true]

  [:type="sampler";kind="private";via_alias=false]

  [:type="sampler";kind="private";via_alias=true]

  [:type="sampler";kind="storage_ro";via_alias=false]

  [:type="sampler";kind="storage_ro";via_alias=true]

  [:type="sampler";kind="storage_rw";via_alias=false]

  [:type="sampler";kind="storage_rw";via_alias=true]

  [:type="sampler";kind="uniform";via_alias=false]

  [:type="sampler";kind="uniform";via_alias=true]

  [:type="sampler";kind="workgroup";via_alias=false]

  [:type="sampler";kind="workgroup";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="comment";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="handle";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="handle";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="private";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="private";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="storage_ro";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="storage_ro";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="storage_rw";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="storage_rw";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="uniform";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="uniform";via_alias=true]

  [:type="texture_2d%3Cf32%3E";kind="workgroup";via_alias=false]

  [:type="texture_2d%3Cf32%3E";kind="workgroup";via_alias=true]

  [:type="u32";kind="comment";via_alias=false]

  [:type="u32";kind="comment";via_alias=true]

  [:type="u32";kind="handle";via_alias=false]

  [:type="u32";kind="handle";via_alias=true]

  [:type="u32";kind="private";via_alias=false]

  [:type="u32";kind="private";via_alias=true]

  [:type="u32";kind="storage_ro";via_alias=false]

  [:type="u32";kind="storage_ro";via_alias=true]

  [:type="u32";kind="storage_rw";via_alias=false]

  [:type="u32";kind="storage_rw";via_alias=true]

  [:type="u32";kind="uniform";via_alias=false]

  [:type="u32";kind="uniform";via_alias=true]

  [:type="u32";kind="workgroup";via_alias=false]

  [:type="u32";kind="workgroup";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="comment";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="comment";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="handle";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="handle";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="private";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="private";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="storage_ro";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="storage_ro";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="storage_rw";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="storage_rw";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="uniform";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="uniform";via_alias=true]

  [:type="vec2%3Cbool%3E";kind="workgroup";via_alias=false]

  [:type="vec2%3Cbool%3E";kind="workgroup";via_alias=true]

  [:type="vec2f";kind="comment";via_alias=false]

  [:type="vec2f";kind="comment";via_alias=true]

  [:type="vec2f";kind="handle";via_alias=false]

  [:type="vec2f";kind="handle";via_alias=true]

  [:type="vec2f";kind="private";via_alias=false]

  [:type="vec2f";kind="private";via_alias=true]

  [:type="vec2f";kind="storage_ro";via_alias=false]

  [:type="vec2f";kind="storage_ro";via_alias=true]

  [:type="vec2f";kind="storage_rw";via_alias=false]

  [:type="vec2f";kind="storage_rw";via_alias=true]

  [:type="vec2f";kind="uniform";via_alias=false]

  [:type="vec2f";kind="uniform";via_alias=true]

  [:type="vec2f";kind="workgroup";via_alias=false]

  [:type="vec2f";kind="workgroup";via_alias=true]

  [:type="vec3h";kind="comment";via_alias=false]

  [:type="vec3h";kind="comment";via_alias=true]

  [:type="vec3h";kind="handle";via_alias=false]

  [:type="vec3h";kind="handle";via_alias=true]

  [:type="vec3h";kind="private";via_alias=false]

  [:type="vec3h";kind="private";via_alias=true]

  [:type="vec3h";kind="storage_ro";via_alias=false]

  [:type="vec3h";kind="storage_ro";via_alias=true]

  [:type="vec3h";kind="storage_rw";via_alias=false]

  [:type="vec3h";kind="storage_rw";via_alias=true]

  [:type="vec3h";kind="uniform";via_alias=false]

  [:type="vec3h";kind="uniform";via_alias=true]

  [:type="vec3h";kind="workgroup";via_alias=false]

  [:type="vec3h";kind="workgroup";via_alias=true]

  [:type="vec3i";kind="comment";via_alias=false]

  [:type="vec3i";kind="comment";via_alias=true]

  [:type="vec3i";kind="handle";via_alias=false]

  [:type="vec3i";kind="handle";via_alias=true]

  [:type="vec3i";kind="private";via_alias=false]

  [:type="vec3i";kind="private";via_alias=true]

  [:type="vec3i";kind="storage_ro";via_alias=false]

  [:type="vec3i";kind="storage_ro";via_alias=true]

  [:type="vec3i";kind="storage_rw";via_alias=false]

  [:type="vec3i";kind="storage_rw";via_alias=true]

  [:type="vec3i";kind="uniform";via_alias=false]

  [:type="vec3i";kind="uniform";via_alias=true]

  [:type="vec3i";kind="workgroup";via_alias=false]

  [:type="vec3i";kind="workgroup";via_alias=true]

  [:type="vec4u";kind="comment";via_alias=false]

  [:type="vec4u";kind="comment";via_alias=true]

  [:type="vec4u";kind="handle";via_alias=false]

  [:type="vec4u";kind="handle";via_alias=true]

  [:type="vec4u";kind="private";via_alias=false]

  [:type="vec4u";kind="private";via_alias=true]

  [:type="vec4u";kind="storage_ro";via_alias=false]

  [:type="vec4u";kind="storage_ro";via_alias=true]

  [:type="vec4u";kind="storage_rw";via_alias=false]

  [:type="vec4u";kind="storage_rw";via_alias=true]

  [:type="vec4u";kind="uniform";via_alias=false]

  [:type="vec4u";kind="uniform";via_alias=true]

  [:type="vec4u";kind="workgroup";via_alias=false]

  [:type="vec4u";kind="workgroup";via_alias=true]


[cts.https.html?q=webgpu:shader,validation,decl,var:read_access:*]
  implementation-status: backlog
  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="";stage="compute"]

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]
    expected: FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]
    expected: FAIL

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]


[cts.https.html?q=webgpu:shader,validation,decl,var:shader_stage:*]
  implementation-status: backlog
  [:stage="compute";kind="function"]

  [:stage="compute";kind="handle_ro"]

  [:stage="compute";kind="handle_rw"]

  [:stage="compute";kind="handle_wo"]

  [:stage="compute";kind="private"]

  [:stage="compute";kind="storage_ro"]

  [:stage="compute";kind="storage_rw"]

  [:stage="compute";kind="uniform"]

  [:stage="compute";kind="workgroup"]

  [:stage="fragment";kind="function"]

  [:stage="fragment";kind="handle_ro"]

  [:stage="fragment";kind="handle_rw"]

  [:stage="fragment";kind="handle_wo"]

  [:stage="fragment";kind="private"]

  [:stage="fragment";kind="storage_ro"]

  [:stage="fragment";kind="storage_rw"]

  [:stage="fragment";kind="uniform"]

  [:stage="fragment";kind="workgroup"]
    expected: FAIL

  [:stage="vertex";kind="function"]

  [:stage="vertex";kind="handle_ro"]

  [:stage="vertex";kind="handle_rw"]
    expected: FAIL

  [:stage="vertex";kind="handle_wo"]
    expected: FAIL

  [:stage="vertex";kind="private"]

  [:stage="vertex";kind="storage_ro"]

  [:stage="vertex";kind="storage_rw"]
    expected: FAIL

  [:stage="vertex";kind="uniform"]

  [:stage="vertex";kind="workgroup"]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,decl,var:var_access_mode_bad_other_template_contents:*]
  implementation-status: backlog
  [:accessMode="read";prefix="";suffix=""]

  [:accessMode="read";prefix="";suffix=","]

  [:accessMode="read";prefix="";suffix=",read"]

  [:accessMode="read";prefix="";suffix=",storage"]

  [:accessMode="read";prefix=",";suffix=""]

  [:accessMode="read";prefix=",";suffix=","]

  [:accessMode="read";prefix=",";suffix=",read"]

  [:accessMode="read";prefix=",";suffix=",storage"]

  [:accessMode="read";prefix="storage,";suffix=""]

  [:accessMode="read";prefix="storage,";suffix=","]
    expected: FAIL

  [:accessMode="read";prefix="storage,";suffix=",read"]

  [:accessMode="read";prefix="storage,";suffix=",storage"]

  [:accessMode="read_write";prefix="";suffix=""]

  [:accessMode="read_write";prefix="";suffix=","]

  [:accessMode="read_write";prefix="";suffix=",read"]

  [:accessMode="read_write";prefix="";suffix=",storage"]

  [:accessMode="read_write";prefix=",";suffix=""]

  [:accessMode="read_write";prefix=",";suffix=","]

  [:accessMode="read_write";prefix=",";suffix=",read"]

  [:accessMode="read_write";prefix=",";suffix=",storage"]

  [:accessMode="read_write";prefix="storage,";suffix=""]

  [:accessMode="read_write";prefix="storage,";suffix=","]
    expected: FAIL

  [:accessMode="read_write";prefix="storage,";suffix=",read"]

  [:accessMode="read_write";prefix="storage,";suffix=",storage"]


[cts.https.html?q=webgpu:shader,validation,decl,var:var_access_mode_bad_template_delim:*]
  [:accessMode="read";prefix="";suffix=""]

  [:accessMode="read";prefix="";suffix="%3C"]

  [:accessMode="read";prefix="";suffix="%3E"]

  [:accessMode="read";prefix="";suffix=","]

  [:accessMode="read";prefix="%3C";suffix=""]

  [:accessMode="read";prefix="%3C";suffix="%3C"]

  [:accessMode="read";prefix="%3C";suffix="%3E"]

  [:accessMode="read";prefix="%3C";suffix=","]

  [:accessMode="read";prefix="%3E";suffix=""]

  [:accessMode="read";prefix="%3E";suffix="%3C"]

  [:accessMode="read";prefix="%3E";suffix="%3E"]

  [:accessMode="read";prefix="%3E";suffix=","]

  [:accessMode="read";prefix=",";suffix=""]

  [:accessMode="read";prefix=",";suffix="%3C"]

  [:accessMode="read";prefix=",";suffix="%3E"]

  [:accessMode="read";prefix=",";suffix=","]

  [:accessMode="read_write";prefix="";suffix=""]

  [:accessMode="read_write";prefix="";suffix="%3C"]

  [:accessMode="read_write";prefix="";suffix="%3E"]

  [:accessMode="read_write";prefix="";suffix=","]

  [:accessMode="read_write";prefix="%3C";suffix=""]

  [:accessMode="read_write";prefix="%3C";suffix="%3C"]

  [:accessMode="read_write";prefix="%3C";suffix="%3E"]

  [:accessMode="read_write";prefix="%3C";suffix=","]

  [:accessMode="read_write";prefix="%3E";suffix=""]

  [:accessMode="read_write";prefix="%3E";suffix="%3C"]

  [:accessMode="read_write";prefix="%3E";suffix="%3E"]

  [:accessMode="read_write";prefix="%3E";suffix=","]

  [:accessMode="read_write";prefix=",";suffix=""]

  [:accessMode="read_write";prefix=",";suffix="%3C"]

  [:accessMode="read_write";prefix=",";suffix="%3E"]

  [:accessMode="read_write";prefix=",";suffix=","]


[cts.https.html?q=webgpu:shader,validation,decl,var:write_access:*]
  implementation-status: backlog
  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="";stage="compute"]

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]
    expected: FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]
    expected: FAIL

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute"]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute"]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute"]
