Why VTPixelTransferSession is mark available above iOS16 on XCode 16

xcode 16:

VT_EXPORT void 
VT_EXPORT OSStatus 
VTPixelTransferSessionCreate(
  CM_NULLABLE CFAllocatorRef							allocator,
							 CM_RETURNS_RETAINED_PARAMETER CM_NULLABLE VTPixelTransferSessionRef * CM_NONNULL pixelTransferSessionOut) API_AVAILABLE(macos(10.8), ios(16.0), tvos(16.0), visionos(1.0)) API_UNAVAILABLE(watchos);

xcode 15:

VT_EXPORT OSStatus 
VTPixelTransferSessionCreate(
  CM_NULLABLE CFAllocatorRef							allocator,
  CM_RETURNS_RETAINED_PARAMETER CM_NULLABLE VTPixelTransferSessionRef * CM_NONNULL pixelTransferSessionOut) VT_AVAILABLE_STARTING(10_8);
Answered by Media Engineer in 809799022

Xcode 15 only reports macOS availability, because the API was only available on macOS at that point - the API was not available on iOS. VTPixelTransferSession became API on iOS in iOS 16 and XCode 16, at which time the headers updated to newer style availability macros including explicit API_UNAVAILABLE.

Xcode 15 only reports macOS availability, because the API was only available on macOS at that point - the API was not available on iOS. VTPixelTransferSession became API on iOS in iOS 16 and XCode 16, at which time the headers updated to newer style availability macros including explicit API_UNAVAILABLE.

Why VTPixelTransferSession is mark available above iOS16 on XCode 16
 
 
Q