[cts.https.html?q=webgpu:shader,validation,expression,unary,logical_negation:invalid_types:*]
  implementation-status: backlog
  [:type="array";control=false]

  [:type="array";control=true]

  [:type="atomic";control=false]

  [:type="atomic";control=true]

  [:type="mat2x2f";control=false]

  [:type="mat2x2f";control=true]

  [:type="ptr";control=false]

  [:type="ptr";control=true]

  [:type="sampler";control=false]

  [:type="sampler";control=true]
    expected: FAIL

  [:type="struct";control=false]

  [:type="struct";control=true]

  [:type="texture";control=false]

  [:type="texture";control=true]
    expected: FAIL


[cts.https.html?q=webgpu:shader,validation,expression,unary,logical_negation:parse:*]
  [:stmt="not_bool_expr"]

  [:stmt="not_bool_literal"]

  [:stmt="not_int_expr"]

  [:stmt="not_int_literal"]

  [:stmt="not_not_bool_expr"]

  [:stmt="not_not_bool_literal"]


[cts.https.html?q=webgpu:shader,validation,expression,unary,logical_negation:scalar_vector:*]
  [:type="abstract-float"]

  [:type="abstract-int"]

  [:type="bool"]

  [:type="f16"]

  [:type="f32"]

  [:type="i32"]

  [:type="u32"]

  [:type="vec2%3Cabstract-float%3E"]

  [:type="vec2%3Cabstract-int%3E"]

  [:type="vec2%3Cbool%3E"]

  [:type="vec2%3Cf16%3E"]

  [:type="vec2%3Cf32%3E"]

  [:type="vec2%3Ci32%3E"]

  [:type="vec2%3Cu32%3E"]

  [:type="vec3%3Cabstract-float%3E"]

  [:type="vec3%3Cabstract-int%3E"]

  [:type="vec3%3Cbool%3E"]

  [:type="vec3%3Cf16%3E"]

  [:type="vec3%3Cf32%3E"]

  [:type="vec3%3Ci32%3E"]

  [:type="vec3%3Cu32%3E"]

  [:type="vec4%3Cabstract-float%3E"]

  [:type="vec4%3Cabstract-int%3E"]

  [:type="vec4%3Cbool%3E"]

  [:type="vec4%3Cf16%3E"]

  [:type="vec4%3Cf32%3E"]

  [:type="vec4%3Ci32%3E"]

  [:type="vec4%3Cu32%3E"]
