<dawn>/test/tint/diagnostic_filtering/switch_body_attribute.wgsl:5:11 warning: 'dpdx' must only be called from uniform control flow
      _ = dpdx(1.0);
          ^^^^^^^^^

<dawn>/test/tint/diagnostic_filtering/switch_body_attribute.wgsl:3:3 note: control flow depends on possibly non-uniform value
  switch (i32(x)) @diagnostic(warning, derivative_uniformity) {
  ^^^^^^

<dawn>/test/tint/diagnostic_filtering/switch_body_attribute.wgsl:3:15 note: user-defined input 'x' of 'main' may be non-uniform
  switch (i32(x)) @diagnostic(warning, derivative_uniformity) {
              ^

#include <metal_stdlib>

using namespace metal;
int tint_ftoi(float v) {
  return select(2147483647, select(int(v), (-2147483647 - 1), (v < -2147483648.0f)), (v < 2147483520.0f));
}

struct tint_symbol_2 {
  float x [[user(locn0)]];
};

void tint_symbol_inner(float x) {
  switch(tint_ftoi(x)) {
    default: {
      float const tint_phony = dfdx(1.0f);
      break;
    }
  }
}

fragment void tint_symbol(tint_symbol_2 tint_symbol_1 [[stage_in]]) {
  tint_symbol_inner(tint_symbol_1.x);
  return;
}

