apple / apple/swift-numerics

Duplicate symbols on Windows

Open
#257 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Swift
Stars
1.9k
Forks
181
Avg merge
2d 5h
Merged PRs (30d)
6

Description

This could conceivably be an SPM problem, but we are having problems using swift-numerics on windows. Full details [here](https://github.com/val-lang/val/actions/runs/3971484564/jobs/6808808944):

```
lld-link: error: duplicate symbol: __profcstatic (extension in RealModule):Swift.Double.log(Swift.Double) -> Swift.Double
>>> defined at D:\\a\\val\\val\\.build\\x86_64-unknown-windows-msvc\\debug\\RealModule.build\\Double+Real.swift.o
lld-link: error: duplicate symbol: __profcstatic (extension in RealModule):Swift.Double.log(onePlus: Swift.Double) -> Swift.Double
>>> defined at D:\\a\\val\\val\\.build\\x86_64-unknown-windows-msvc\\debug\\RealModule.build\\Double+Real.swift.o
lld-link: error: duplicate symbol: __profcstatic (extension in RealModule):Swift.Double.root(Swift.Double, Swift.Int) -> Swift.Double
>>> defined at D:\\a\\val\\val\\.build\\x86_64-unknown-windows-msvc\\debug\\RealModule.build\\Double+Real.swift.o
lld-link: error: duplicate symbol: __profc_D:\a\val\val\.build\checkouts\swift-numerics\Sources\RealModule\Double+Real.swift:implicit closure #1 () throws -> Swift.Bool in static (extension in RealModule):Swift.Double.root(Swift.Double, Swift.Int) -> Swift.Double
>>> defined at D:\\a\\val\\val\\.build\\x86_64-unknown-windows-msvc\\debug\\RealModule.build\\Double+Real.swift.o
```

Contributor guide

Open the contributing guide

Research direction

Start with the linked GitHub Actions run and the duplicate-symbol diagnostics for swift-numerics. Inspect Sources/RealModule/Double+Real.swift and reproduce the Windows build to determine why the RealModule symbols are emitted twice. Done means the Windows build links successfully without duplicate-symbol errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
swift
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.