message: Metal: Don't crash on invalid shaders
  MetalFunctionData::function was uninitialized when an error happened
  its destructor would run, calling release on a garbage pointer.
diff: @@ -36,7 +36,7 @@ namespace dawn_native { namespace metal {
  const ShaderModuleDescriptor* descriptor);
  struct MetalFunctionData {
  - id<MTLFunction> function;
  + id<MTLFunction> function = nil;
  MTLSize localWorkgroupSize;
  bool needsStorageBufferLength;
  ~MetalFunctionData() {
  