Skip to content

Conversation

@0xpablo
Copy link
Contributor

@0xpablo 0xpablo commented Oct 28, 2025

WinSDK has this typedef typedef GUID UUID in one of its included headers (rpcdce.h). This causes ambiguity as the compiler does not know which UUID to pick.

I guess there are other ways to solve it (such as defining a UUID typealias for Windows platform to make it point to Foundation. But I'm not sure if that could cause other issues to consumers.

Details of the error:

\Sources\Dependencies\DependencyValues.swift:485:24: error: 'UUID' is ambiguous for type lookup in this context
483 |   public struct CachedValue {
484 |     let base: any Sendable
485 |     let preparationID: UUID?
    |                        `- error: 'UUID' is ambiguous for type lookup in this context
486 |   }
487 |

C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\shared\rpcdce.h:83:14: note: found this candidate
  81 | #ifndef UUID_DEFINED
  82 | #define UUID_DEFINED
  83 | typedef GUID UUID;
     |              `- note: found this candidate
  84 | #ifndef uuid_t
  85 | #define uuid_t UUID

FoundationEssentials.UUID:2:15: note: found this candidate
 1 | @available(macOS 10.8, iOS 6.0, tvOS 9.0, watchOS 2.0, *)
 2 | public struct UUID : Hashable, Equatable, CustomStringConvertible, Sendable {
   |               `- note: found this candidate
 3 |     public private(set) var uuid: (UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8, UInt8) { get }
 4 |     public init()

WinSDK has this typedef `typedef GUID UUID` in one of its included headers (rpcdce.h). This causes ambiguity as the compiler does not know which UUID to pick
@stephencelis
Copy link
Member

@0xpablo Thanks for tackling this! We'd love to get some CI coverage on Windows if you're interested in exploring. We've tried in the past but it tended to break over time and without Windows folks able to help we've had to disable.

@stephencelis
Copy link
Member

Going to merge this, but please do follow up with a CI PR if you're interested!

@stephencelis stephencelis merged commit 3643869 into pointfreeco:main Oct 29, 2025
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants