!incorrect-protocol-member! MTLBlitCommandEncoder::copyFromBuffer:sourceOffset:sourceBytesPerRow:sourceBytesPerImage:sourceSize:toTexture:destinationSlice:destinationLevel:destinationOrigin:options: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLBlitCommandEncoder::copyFromTexture:sourceSlice:sourceLevel:sourceOrigin:sourceSize:toBuffer:destinationOffset:destinationBytesPerRow:destinationBytesPerImage:options: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLHeap::hazardTrackingMode is REQUIRED and should be abstract
!incorrect-protocol-member! MTLHeap::newBufferWithLength:options:offset: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLHeap::newTextureWithDescriptor:offset: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLHeap::resourceOptions is REQUIRED and should be abstract
!incorrect-protocol-member! MTLHeap::type is REQUIRED and should be abstract
!incorrect-protocol-member! MTLIndirectCommandBuffer::indirectComputeCommandAtIndex: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLIndirectRenderCommand::setRenderPipelineState: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLResource::hazardTrackingMode is REQUIRED and should be abstract
!incorrect-protocol-member! MTLResource::heapOffset is REQUIRED and should be abstract
!incorrect-protocol-member! MTLResource::resourceOptions is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::useHeap:stages: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::useHeaps:count:stages: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::useResource:usage:stages: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::useResources:count:usage:stages: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLTexture::newTextureViewWithPixelFormat:textureType:levels:slices:swizzle: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLTexture::swizzle is REQUIRED and should be abstract
!incorrect-protocol-member! MTLBlitCommandEncoder::copyFromTexture:sourceSlice:sourceLevel:toTexture:destinationSlice:destinationLevel:sliceCount:levelCount: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLBlitCommandEncoder::copyFromTexture:toTexture: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLComputeCommandEncoder::executeCommandsInBuffer:indirectBuffer:indirectBufferOffset: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLComputeCommandEncoder::executeCommandsInBuffer:withRange: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLDevice::newSharedTextureWithHandle: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLDevice::supportsFamily: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLArgumentEncoder::setRenderPipelineStates:withRange: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLDevice::hasUnifiedMemory is REQUIRED and should be abstract
!incorrect-protocol-member! MTLCommandBuffer::presentDrawable:afterMinimumDuration: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLComputeCommandEncoder::dispatchThreadgroupsWithIndirectBuffer:indirectBufferOffset:threadsPerThreadgroup: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLComputeCommandEncoder::setStageInRegion: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLDevice::maxThreadsPerThreadgroup is REQUIRED and should be abstract
!incorrect-protocol-member! MTLDevice::newDefaultLibraryWithBundle:error: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLParallelRenderCommandEncoder::setColorStoreAction:atIndex: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::drawIndexedPatches:patchStart:patchCount:patchIndexBuffer:patchIndexBufferOffset:controlPointIndexBuffer:controlPointIndexBufferOffset:instanceCount:baseInstance: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::drawIndexedPrimitives:indexCount:indexType:indexBuffer:indexBufferOffset:instanceCount:baseVertex:baseInstance: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::drawIndexedPrimitives:indexType:indexBuffer:indexBufferOffset:indirectBuffer:indirectBufferOffset: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::drawPatches:patchStart:patchCount:patchIndexBuffer:patchIndexBufferOffset:instanceCount:baseInstance: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::drawPrimitives:indirectBuffer:indirectBufferOffset: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::drawPrimitives:vertexStart:vertexCount:instanceCount:baseInstance: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::setColorStoreAction:atIndex: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::setDepthStoreAction: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::setStencilStoreAction: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::setTessellationFactorBuffer:offset:instanceStride: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLRenderCommandEncoder::setTessellationFactorScale: is REQUIRED and should be abstract
!incorrect-protocol-member! MTLResource::storageMode is REQUIRED and should be abstract