[cts.https.html?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:basic:*]
  implementation-status: backlog
  [:addressSpace="function";accessMode="read";storageType="bool";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read";storageType="bool";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="function";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";accessMode="read";storageType="f16";derefType="deref_pointer"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read";storageType="f32";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="function";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read";storageType="i32";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="function";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read";storageType="u32";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="bool";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="bool";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";accessMode="read_write";storageType="f16";derefType="deref_pointer"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="f32";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="i32";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]
    expected: FAIL

  [:addressSpace="function";accessMode="read_write";storageType="u32";derefType="deref_pointer"]
    expected: FAIL

  [:addressSpace="private";accessMode="read";storageType="bool";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read";storageType="bool";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read";storageType="u32";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read_write";storageType="bool";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read_write";storageType="bool";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read_write";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read_write";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read_write";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="private";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="private";accessMode="read_write";storageType="u32";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read";storageType="u32";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read_write";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read_write";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read_write";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="storage";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="storage";accessMode="read_write";storageType="u32";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read";storageType="u32";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read_write";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read_write";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read_write";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="uniform";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="uniform";accessMode="read_write";storageType="u32";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read";storageType="u32";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="f16";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="f16";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="f32";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="f32";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="i32";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="i32";derefType="deref_pointer"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="u32";derefType="deref_address_of_identifier"]

  [:addressSpace="workgroup";accessMode="read_write";storageType="u32";derefType="deref_pointer"]


[cts.https.html?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:composite:*]
  implementation-status: backlog
  [:addressSpace="function";compositeType="array";storageType="bool"]
    expected: FAIL

  [:addressSpace="function";compositeType="array";storageType="f16"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";compositeType="array";storageType="f32"]
    expected: FAIL

  [:addressSpace="function";compositeType="array";storageType="i32"]
    expected: FAIL

  [:addressSpace="function";compositeType="array";storageType="u32"]
    expected: FAIL

  [:addressSpace="function";compositeType="mat";storageType="f16"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";compositeType="mat";storageType="f32"]
    expected: FAIL

  [:addressSpace="function";compositeType="struct";storageType="bool"]
    expected: FAIL

  [:addressSpace="function";compositeType="struct";storageType="f16"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";compositeType="struct";storageType="f32"]
    expected: FAIL

  [:addressSpace="function";compositeType="struct";storageType="i32"]
    expected: FAIL

  [:addressSpace="function";compositeType="struct";storageType="u32"]
    expected: FAIL

  [:addressSpace="function";compositeType="vec";storageType="bool"]
    expected: FAIL

  [:addressSpace="function";compositeType="vec";storageType="f16"]
    expected:
      if os == "mac": FAIL

  [:addressSpace="function";compositeType="vec";storageType="f32"]
    expected: FAIL

  [:addressSpace="function";compositeType="vec";storageType="i32"]
    expected: FAIL

  [:addressSpace="function";compositeType="vec";storageType="u32"]
    expected: FAIL

  [:addressSpace="private";compositeType="array";storageType="bool"]

  [:addressSpace="private";compositeType="array";storageType="f16"]

  [:addressSpace="private";compositeType="array";storageType="f32"]

  [:addressSpace="private";compositeType="array";storageType="i32"]

  [:addressSpace="private";compositeType="array";storageType="u32"]

  [:addressSpace="private";compositeType="mat";storageType="f16"]

  [:addressSpace="private";compositeType="mat";storageType="f32"]

  [:addressSpace="private";compositeType="struct";storageType="bool"]

  [:addressSpace="private";compositeType="struct";storageType="f16"]

  [:addressSpace="private";compositeType="struct";storageType="f32"]

  [:addressSpace="private";compositeType="struct";storageType="i32"]

  [:addressSpace="private";compositeType="struct";storageType="u32"]

  [:addressSpace="private";compositeType="vec";storageType="bool"]

  [:addressSpace="private";compositeType="vec";storageType="f16"]

  [:addressSpace="private";compositeType="vec";storageType="f32"]

  [:addressSpace="private";compositeType="vec";storageType="i32"]

  [:addressSpace="private";compositeType="vec";storageType="u32"]

  [:addressSpace="storage";compositeType="array";storageType="f16"]

  [:addressSpace="storage";compositeType="array";storageType="f32"]

  [:addressSpace="storage";compositeType="array";storageType="i32"]

  [:addressSpace="storage";compositeType="array";storageType="u32"]

  [:addressSpace="storage";compositeType="mat";storageType="f16"]

  [:addressSpace="storage";compositeType="mat";storageType="f32"]

  [:addressSpace="storage";compositeType="struct";storageType="f16"]

  [:addressSpace="storage";compositeType="struct";storageType="f32"]

  [:addressSpace="storage";compositeType="struct";storageType="i32"]

  [:addressSpace="storage";compositeType="struct";storageType="u32"]

  [:addressSpace="storage";compositeType="vec";storageType="f16"]

  [:addressSpace="storage";compositeType="vec";storageType="f32"]

  [:addressSpace="storage";compositeType="vec";storageType="i32"]

  [:addressSpace="storage";compositeType="vec";storageType="u32"]

  [:addressSpace="uniform";compositeType="array";storageType="f16"]

  [:addressSpace="uniform";compositeType="array";storageType="f32"]

  [:addressSpace="uniform";compositeType="array";storageType="i32"]

  [:addressSpace="uniform";compositeType="array";storageType="u32"]

  [:addressSpace="uniform";compositeType="mat";storageType="f16"]

  [:addressSpace="uniform";compositeType="mat";storageType="f32"]

  [:addressSpace="uniform";compositeType="struct";storageType="f16"]

  [:addressSpace="uniform";compositeType="struct";storageType="f32"]

  [:addressSpace="uniform";compositeType="struct";storageType="i32"]

  [:addressSpace="uniform";compositeType="struct";storageType="u32"]

  [:addressSpace="uniform";compositeType="vec";storageType="f16"]

  [:addressSpace="uniform";compositeType="vec";storageType="f32"]

  [:addressSpace="uniform";compositeType="vec";storageType="i32"]

  [:addressSpace="uniform";compositeType="vec";storageType="u32"]

  [:addressSpace="workgroup";compositeType="array";storageType="f16"]

  [:addressSpace="workgroup";compositeType="array";storageType="f32"]

  [:addressSpace="workgroup";compositeType="array";storageType="i32"]

  [:addressSpace="workgroup";compositeType="array";storageType="u32"]

  [:addressSpace="workgroup";compositeType="mat";storageType="f16"]

  [:addressSpace="workgroup";compositeType="mat";storageType="f32"]

  [:addressSpace="workgroup";compositeType="struct";storageType="f16"]

  [:addressSpace="workgroup";compositeType="struct";storageType="f32"]

  [:addressSpace="workgroup";compositeType="struct";storageType="i32"]

  [:addressSpace="workgroup";compositeType="struct";storageType="u32"]

  [:addressSpace="workgroup";compositeType="vec";storageType="f16"]

  [:addressSpace="workgroup";compositeType="vec";storageType="f32"]

  [:addressSpace="workgroup";compositeType="vec";storageType="i32"]

  [:addressSpace="workgroup";compositeType="vec";storageType="u32"]


[cts.https.html?q=webgpu:shader,validation,expression,unary,address_of_and_indirection:invalid:*]
  [:case="address_of_function"]

  [:case="address_of_let"]

  [:case="address_of_matrix_elem"]

  [:case="address_of_sampler"]

  [:case="address_of_texture"]

  [:case="address_of_vector_elem_via_index"]

  [:case="address_of_vector_elem_via_member"]

  [:case="deref_non_pointer"]
