SKIP: FAILED


fn frexp_c084e3(tint_symbol_2 : ptr<private, vec2<i32>>) {
  var res : vec2<f32> = frexp(vec2<f32>(), &(*(tint_symbol_2)));
}

struct tint_symbol {
  [[builtin(position)]]
  value : vec4<f32>;
};

[[stage(vertex)]]
fn vertex_main() -> tint_symbol {
  [[internal(disable_validation__function_var_storage_class)]] var<private> tint_symbol_3 : vec2<i32>;
  frexp_c084e3(&(tint_symbol_3));
  let tint_symbol_1 : tint_symbol = tint_symbol(vec4<f32>());
  return tint_symbol_1;
}

[[stage(fragment)]]
fn fragment_main() {
  [[internal(disable_validation__function_var_storage_class)]] var<private> tint_symbol_4 : vec2<i32>;
  frexp_c084e3(&(tint_symbol_4));
}

[[stage(compute), workgroup_size(1)]]
fn compute_main() {
  [[internal(disable_validation__function_var_storage_class)]] var<private> tint_symbol_5 : vec2<i32>;
  frexp_c084e3(&(tint_symbol_5));
}

Failed to generate: error: Unknown import method: frexp
