[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:duplicates:*]
  [:first="p1";second="p2"]

  [:first="p1";second="rb"]

  [:first="p1";second="s1b"]

  [:first="p1";second="s2b"]

  [:first="ra";second="p2"]

  [:first="ra";second="rb"]

  [:first="ra";second="s1b"]

  [:first="ra";second="s2b"]

  [:first="s1a";second="p2"]

  [:first="s1a";second="rb"]

  [:first="s1a";second="s1b"]

  [:first="s1a";second="s2b"]

  [:first="s2a";second="p2"]

  [:first="s2a";second="rb"]

  [:first="s2a";second="s1b"]

  [:first="s2a";second="s2b"]


[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:missing_vertex_position:*]
  [:use_struct=false;attribute="%40builtin(position)"]

  [:use_struct=false;attribute="%40location(0)"]

  [:use_struct=true;attribute="%40builtin(position)"]

  [:use_struct=true;attribute="%40location(0)"]


[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:nesting:*]
  [:target_stage="";target_io="in"]

  [:target_stage="";target_io="out"]

  [:target_stage="fragment";target_io="in"]

  [:target_stage="fragment";target_io="out"]


[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:reuse_builtin_name:*]
  [:name="frag_depth";stage="fragment";io="out";type="f32";use="alias"]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use="function"]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use="function-var"]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use="module-var"]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use="struct"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use="alias"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use="function"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use="function-var"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use="module-var"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use="struct"]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="alias"]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="function"]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="function-var"]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="module-var"]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="struct"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use="alias"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use="function"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use="function-var"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use="module-var"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use="struct"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="alias"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="function"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="function-var"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="module-var"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="struct"]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use="alias"]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use="function"]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use="function-var"]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use="module-var"]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use="struct"]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use="alias"]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use="function"]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use="function-var"]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use="module-var"]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use="struct"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use="alias"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use="function"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use="function-var"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use="module-var"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use="struct"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use="alias"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use="function"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use="function-var"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use="module-var"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use="struct"]

  [:name="sample_index";stage="fragment";io="in";type="u32";use="alias"]

  [:name="sample_index";stage="fragment";io="in";type="u32";use="function"]

  [:name="sample_index";stage="fragment";io="in";type="u32";use="function-var"]

  [:name="sample_index";stage="fragment";io="in";type="u32";use="module-var"]

  [:name="sample_index";stage="fragment";io="in";type="u32";use="struct"]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use="alias"]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use="function"]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use="function-var"]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use="module-var"]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use="struct"]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use="alias"]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use="function"]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use="function-var"]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use="module-var"]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use="struct"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use="alias"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use="function"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use="function-var"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use="module-var"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use="struct"]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="alias"]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="function"]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="function-var"]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="module-var"]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use="struct"]


[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:stage_inout:*]
  implementation-status: backlog
  expected: TIMEOUT
  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="compute";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="compute";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="fragment";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="fragment";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="vertex";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_stage="vertex";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="";target_io="in"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="";target_io="out"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="compute";target_io="in"]
    expected:
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="compute";target_io="out"]
    expected:
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="fragment";target_io="in"]
    expected:
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="fragment";target_io="out"]
    expected:
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="vertex";target_io="in"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_stage="vertex";target_io="out"]
    expected:
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="";target_io="in"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="";target_io="out"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="compute";target_io="in"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="compute";target_io="out"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="fragment";target_io="in"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="fragment";target_io="out"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="vertex";target_io="in"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_stage="vertex";target_io="out"]
    expected:
      if os == "mac": [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="";target_io="in"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="";target_io="out"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="compute";target_io="in"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="compute";target_io="out"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="fragment";target_io="in"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="fragment";target_io="out"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="vertex";target_io="in"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_stage="vertex";target_io="out"]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
    expected:
      if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and debug: [TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
    expected:
      if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
    expected:
      if os == "win" and debug: [TIMEOUT, NOTRUN]
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
    expected:
      if os == "win" and debug: [TIMEOUT, NOTRUN]
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
    expected:
      if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
    expected:
      if os == "win" and debug: [TIMEOUT, NOTRUN]
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
    expected:
      if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
    expected:
      if os == "win" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
    expected:
      if os == "linux": [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="";target_io="out"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="compute";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="compute";target_io="out"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="fragment";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="fragment";target_io="out"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="vertex";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_stage="vertex";target_io="out"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="";target_io="out"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="compute";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="compute";target_io="out"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="fragment";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="fragment";target_io="out"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="vertex";target_io="in"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_stage="vertex";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="compute";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="compute";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="fragment";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="fragment";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="vertex";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_stage="vertex";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="compute";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="compute";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="fragment";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="fragment";target_io="out"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="vertex";target_io="in"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_stage="vertex";target_io="out"]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="";target_io="out"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="compute";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="compute";target_io="out"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="fragment";target_io="out"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_stage="vertex";target_io="out"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="";target_io="out"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="compute";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="compute";target_io="out"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="fragment";target_io="out"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="in"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_stage="vertex";target_io="out"]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="in"]
    expected:
      if os == "win" and debug: [TIMEOUT, NOTRUN]
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux": [TIMEOUT, NOTRUN]
      if os == "mac": [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="compute";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="fragment";target_io="out"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="in"]
    expected: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_stage="vertex";target_io="out"]
    expected: [TIMEOUT, NOTRUN]


