[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,refract:args:*]
  implementation-status: backlog
  [:arg="bad_0args"]

  [:arg="bad_0array"]

  [:arg="bad_0bool"]

  [:arg="bad_0f16"]

  [:arg="bad_0f32"]

  [:arg="bad_0int"]

  [:arg="bad_0struct"]

  [:arg="bad_0uint"]

  [:arg="bad_0veci"]

  [:arg="bad_0vecu"]

  [:arg="bad_1arg"]

  [:arg="bad_1array"]

  [:arg="bad_1bool"]

  [:arg="bad_1f16"]

  [:arg="bad_1f32"]

  [:arg="bad_1int"]

  [:arg="bad_1struct"]

  [:arg="bad_1uint"]

  [:arg="bad_1veci"]

  [:arg="bad_1vecu"]

  [:arg="bad_2arg"]

  [:arg="bad_2array"]

  [:arg="bad_2bool"]

  [:arg="bad_2int"]

  [:arg="bad_2struct"]

  [:arg="bad_2uint"]

  [:arg="bad_2vecf"]

  [:arg="bad_2vech"]

  [:arg="bad_2veci"]

  [:arg="bad_2vecu"]

  [:arg="bad_3arg"]

  [:arg="bad_no_parens"]

  [:arg="bad_vec2_vec3"]

  [:arg="bad_vec3_vec4"]

  [:arg="bad_vec4_vec2"]

  [:arg="vec2f"]
    expected: FAIL

  [:arg="vec3f"]
    expected: FAIL

  [:arg="vec4f"]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,refract:must_use:*]
  implementation-status: backlog
  [:arg="vec2f";use=false]
    expected: FAIL

  [:arg="vec2f";use=true]

  [:arg="vec3f";use=false]
    expected: FAIL

  [:arg="vec3f";use=true]

  [:arg="vec4f";use=false]
    expected: FAIL

  [:arg="vec4f";use=true]


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,refract:return:*]
  implementation-status: backlog
  [:arg="vec2f";returnType="bool"]

  [:arg="vec2f";returnType="f32"]

  [:arg="vec2f";returnType="i32"]

  [:arg="vec2f";returnType="u32"]

  [:arg="vec2f";returnType="vec2f"]
    expected: FAIL

  [:arg="vec2f";returnType="vec3f"]

  [:arg="vec2f";returnType="vec3i"]

  [:arg="vec2f";returnType="vec3u"]

  [:arg="vec2f";returnType="vec4f"]

  [:arg="vec3f";returnType="bool"]

  [:arg="vec3f";returnType="f32"]

  [:arg="vec3f";returnType="i32"]

  [:arg="vec3f";returnType="u32"]

  [:arg="vec3f";returnType="vec2f"]

  [:arg="vec3f";returnType="vec3f"]
    expected: FAIL

  [:arg="vec3f";returnType="vec3i"]

  [:arg="vec3f";returnType="vec3u"]

  [:arg="vec3f";returnType="vec4f"]

  [:arg="vec4f";returnType="bool"]

  [:arg="vec4f";returnType="f32"]

  [:arg="vec4f";returnType="i32"]

  [:arg="vec4f";returnType="u32"]

  [:arg="vec4f";returnType="vec2f"]

  [:arg="vec4f";returnType="vec3f"]

  [:arg="vec4f";returnType="vec3i"]

  [:arg="vec4f";returnType="vec3u"]

  [:arg="vec4f";returnType="vec4f"]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,expression,call,builtin,refract:values:*]
  implementation-status: backlog
  [:stage="constant";type="vec2%3Cabstract-float%3E"]
    expected: FAIL

  [:stage="constant";type="vec2%3Cabstract-int%3E"]
    expected: FAIL

  [:stage="constant";type="vec2%3Cf16%3E"]
    expected:
      if os == "mac": FAIL

  [:stage="constant";type="vec2%3Cf32%3E"]
    expected: FAIL

  [:stage="constant";type="vec3%3Cabstract-float%3E"]
    expected: FAIL

  [:stage="constant";type="vec3%3Cabstract-int%3E"]
    expected: FAIL

  [:stage="constant";type="vec3%3Cf16%3E"]
    expected:
      if os == "mac": FAIL

  [:stage="constant";type="vec3%3Cf32%3E"]
    expected: FAIL

  [:stage="constant";type="vec4%3Cabstract-float%3E"]
    expected: FAIL

  [:stage="constant";type="vec4%3Cabstract-int%3E"]
    expected: FAIL

  [:stage="constant";type="vec4%3Cf16%3E"]
    expected:
      if os == "mac": FAIL

  [:stage="constant";type="vec4%3Cf32%3E"]
    expected: FAIL

  [:stage="override";type="vec2%3Cf16%3E"]
    expected:
      if os == "mac": FAIL

  [:stage="override";type="vec2%3Cf32%3E"]
    expected: FAIL

  [:stage="override";type="vec3%3Cf16%3E"]
    expected:
      if os == "mac": FAIL

  [:stage="override";type="vec3%3Cf32%3E"]
    expected: FAIL

  [:stage="override";type="vec4%3Cf16%3E"]
    expected:
      if os == "mac": FAIL

  [:stage="override";type="vec4%3Cf32%3E"]
    expected: FAIL
