[cts.https.html?q=webgpu:shader,validation,decl,ptr_spelling:let_ptr_explicit_type_matches_var:*]
  implementation-status: backlog
  expected:
    if os == "win" and not debug: [OK, TIMEOUT]
  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

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

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

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

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="storage";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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


[cts.https.html?q=webgpu:shader,validation,decl,ptr_spelling:let_ptr_reads:*]
  implementation-status: backlog
  expected:
    if os == "win" and not debug: [OK, TIMEOUT]
  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="uniform";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]


[cts.https.html?q=webgpu:shader,validation,decl,ptr_spelling:let_ptr_writes:*]
  implementation-status: backlog
  expected:
    if os == "win" and not debug: [OK, TIMEOUT]
  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=false;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=false;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="function";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="private";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="private";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

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

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read";stage="compute";inferPtrType=false;ptrStoreType="i32"]

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

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="storage";explicitSpace=true;explicitAccess=true;accessMode="read_write";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

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

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

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

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

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=false;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=false;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:addressSpace="workgroup";explicitSpace=true;explicitAccess=true;accessMode="";stage="compute";inferPtrType=true;ptrStoreType="i32"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]


[cts.https.html?q=webgpu:shader,validation,decl,ptr_spelling:ptr_address_space_never_uses_access_mode:*]
  expected:
    if os == "win" and not debug: [OK, TIMEOUT]
  [:addressSpace="function";accessMode="read"]

  [:addressSpace="function";accessMode="read_write"]

  [:addressSpace="function";accessMode="write"]

  [:addressSpace="handle";accessMode="read"]

  [:addressSpace="handle";accessMode="read_write"]

  [:addressSpace="handle";accessMode="write"]

  [:addressSpace="private";accessMode="read"]

  [:addressSpace="private";accessMode="read_write"]

  [:addressSpace="private";accessMode="write"]

  [:addressSpace="uniform";accessMode="read"]

  [:addressSpace="uniform";accessMode="read_write"]

  [:addressSpace="uniform";accessMode="write"]

  [:addressSpace="workgroup";accessMode="read"]

  [:addressSpace="workgroup";accessMode="read_write"]

  [:addressSpace="workgroup";accessMode="write"]


[cts.https.html?q=webgpu:shader,validation,decl,ptr_spelling:ptr_bad_store_type:*]
  expected:
    if os == "win" and not debug: [OK, TIMEOUT]
  [:storeType="1"]

  [:storeType="clamp"]

  [:storeType="undeclared"]


[cts.https.html?q=webgpu:shader,validation,decl,ptr_spelling:ptr_handle_space_invalid:*]
  expected:
    if os == "win" and not debug: [OK, TIMEOUT]
  [:]


[cts.https.html?q=webgpu:shader,validation,decl,ptr_spelling:ptr_not_instantiable:*]
  implementation-status: backlog
  expected:
    if os == "win" and not debug: [OK, TIMEOUT]
  [:case="RTArrayNotLast"]

  [:case="functionAtomic"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:case="functionRTArray"]

  [:case="nestedRTArray"]

  [:case="privateAtomic"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:case="privateRTArray"]

  [:case="ptr"]

  [:case="uniformAtomic"]
    expected:
      if os == "win" and debug: FAIL
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux": FAIL
      if os == "mac": FAIL

  [:case="uniformRTArray"]

  [:case="workgroupRTArray"]
