line in response file wrongly interpreted as option by MSVC linker
Nobody has claimed this yet.
- Dominant language
- OCaml
- Stars
- 115
- Forks
- 34
- PR merge metrics
- No merged PRs in 30d
Description
In win64 environment, a file to be linked may be of the form \server\path\to\obj
If the command line is too long, this is dumped into a response file, but the function build_diversion in reloc.ml, specifically converts file-paths to use "/" instead of "". As a result the above file is interpreted as an option to the "link" command then fails to link files.
There does not seem to be an easy workaround to this problem, as the option to use response file is not user-controllable
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in reloc.ml at build_diversion and inspect how file paths are written into response files for the win64/MSVC linker. Reproduce the UNC-path case described in the issue, then verify that the response-file entry is no longer interpreted as a linker option and that linking succeeds.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ocaml
- Domain
- build-system, operating-systems
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 42/100