Skip to content

ObjectLibraryAssembler duplicate detection is case-sensitive, fails on NTFS #1313

@roman-bcny

Description

@roman-bcny

ddbb57d added duplicate basename detection to ObjectLibraryAssembler, but the detection uses exact (case-sensitive) string comparison on basenames. On NTFS and default macOS APFS (both case-insensitive), files like Repeat.o and repeat.o pass the duplicate check but collide on disk. The copy fails with Win32Error(code: 80) / NSCocoaErrorDomain Code=516.

Reproduces with swift build (swiftbuild backend) on swift-argument-parser on Windows. The Examples/repeat/ target produces both Repeat.o (from Repeat.swift) and repeat.o (module emit for module repeat). Same issue on color, math, default-as-flag examples.

Metadata

Metadata

Assignees

No one assigned

    Labels

    windowsSupport for the Windows platform

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions