It seems that `half` is used for a built-in type in MSL, so when a field with name `half` is declared in wgsl the resulting MSL cannot be compiled.