Skip to content

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

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

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions