swift-com icon indicating copy to clipboard operation
swift-com copied to clipboard

Does not work with Windows 10 SDKs

Open gregcotten opened this issue 3 years ago • 21 comments
trafficstars

A simple swift build call spits out a lot of errors:

Building for debugging...
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12CommandQueue.swift:50:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12DescriptorHeap.swift:38:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:192:66: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetAdapterLuid(pThis, &luid)
                                                         ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:98: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:75: error: cannot convert value of type 'D3D12_HEAP_PROPERTIES' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                          ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:211:88: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'D3D12_HEAP_TYPE'
      let _ = pThis.pointee.lpVtbl.pointee.GetCustomHeapProperties(pThis, &properties, nodeMask, heapType)
                                                                                       ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:115: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:77: error: cannot convert value of type 'D3D12_RESOURCE_ALLOCATION_INFO' to expected argument type 'UINT' (aka 'UInt32')
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                            ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Device.swift:237:97: error: cannot convert value of type 'UINT' (aka 'UInt32') to expected argument type 'UnsafePointer<D3D12_RESOURCE_DESC>?'
      let _ = pThis.pointee.lpVtbl.pointee.GetResourceAllocationInfo(pThis, &info, visibleMask, numResourceDescs, pResourceDescs)
                                                                                                ^
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Heap.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
path\to\swift-com-main\Sources\SwiftCOM\Interfaces\Human\ID3D12Resource.swift:12:59: error: extra argument in call
      let _ = pThis.pointee.lpVtbl.pointee.GetDesc(pThis, &desc)
                                                  ~~~~~~~~^~~~~~
[115/117] Compiling SwiftCOM RawTyped.swift

gregcotten avatar Nov 22 '22 23:11 gregcotten

I suspect that there is something wrong with your setup. I was able to build this locally with the following:

compnerd.org Swift version 5.8-dev (LLVM 170e2cfa496ad7c, Swift f32ae6f8c6068cd)
Target: x86_64-unknown-windows-msvc

While this is newer than what you have, it should be close enough. This almost sounds like you are missing the Windows SDK overlay? Are you able to build the following simple program:

import WinSDK

compnerd avatar Nov 22 '22 23:11 compnerd

@compnerd

I am successfully running Swift 5.7.1 Release on Windows and have no issue using WinSDK in Swift. Running swift build from command prompt. VS 2019 Community is installed.

gregcotten avatar Nov 23 '22 02:11 gregcotten

@gregcotten hmm, and you aren't using C++ interop right? That would be incompatible.

compnerd avatar Nov 23 '22 02:11 compnerd

no, this is just from cloning your repo and calling swift build or swift test

gregcotten avatar Nov 23 '22 02:11 gregcotten

compnerd.org Swift version 5.7.1 (swift-5.7.1-RELEASE)
Target: x86_64-unknown-windows-msvc

gregcotten avatar Nov 23 '22 02:11 gregcotten

What version of the Windows SDK are you using? I wonder if the interface changed at some point.

compnerd avatar Nov 23 '22 02:11 compnerd

Windows SDK 10.1.19041.685 (EDIT: or 10.0.19041.685 ?!?!?!)

Is there an easier way to get the Windows SDK version than having to look in Add/Remove Programs? Perhaps from the command line?

Screenshot 2022-11-22 185648

gregcotten avatar Nov 23 '22 02:11 gregcotten

reg will let you query the registry from the command line. I'm not sure if there is a good solution here though :-(.

compnerd avatar Nov 23 '22 02:11 compnerd

@compnerd How would Windows developers usually handle a situation like this? Sorry, I'm new to the nightmare!

gregcotten avatar Nov 23 '22 03:11 gregcotten

It works at least with 10.0.22621.0. Taking a look at d3d12.h from that version ...

    typedef struct ID3D12CommandQueueVtbl
    {
        BEGIN_INTERFACE
        
        DECLSPEC_XFGVIRT(IUnknown, QueryInterface)
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ID3D12CommandQueue * This,
            REFIID riid,
            _COM_Outptr_  void **ppvObject);
        
        DECLSPEC_XFGVIRT(IUnknown, AddRef)
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ID3D12CommandQueue * This);
        
        DECLSPEC_XFGVIRT(IUnknown, Release)
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ID3D12CommandQueue * This);
        
        DECLSPEC_XFGVIRT(ID3D12Object, GetPrivateData)
        HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( 
            ID3D12CommandQueue * This,
            _In_  REFGUID guid,
            _Inout_  UINT *pDataSize,
            _Out_writes_bytes_opt_( *pDataSize )  void *pData);
        
        DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateData)
        HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( 
            ID3D12CommandQueue * This,
            _In_  REFGUID guid,
            _In_  UINT DataSize,
            _In_reads_bytes_opt_( DataSize )  const void *pData);
        
        DECLSPEC_XFGVIRT(ID3D12Object, SetPrivateDataInterface)
        HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( 
            ID3D12CommandQueue * This,
            _In_  REFGUID guid,
            _In_opt_  const IUnknown *pData);
        
        DECLSPEC_XFGVIRT(ID3D12Object, SetName)
        HRESULT ( STDMETHODCALLTYPE *SetName )( 
            ID3D12CommandQueue * This,
            _In_z_  LPCWSTR Name);
        
        DECLSPEC_XFGVIRT(ID3D12DeviceChild, GetDevice)
        HRESULT ( STDMETHODCALLTYPE *GetDevice )( 
            ID3D12CommandQueue * This,
            REFIID riid,
            _COM_Outptr_opt_  void **ppvDevice);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, UpdateTileMappings)
        void ( STDMETHODCALLTYPE *UpdateTileMappings )( 
            ID3D12CommandQueue * This,
            _In_  ID3D12Resource *pResource,
            UINT NumResourceRegions,
            _In_reads_opt_(NumResourceRegions)  const D3D12_TILED_RESOURCE_COORDINATE *pResourceRegionStartCoordinates,
            _In_reads_opt_(NumResourceRegions)  const D3D12_TILE_REGION_SIZE *pResourceRegionSizes,
            _In_opt_  ID3D12Heap *pHeap,
            UINT NumRanges,
            _In_reads_opt_(NumRanges)  const D3D12_TILE_RANGE_FLAGS *pRangeFlags,
            _In_reads_opt_(NumRanges)  const UINT *pHeapRangeStartOffsets,
            _In_reads_opt_(NumRanges)  const UINT *pRangeTileCounts,
            D3D12_TILE_MAPPING_FLAGS Flags);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, CopyTileMappings)
        void ( STDMETHODCALLTYPE *CopyTileMappings )( 
            ID3D12CommandQueue * This,
            _In_  ID3D12Resource *pDstResource,
            _In_  const D3D12_TILED_RESOURCE_COORDINATE *pDstRegionStartCoordinate,
            _In_  ID3D12Resource *pSrcResource,
            _In_  const D3D12_TILED_RESOURCE_COORDINATE *pSrcRegionStartCoordinate,
            _In_  const D3D12_TILE_REGION_SIZE *pRegionSize,
            D3D12_TILE_MAPPING_FLAGS Flags);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, ExecuteCommandLists)
        void ( STDMETHODCALLTYPE *ExecuteCommandLists )( 
            ID3D12CommandQueue * This,
            _In_  UINT NumCommandLists,
            _In_reads_(NumCommandLists)  ID3D12CommandList *const *ppCommandLists);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, SetMarker)
        void ( STDMETHODCALLTYPE *SetMarker )( 
            ID3D12CommandQueue * This,
            UINT Metadata,
            _In_reads_bytes_opt_(Size)  const void *pData,
            UINT Size);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, BeginEvent)
        void ( STDMETHODCALLTYPE *BeginEvent )( 
            ID3D12CommandQueue * This,
            UINT Metadata,
            _In_reads_bytes_opt_(Size)  const void *pData,
            UINT Size);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, EndEvent)
        void ( STDMETHODCALLTYPE *EndEvent )( 
            ID3D12CommandQueue * This);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, Signal)
        HRESULT ( STDMETHODCALLTYPE *Signal )( 
            ID3D12CommandQueue * This,
            ID3D12Fence *pFence,
            UINT64 Value);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, Wait)
        HRESULT ( STDMETHODCALLTYPE *Wait )( 
            ID3D12CommandQueue * This,
            ID3D12Fence *pFence,
            UINT64 Value);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetTimestampFrequency)
        HRESULT ( STDMETHODCALLTYPE *GetTimestampFrequency )( 
            ID3D12CommandQueue * This,
            _Out_  UINT64 *pFrequency);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetClockCalibration)
        HRESULT ( STDMETHODCALLTYPE *GetClockCalibration )( 
            ID3D12CommandQueue * This,
            _Out_  UINT64 *pGpuTimestamp,
            _Out_  UINT64 *pCpuTimestamp);
        
        DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetDesc)
        D3D12_COMMAND_QUEUE_DESC *( STDMETHODCALLTYPE *GetDesc )( 
            ID3D12CommandQueue * This,
            D3D12_COMMAND_QUEUE_DESC * RetVal);
        
        END_INTERFACE
    } ID3D12CommandQueueVtbl;

    interface ID3D12CommandQueue
    {
        CONST_VTBL struct ID3D12CommandQueueVtbl *lpVtbl;
    };

As expected, the interface is:

        DECLSPEC_XFGVIRT(ID3D12CommandQueue, GetDesc)
        D3D12_COMMAND_QUEUE_DESC *( STDMETHODCALLTYPE *GetDesc )( 
            ID3D12CommandQueue * This,
            D3D12_COMMAND_QUEUE_DESC * RetVal);

compnerd avatar Nov 23 '22 03:11 compnerd

Are you sure that you are not getting some other header accidentally included as d3d12.h? I would run a verbose build and check the command line invocation.

compnerd avatar Nov 23 '22 03:11 compnerd

From C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\d3d12.h

typedef struct ID3D12CommandQueueVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ID3D12CommandQueue * This,
            REFIID riid,
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ID3D12CommandQueue * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ID3D12CommandQueue * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( 
            ID3D12CommandQueue * This,
            _In_  REFGUID guid,
            _Inout_  UINT *pDataSize,
            _Out_writes_bytes_opt_( *pDataSize )  void *pData);
        
        HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( 
            ID3D12CommandQueue * This,
            _In_  REFGUID guid,
            _In_  UINT DataSize,
            _In_reads_bytes_opt_( DataSize )  const void *pData);
        
        HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( 
            ID3D12CommandQueue * This,
            _In_  REFGUID guid,
            _In_opt_  const IUnknown *pData);
        
        HRESULT ( STDMETHODCALLTYPE *SetName )( 
            ID3D12CommandQueue * This,
            _In_z_  LPCWSTR Name);
        
        HRESULT ( STDMETHODCALLTYPE *GetDevice )( 
            ID3D12CommandQueue * This,
            REFIID riid,
            _COM_Outptr_opt_  void **ppvDevice);
        
        void ( STDMETHODCALLTYPE *UpdateTileMappings )( 
            ID3D12CommandQueue * This,
            _In_  ID3D12Resource *pResource,
            UINT NumResourceRegions,
            _In_reads_opt_(NumResourceRegions)  const D3D12_TILED_RESOURCE_COORDINATE *pResourceRegionStartCoordinates,
            _In_reads_opt_(NumResourceRegions)  const D3D12_TILE_REGION_SIZE *pResourceRegionSizes,
            _In_opt_  ID3D12Heap *pHeap,
            UINT NumRanges,
            _In_reads_opt_(NumRanges)  const D3D12_TILE_RANGE_FLAGS *pRangeFlags,
            _In_reads_opt_(NumRanges)  const UINT *pHeapRangeStartOffsets,
            _In_reads_opt_(NumRanges)  const UINT *pRangeTileCounts,
            D3D12_TILE_MAPPING_FLAGS Flags);
        
        void ( STDMETHODCALLTYPE *CopyTileMappings )( 
            ID3D12CommandQueue * This,
            _In_  ID3D12Resource *pDstResource,
            _In_  const D3D12_TILED_RESOURCE_COORDINATE *pDstRegionStartCoordinate,
            _In_  ID3D12Resource *pSrcResource,
            _In_  const D3D12_TILED_RESOURCE_COORDINATE *pSrcRegionStartCoordinate,
            _In_  const D3D12_TILE_REGION_SIZE *pRegionSize,
            D3D12_TILE_MAPPING_FLAGS Flags);
        
        void ( STDMETHODCALLTYPE *ExecuteCommandLists )( 
            ID3D12CommandQueue * This,
            _In_  UINT NumCommandLists,
            _In_reads_(NumCommandLists)  ID3D12CommandList *const *ppCommandLists);
        
        void ( STDMETHODCALLTYPE *SetMarker )( 
            ID3D12CommandQueue * This,
            UINT Metadata,
            _In_reads_bytes_opt_(Size)  const void *pData,
            UINT Size);
        
        void ( STDMETHODCALLTYPE *BeginEvent )( 
            ID3D12CommandQueue * This,
            UINT Metadata,
            _In_reads_bytes_opt_(Size)  const void *pData,
            UINT Size);
        
        void ( STDMETHODCALLTYPE *EndEvent )( 
            ID3D12CommandQueue * This);
        
        HRESULT ( STDMETHODCALLTYPE *Signal )( 
            ID3D12CommandQueue * This,
            ID3D12Fence *pFence,
            UINT64 Value);
        
        HRESULT ( STDMETHODCALLTYPE *Wait )( 
            ID3D12CommandQueue * This,
            ID3D12Fence *pFence,
            UINT64 Value);
        
        HRESULT ( STDMETHODCALLTYPE *GetTimestampFrequency )( 
            ID3D12CommandQueue * This,
            _Out_  UINT64 *pFrequency);
        
        HRESULT ( STDMETHODCALLTYPE *GetClockCalibration )( 
            ID3D12CommandQueue * This,
            _Out_  UINT64 *pGpuTimestamp,
            _Out_  UINT64 *pCpuTimestamp);
        
        D3D12_COMMAND_QUEUE_DESC ( STDMETHODCALLTYPE *GetDesc )( 
            ID3D12CommandQueue * This);
        
        END_INTERFACE
    } ID3D12CommandQueueVtbl;

gregcotten avatar Nov 23 '22 03:11 gregcotten

o_O ... when did the API interface change? That would break all COM interfaces, because they expect a HRESULT. Could you test with the 10.0.22000.0 SDK? (Windows 11)

compnerd avatar Nov 23 '22 03:11 compnerd

I'm now completely in uncharted territory here... I am not on Windows 11 (I assume that doesn't actually matter) - where do I go about downloading this specific SDK version?

gregcotten avatar Nov 23 '22 03:11 gregcotten

You should be able to get that from the Visual Studio installer. Just select the additional SDK.

compnerd avatar Nov 23 '22 03:11 compnerd

OK downloading now... How do I specify which Windows SDK I want to use during swift build on Command Prompt / Powershell?

gregcotten avatar Nov 23 '22 03:11 gregcotten

There is no explicit control for that, it just uses the newest version.

compnerd avatar Nov 23 '22 03:11 compnerd

@compnerd that solved it. Windows is such a perplexing beast!

So now the question:

If I compile against this Windows 11 SDK, can I user running Windows 10 (without any development environment installed) run the executable?

gregcotten avatar Nov 23 '22 03:11 gregcotten

@gregcotten - oh, interesting! I guess that they broke the ABI between 10 and 11? I wonder if we can protect against this somehow. I don't know for a fact - I'm worried that it might be more than just an incorrect translation. Assuming that it was just an incorrect translation for the C++ and C interfaces, then it should run.

compnerd avatar Nov 23 '22 03:11 compnerd

I am hesitant to call this "fixed" only because I have absolutely no clue what happens if I target this newer SDK. Why wouldn't it just be installed by default in VS2019?

gregcotten avatar Nov 23 '22 03:11 gregcotten

I am hesitant to call this "fixed" only because I have absolutely no clue what happens if I target this newer SDK. Why wouldn't it just be installed by default in VS2019?

I don't think that this is fixed. We need to identify a solution that allows older SDKs to also function or require a newer minimum SDK.

I suspect it is because the SDK was released after VS2019 and was not an option when you installed VS2019. It normally does select the newest SDK release I think.

compnerd avatar Nov 23 '22 16:11 compnerd