SKIP: FAILED

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

<dawn>/test/tint/diagnostic_filtering/loop_body_attribute.wgsl:6:7 note: control flow depends on possibly non-uniform value
      break if x > 0.0;
      ^^^^^

<dawn>/test/tint/diagnostic_filtering/loop_body_attribute.wgsl:6:16 note: user-defined input 'x' of 'main' may be non-uniform
      break if x > 0.0;
               ^

#include <metal_stdlib>
using namespace metal;

fragment void tint_symbol(float x) {
  {
    while(true) {
      dfdx(1.0f);
      if (x > 0.0f) { break; }
      continue;
    }
  }
}
program_source:4:27: error: invalid type 'float' for input declaration in a fragment function
fragment void tint_symbol(float x) {
                          ^~~~~~~

