#include <metal_stdlib>

using namespace metal;

struct frexp_result {
  float sig;
  int exp;
};
frexp_result tint_frexp(float param_0) {
  frexp_result result;
  result.sig = frexp(param_0, result.exp);
  return result;
}

kernel void tint_symbol() {
  frexp_result const res = tint_frexp(1.230000019f);
  int const exp = res.exp;
  float const sig = res.sig;
  return;
}