[cts.https.html?q=webgpu:shader,validation,shader_io,builtins:type:*]
  implementation-status: backlog
  expected:
    if os == "linux" and debug: [OK, TIMEOUT]
  [:name="frag_depth";stage="fragment";io="out";type="f32"]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="MyStruct"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="bool"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="f32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="i32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="u32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="MyStruct"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="bool"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="f32"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="i32"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="u32"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="frag_depth";stage="fragment";io="out";type="f32";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="MyStruct"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="bool"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="f32"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="i32"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat2x2%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat2x3%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat2x4%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat3x2%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat3x3%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat3x4%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [PASS, TIMEOUT, NOTRUN]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="u32"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec2%3Cbool%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec2%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec2%3Ci32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec2%3Cu32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec3%3Cbool%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec3%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec3%3Ci32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec3%3Cu32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec4%3Cbool%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec4%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec4%3Ci32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=false;target_type="vec4%3Cu32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="MyStruct"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="array%3Cbool,4%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="array%3Cf32,4%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="array%3Ci32,4%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="array%3Cu32,4%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="atomic%3Ci32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="atomic%3Cu32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="bool"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="f32"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="i32"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat2x2%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat2x3%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat2x4%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat3x2%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat3x3%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat3x4%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat4x2%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat4x3%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="mat4x4%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="u32"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec2%3Cbool%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec2%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec2%3Ci32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec2%3Cu32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec3%3Cbool%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec3%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec3%3Ci32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec3%3Cu32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec4%3Cbool%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec4%3Cf32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec4%3Ci32%3E"]

  [:name="front_facing";stage="fragment";io="in";type="bool";use_struct=true;target_type="vec4%3Cu32%3E"]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="bool"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="f32"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="i32"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="u32"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="MyStruct"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="bool"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="f32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="i32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="u32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="global_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="instance_index";stage="vertex";io="in";type="u32"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="MyStruct"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cf32,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Ci32,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cu32,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="atomic%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="atomic%3Cu32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="bool"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="f32"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="i32"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat2x2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat2x3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat2x4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat3x2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat3x3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat3x4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat4x2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat4x3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat4x4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="u32"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Cbool%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Cu32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Cbool%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Cu32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Cbool%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Cu32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="MyStruct"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Cbool,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Cf32,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Ci32,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Cu32,4%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="atomic%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="atomic%3Cu32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="bool"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="f32"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="i32"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat2x2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat2x3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat2x4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat3x2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat3x3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat3x4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat4x2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat4x3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat4x4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="u32"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Cbool%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Cu32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Cbool%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Cu32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cbool%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cf32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Ci32%3E"]

  [:name="instance_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E"]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="bool"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="f32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="i32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="u32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="MyStruct"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="bool"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="f32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="i32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="u32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="MyStruct"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="bool"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="f32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="i32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="u32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="MyStruct"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="bool"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="f32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="i32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="u32"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="local_invocation_index";stage="compute";io="in";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="num_workgroups";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="MyStruct"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cf32,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Ci32,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cu32,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="atomic%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="atomic%3Cu32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="bool"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="f32"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="i32"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat2x2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat2x3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat2x4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat3x2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat3x3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat3x4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat4x2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat4x3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="mat4x4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="u32"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Cbool%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Cu32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Cbool%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Cu32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Cbool%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Cu32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="MyStruct"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Cbool,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Cf32,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Ci32,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Cu32,4%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="atomic%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="atomic%3Cu32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="bool"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="f32"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="i32"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat2x2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat2x3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat2x4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat3x2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat3x3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat3x4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat4x2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat4x3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="mat4x4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="u32"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Cbool%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Cu32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Cbool%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Cu32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cbool%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cf32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Ci32%3E"]

  [:name="position";stage="fragment";io="in";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="MyStruct"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cf32,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Ci32,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="array%3Cu32,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="atomic%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="atomic%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="bool"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="f32"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="i32"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat2x2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat2x3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat2x4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat3x2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat3x3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat3x4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat4x2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat4x3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="mat4x4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="u32"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Cbool%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec2%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Cbool%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec3%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Cbool%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=false;target_type="vec4%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="MyStruct"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Cbool,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Cf32,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Ci32,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="array%3Cu32,4%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="atomic%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="atomic%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="bool"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="f32"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="i32"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat2x2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat2x3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat2x4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat3x2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat3x3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat3x4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat4x2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat4x3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="mat4x4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="u32"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Cbool%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec2%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Cbool%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec3%3Cu32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cbool%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cf32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Ci32%3E"]

  [:name="position";stage="vertex";io="out";type="vec4%3Cf32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]

  [:name="sample_index";stage="fragment";io="in";type="u32"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_index";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="in";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="sample_mask";stage="fragment";io="out";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="vertex_index";stage="vertex";io="in";type="u32"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="MyStruct"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cbool,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cf32,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Ci32,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="array%3Cu32,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="atomic%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="atomic%3Cu32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="bool"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="f32"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="i32"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat2x2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat2x3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat2x4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat3x2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat3x3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat3x4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat4x2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat4x3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="mat4x4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="u32"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Cbool%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec2%3Cu32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Cbool%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec3%3Cu32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Cbool%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=false;target_type="vec4%3Cu32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="MyStruct"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Cbool,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Cf32,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Ci32,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="array%3Cu32,4%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="atomic%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="atomic%3Cu32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="bool"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="f32"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="i32"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat2x2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat2x3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat2x4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat3x2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat3x3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat3x4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat4x2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat4x3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="mat4x4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="u32"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Cbool%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec2%3Cu32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Cbool%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec3%3Cu32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cbool%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cf32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Ci32%3E"]

  [:name="vertex_index";stage="vertex";io="in";type="u32";use_struct=true;target_type="vec4%3Cu32%3E"]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E"]
    expected:
      if os == "linux" and debug: [PASS, TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="bool"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="f32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="i32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat2x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="u32"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec2%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec3%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cbool%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=false;target_type="vec4%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="MyStruct"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cbool,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cf32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Ci32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="array%3Cu32,4%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Ci32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="atomic%3Cu32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="bool"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="f32"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="i32"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x2%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x3%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [PASS, FAIL, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat2x4%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x2%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x3%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat3x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x2%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x3%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="mat4x4%3Cf32%3E"]
    expected:
      if not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="u32"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cbool%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Ci32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec2%3Cu32%3E"]
    expected:
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cbool%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Ci32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec3%3Cu32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cbool%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cf32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Ci32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]

  [:name="workgroup_id";stage="compute";io="in";type="vec3%3Cu32%3E";use_struct=true;target_type="vec4%3Cu32%3E"]
    expected:
      if os == "win" and not debug: [PASS, TIMEOUT, NOTRUN]
      if os == "linux" and not debug: [FAIL, TIMEOUT, NOTRUN]
      if os == "mac" and not debug: [TIMEOUT, NOTRUN]
